Skip to content

app.api, botlar ve uygulama kartları

This content is not available in your language yet.

https://app.api.hadisosyal.com üye verisi içermez. Jeton client_credentials ile alınır:

  • Yalnızca gizli istemci (private_key_jwt) ve DPoP zorunlu.
  • Scope’lar: public:read (herkese açık etkinlikler) ve bot:post (topluluk botu; installation_id ile).
  • Bu scope’lar üye izin ekranında ya da cihaz akışında istenemez.
POST /token
grant_type=client_credentials&scope=public:read
client_assertion_type=urn:ietf:params:oauth:client-assertion-type:jwt-bearer
client_assertion=eyJ…
DPoP: eyJ…

Referans: openapi-app.json.

  1. Uygulaman incelemede Kademe 2 ve bot:post için onay almış olmalı.
  2. Topluluk kurucusu HADİ’de Topluluk › Botlar › Bot ekle ile uygulama kimliğini girer; kurulum kimliği sana bot.installed webhook olayıyla gelir (installation_id, community_id). Kaldırılınca bot.removed.
  3. client_credentials + scope=bot:post&installation_id=… ile bot jetonu al; POST /v1/bot/messages ile yaz.

Kurallar: bot yalnızca kurulduğu topluluğun sohbetine yazar, mesajları okuyamaz; küfür süzgecinden geçer; kurulum başına saatte en çok 30 mesaj; her mesajda uygulamanın adı görünür. Kurucu botu kaldırınca bot hemen yazamaz (403, jeton en çok 10 dk geçerli kalsa da).

Doğrulanmış alan adına (Konsol › Alan adları, DNS TXT hadi-verification=…) ait bir bağlantı HADİ’de paylaşılınca HADİ, https://<alan-adın>/.well-known/hadi-card?url=<bağlantı> adresinden JSON ister:

{ "title": "Pazar Kahvaltısı", "subtitle": "20 Ocak, Kadıköy", "buttons": [{ "label": "Aç", "url": "https://ornek.com/e/42" }] }
  • Kart sabit şablonla çizilir: başlık (≤80), alt başlık (≤160), en çok 2 düğme (https, yalnızca doğrulanmış alan adın).
  • HTML, betik, işaretleme içeren metin reddedilir; görünmez/yön karakterleri silinir. Yanıt 1 saat önbelleğe alınır.
  • Görseller şimdilik gösterilmez (üye IP’si uygulamana gitmesin diye görsel vekili gelince açılacak).

https://hadisosyal.com/share?text=…&url=…&app=… bağlantısı HADİ’de bir taslak açar; üye düzenler ve kendisi gönderir. İzin gerekmez, hiçbir şey kendiliğinden paylaşılmaz. url yalnızca https.

İncelemede onaylanan scope’larla, üye adına:

  • POST /v1/events/drafts — Premium üyenin etkinlik taslağı (HADİ ekibi onaylayınca yayımlanır). events:create
  • PATCH /v1/communities/{id} — üyenin yönettiği topluluğu düzenleme (tüm alanlar gönderilir). communities:manage

R3 izinleri için üyenin iki adımlı doğrulaması açık olmalı ve hesabı en az 7 günlük olmalı.