API dokümanları

Genel REST API: kimlik doğrulama, uç noktalar, hata sözlüğü, sandbox anahtarı.

Kimlik doğrulama

Her istekte Authorization: Bearer <anahtar> başlığını gönder. Anahtarı giriş yaptığın oturumdan üretirsin (Ayarlar → API anahtarları). API anahtar üretmez, bu yüzden çalınan bir anahtar kendine yenisini ekleyemez.

curl https://your-domain.com/api/v1/verify \
  -H "Authorization: Bearer cl_live_..." \
  -H "Content-Type: application/json" \
  -d '{"email":"name@example.com"}'

Sandbox anahtarı

cl_test_ ile başlayan anahtar worker'a ulaşmaz ve kredi harcamaz. Her statüyü denemek için şu test adreslerini gönder: ok@sandbox.test, invalid@sandbox.test, catch_all@sandbox.test, disposable@sandbox.test, role@sandbox.test, unknown@sandbox.test. Bunların dışındaki her adres unknown döner. Test anahtarı yanlışlıkla canlıda kalsa bile hiçbir gerçek adres onaylanmaz.

Uç noktalar

Yedi uç nokta var, hepsi bu sayfa gibi [locale] önekinin dışında:

POST/api/v1/verifyTekil e-posta doğrula, anında yanıt döner.
POST/api/v1/listsJSON dizisinden toplu liste oluştur.
GET/api/v1/lists/:idBir listenin durumunu getir.
GET/api/v1/lists/:id/resultsBir listenin sonuçlarını getir.
DELETE/api/v1/lists/:idListeyi kalıcı olarak sil (GDPR).
GET/api/v1/creditsKalan kredi bakiyesini getir.
POST / GET / DELETE/api/v1/webhooksWebhook uç noktası kaydet, listele ya da sil.

Hata sözlüğü

Her hata aynı biçimde döner: { error: { code, message, request_id } }. code değeri aşağıdaki sabit listeden biridir.

unauthorized401Anahtar eksik ya da geçersiz.
forbidden403Anahtarın bu işlem için yetkisi yok (ör. yayınlanabilir anahtarla bakiye sorgusu).
not_found404Kayıt yok ya da sana ait değil. İkisinde de yanıt 404'tür, 403 verilmez.
invalid_request400Gövde beklenen şemaya uymuyor.
insufficient_credits402Kredi bakiyesi yetersiz.
rate_limited429İstek sınırı aşıldı. Retry-After başlığındaki süre kadar bekle.
too_large413Gövde boyutu sınırı aşıyor.
internal500Sunucu hatası, tekrar dene.

Idempotency

Idempotency-Key başlığı gönderirsen, aynı anahtarla gelen ikinci istek ilk başarılı yanıtı aynen döner. Hatalar saklanmaz: 4xx ya da 5xx sonrası aynı anahtar isteği yeniden çalıştırır. Aynı anahtarla farklı bir gövde gönderirsen 400 alırsın. İlk istek hâlâ sürüyorsa ikinci istek Retry-After: 1 ile 429 alır; tekrar dene, ilk yanıtı alırsın. Saklanan yanıtta e-posta adresi yer almaz.

İstek sınırı

Şu an her anahtar için dakikada 60 istek yapılabilir (kayan 60 saniyelik pencere). Sınır aşılırsa 429 ve Retry-After başlığı döner.

Tarayıcıdaki publishable anahtar ayrıca 24 saatte en fazla 500 doğrulama başlatır (varsayılan; API anahtarları ekranında değiştirirsin). Sınırı aşan istek 429 alır ve kredi harcamaz.

Hazır entegrasyonlar

API'yi doğrudan çağırmadan önce şunlara bak:

  • Zapier: Verify Email action'ı Sheets/CRM akışlarına tek tıkla eklenir.
  • Mailchimp senkronizasyonu: listeyi çek, doğrula, etiketleri geri yaz (Ayarlar → Entegrasyonlar).
  • Webhook: toplu iş bitince imzalı bir POST gelir (X-Clearlist-Signature).
E-posta Doğrulama API Dokümanları | CleanBounceList