Webhook’lar
Webhook’lar, WhatsApp \u00f6rneklerinizde olaylar ger\u00e7ekle\u015fti\u011finde ger\u00e7ek zamanl\u0131 HTTP geri \u00e7a\u011fr\u0131lar\u0131 alman\u0131z\u0131 sa\u011flar. API’yi s\u00fcrekli sorgulamak yerine, Wappfy olaylar\u0131 ger\u00e7ekle\u015ftik\u00e7e sunucunuza iletir.Desteklenen Olaylar
Wappfy 12 webhook olay t\u00fcr\u00fcn\u00fc destekler:Mesaj Olaylar\u0131
Mesaj Olaylar\u0131
| Olay | A\u00e7\u0131klama |
|---|---|
message.received | Yeni bir gelen mesaj al\u0131nd\u0131. |
message.sent | Giden bir mesaj ba\u015far\u0131yla g\u00f6nderildi. |
message.delivered | G\u00f6nderilen mesaj al\u0131c\u0131n\u0131n cihaz\u0131na teslim edildi (\u00e7ift onay i\u015fareti). |
message.read | G\u00f6nderilen mesaj al\u0131c\u0131 taraf\u0131ndan okundu (mavi onay i\u015faretleri). |
message.failed | Giden bir mesaj g\u00f6nderilemedi. |
message.reaction | Birisi bir mesaja emoji ile tepki verdi. |
\u00d6rnek Olaylar\u0131
\u00d6rnek Olaylar\u0131
| Olay | A\u00e7\u0131klama |
|---|---|
instance.connected | Bir \u00f6rnek WhatsApp’a ba\u015far\u0131yla ba\u011fland\u0131. |
instance.disconnected | Bir \u00f6rne\u011fin WhatsApp ba\u011flant\u0131s\u0131 kesildi. |
instance.qr | Tarama i\u00e7in yeni bir QR kod mevcut. |
Grup ve Ki\u015fi Olaylar\u0131
Grup ve Ki\u015fi Olaylar\u0131
| Olay | A\u00e7\u0131klama |
|---|---|
group.joined | Bir kat\u0131l\u0131mc\u0131 gruba kat\u0131ld\u0131 (bot kendisi dahil). |
group.left | Bir kat\u0131l\u0131mc\u0131 gruptan ayr\u0131ld\u0131. |
contact.created | Yeni bir ki\u015fi kaydedildi veya alg\u0131land\u0131. |
Webhook Olu\u015fturma
Olaylar\u0131 almaya ba\u015flamak i\u00e7in bir webhook ucu noktas\u0131 kaydedin.Yap\u0131land\u0131rma Se\u00e7enekleri
| Alan | T\u00fcr | Varsay\u0131lan | A\u00e7\u0131klama |
|---|---|---|---|
url | string | zorunlu | Webhook POST isteklerini alacak HTTPS URL’si. |
events | string[] | zorunlu | Abone olunacak olay t\u00fcrleri dizisi. |
instance_id | string | null | Webhook’\u0131 belirli bir \u00f6rnekle s\u0131n\u0131rlay\u0131n. Null ise t\u00fcm \u00f6rneklerden olaylar\u0131 al\u0131r. |
secret | string | null | Veri y\u00fck\u00fc do\u011frulamas\u0131 i\u00e7in HMAC imzalar\u0131 olu\u015fturmak \u00fczere kullan\u0131lan gizli anahtar. |
retry_count | number | 3 | Teslimat ba\u015far\u0131s\u0131zl\u0131\u011f\u0131nda yeniden deneme say\u0131s\u0131 (0-5). |
timeout_ms | number | 10000 | Milisaniye cinsinden istek zaman a\u015f\u0131m\u0131 (1000-30000). |
instance_id alan\u0131 iste\u011fe ba\u011fl\u0131d\u0131r. Belirtilmezse webhook, hesab\u0131n\u0131zdaki t\u00fcm \u00f6rneklerden olaylar\u0131 alacakt\u0131r.Webhook’lar\u0131 Listeleme
Webhook G\u00fcncelleme
Mevcut bir webhook’\u0131n URL’sini, olaylar\u0131n\u0131 veya yap\u0131land\u0131rmas\u0131n\u0131 g\u00fcncelleyin.Webhook Silme
Teslimat Veri Y\u00fck\u00fc Format\u0131
Bir olay ger\u00e7ekle\u015fti\u011finde, Wappfy webhook URL’nize a\u015fa\u011f\u0131daki yap\u0131da bir POST iste\u011fi g\u00f6nderir:Veri Y\u00fck\u00fc Alanlar\u0131
| Alan | A\u00e7\u0131klama |
|---|---|
id | Benzersiz teslimat kimli\u011fi. Tekrar\u0131 \u00f6nleme i\u00e7in kullan\u0131n. |
event | Bu teslimati tetikleyen olay t\u00fcr\u00fc. |
instance_id | Olay\u0131 \u00fcreten \u00f6rnek. |
timestamp | Olay\u0131n ger\u00e7ekle\u015fti\u011fi ISO 8601 zaman damgas\u0131. |
data | Olaya \u00f6zel veri y\u00fck\u00fc. \u0130\u00e7eri\u011fi olay t\u00fcr\u00fcne g\u00f6re de\u011fi\u015fir. |
HMAC \u0130mza Do\u011frulamas\u0131
Webhook olu\u015ftururken birsecret sa\u011flarsan\u0131z, her teslimat istek g\u00f6vdesinin HMAC-SHA256 imzas\u0131n\u0131 i\u00e7eren bir X-Wappfy-Signature ba\u015fl\u0131\u011f\u0131 i\u00e7erecektir.
\u0130ste\u011fin Wappfy’den geldi\u011finden ve de\u011fi\u015ftirilmedi\u011finden emin olmak i\u00e7in bu imzay\u0131 her zaman do\u011frulay\u0131n.
Do\u011frulama \u00d6rnekleri
Yeniden Deneme Davran\u0131\u015f\u0131
Sunucunuz yap\u0131land\u0131r\u0131lm\u0131\u015ftimeout_ms s\u00fcresi i\u00e7inde 2xx durum kodu ile yan\u0131t vermezse, Wappfy teslimati yeniden dener.
| Deneme | Gecikme |
|---|---|
| 1. yeniden deneme | 10 saniye |
| 2. yeniden deneme | 60 saniye |
| 3. yeniden deneme | 5 dakika |
| 4. yeniden deneme | 30 dakika |
| 5. yeniden deneme | 2 saat |
2xx yan\u0131t al\u0131nd\u0131\u011f\u0131nda veya retry_count t\u00fckendi\u011finde yeniden denemeler durur. Varsay\u0131lan yeniden deneme say\u0131s\u0131 3’t\u00fcr.Teslimat Ge\u00e7mi\u015fini G\u00f6r\u00fcnt\u00fcleme
Ge\u00e7mi\u015f teslimat denemelerini ve sonu\u00e7lar\u0131n\u0131 g\u00f6rmek i\u00e7in webhook teslimat g\u00fcnl\u00fc\u011f\u00fcn\u00fc kontrol edin.Olay Veri Y\u00fck\u00fc \u00d6rnekleri
message.received
message.received
message.delivered
message.delivered
message.read
message.read
message.reaction
message.reaction
instance.connected
instance.connected
instance.qr
instance.qr
group.joined
group.joined
En \u0130yi Uygulamalar
H\u0131zl\u0131 yan\u0131t verin
5 saniye i\u00e7inde
200 durumu d\u00f6nd\u00fcr\u00fcn. Zaman a\u015f\u0131m\u0131n\u0131 \u00f6nlemek i\u00e7in olay\u0131 asenkron olarak i\u015fleyin.Tekrar\u0131 \u00f6nleyin
Yeniden denemelerden kaynaklanan tekrar teslimatlar\u0131 tespit etmek ve atlamak i\u00e7in teslimat
id’sini kullan\u0131n.\u0130mzalar\u0131 do\u011frulay\u0131n
Bir gizli anahtar yap\u0131land\u0131rd\u0131ysan\u0131z her zaman
X-Wappfy-Signature ba\u015fl\u0131\u011f\u0131n\u0131 do\u011frulay\u0131n.HTTPS kullan\u0131n
Webhook URL’leri HTTPS kullanmal\u0131d\u0131r. HTTP ucu noktalar\u0131 reddedilecektir.