İletiniz, webhook teslimatını at-least-once semantiği ile yapar. Geçici hatalar yeniden denenir; kalıcı hatalarda hızlıca pes edilir.Documentation Index
Fetch the complete documentation index at: https://docs.iletiniz.com/llms.txt
Use this file to discover all available pages before exploring further.
Retry Stratejisi
| HTTP yanıtı | İletiniz davranışı |
|---|---|
2xx | Başarılı. Teslimat finalize edilir. |
3xx | Kalıcı hata. Redirect takip edilmez. Endpoint’i 200 dönecek bir URL’e güncelleyin. |
4xx | Kalıcı hata. Yeniden denenmez. Endpoint kontrat ihlali; logları inceleyin. |
5xx | Geçici. Aşağıdaki backoff şemasıyla yeniden denenir. |
| Network/DNS hatası | Geçici. Yeniden denenir. |
| Timeout (10 sn) | Geçici. Yeniden denenir. |
Backoff Şeması
Toplam 5 deneme, exponential backoff (taban gecikme 1 sn):| Deneme | Gecikme (kümülatif) |
|---|---|
| 1 | Anında |
| 2 | ~1 sn |
| 3 | ~2 sn |
| 4 | ~4 sn |
| 5 | ~8 sn |
- deneme de başarısız olursa teslimat
failedolarak işaretlenir veconsecutive_failuressayacı artar.
Otomatik Deaktivasyon
Bir endpoint ardışık 50 başarısız teslimattan sonra otomatik olarak deaktif edilir. Tipik sebepler:- Sunucunuz tamamen kapalı (50 farklı event 5’er kez denendi → çok sayıda başarısızlık).
- DNS kalıcı olarak yanlış yapılandırılmış.
- Endpoint yanlışlıkla 4xx döndürüyor (örn. imza doğrulaması her istekte fail).
- Dashboard’da uyarı banner’ı ile gösterilir.
- Yeni event’ler bu endpoint’e iletilmez.
- Aktive Et butonu ile yeniden açılana kadar bekler.
Idempotency
Aynı (event, mesaj) çifti yeniden denemelerde aynıid ile gelir. id deterministik üretilir; aynı event aynı mesaj için her zaman aynı 32-karakter hex değerini taşır.
Endpoint tarafında uygulanması gereken pratik:
id’yi iki kere işlemediğinizden emin olun.
Gözlemlenebilirlik
Dashboard → Webhook’lar → endpoint detay sayfasında:- Son 30 günün teslimat listesi
- HTTP response code dağılımı
- Response body’nin ilk 1 KB’si (debug amaçlı)
- Deneme sayacı
- Manuel Yeniden Dene butonu (başarısız teslimatları kuyruğa yeniden koyar)
Endpoint Test Etme
Endpoint’inizi production’a almadan önce test için:- Dashboard’da Test Et butonu — sahte bir
message.deliveredpayload’ı imzalı şekilde gönderir. - webhook.site gibi bir public catcher ile imza header’larını inceleyin.
ngrokile lokal dev sunucunuzu tünelleyip gerçek event akışını izleyin.

