İçeriğe geç

Mini uygulamalar

Mini uygulaman HADİ’de tam ekran açılır ama HADİ dışı bir uygulama olarak kalır: kendi kökeninde (https://<kısa-ad>.hadiapps.net) çalışır, üst çubukta her zaman ”🔌 Uygulama adı · HADİ dışı uygulama” yazar.

  • Uygulaman Kademe 2 incelemesinden geçmiş olmalı; mini uygulama ayrıca incelenir.
  • Kaynak (içeriğin geldiği adres) uygulamanın doğrulanmış alan adında olmalı (https://app.ornek.com).
  • Para, doğrudan mesaj ve sağlık izinleri (R4) olan uygulamalar mini uygulama açamaz.
PUT /console/apps/{id}/miniapp
{ "slug": "biletci", "origin": "https://app.biletci.example", "entryPath": "/hadi" }

Durum pending → HADİ incelemesi → approved. Onaydan sonra https://biletci.hadiapps.net/ istekleri kaynağına iletilir.

HADİ’nin kenarı yanıtlarını sertleştirir:

  • Set-Cookie’deki Domain= kaldırılır; çerezlerin yalnızca senin alt alan adına yazılır. Secure ve SameSite eklenir.
  • Content-Security-Policy: frame-ancestors 'none' — mini uygulama başka sayfaya gömülemez.
  • Cross-Origin-Opener-Policy: same-origin, Referrer-Policy: no-referrer.
  • Permissions-Policy: kamera, mikrofon, konum, ödeme, ekran kaydı kapalı.
  • Yönlendirmeler yalnızca kendi kökenine ya da auth.hadisosyal.com’a.

Yalnızca standart OAuth: PAR + PKCE + DPoP, redirect_uri kendi adresinde (https://biletci.hadiapps.net/cb). Üye izin sayfasında neye izin verdiğini görür. MCP ve R4 izinleri yoktur.

Mini uygulama sayfasında HADI kanalı (yalnızca HADİ uygulamasında):

HADI.postMessage(JSON.stringify({ type: "share", text: "Bu etkinliğe gidiyorum!", url: "https://biletci.example/e/42" }));
HADI.postMessage(JSON.stringify({ type: "close" }));

share “HADİ’ye paylaş” taslağını açar; üye düzenler ve kendisi gönderir. Başka köprü yoktur (kamera, dosya, konum, ödeme ve mesaj yok). HADİ Web’de mini uygulama yeni sekmede açılır.