Watch-IP

Hatalar ve hız sınırları

Hangi ürünü çağırdığınızdan bağımsız olarak, her Watch-IP endpoint'i hataları aynı biçimde döndürür ve hız sınırlarını aynı şekilde uygular.

Hata yanıtı biçimi

2xx olmayan bir yanıt, her zaman error (kararlı, makine tarafından okunabilir bir kod) ve message (insan tarafından okunabilir bir açıklama) içeren bir JSON nesnesidir. error, API sürümleri arasında sabit kalır; message metni değişebilir, bu yüzden eşleştirmeyi message üzerinden değil error üzerinden yapın.

Hata yanıtı

{
  "error": "invalid_ip",
  "message": "\"999.999.999.999\" is not a valid IPv4 or IPv6 address."
}

Yaygın durum kodları

Bir endpoint'in döndürebileceği kodların tam kümesi kendi referans sayfasında belgelenir; burada listelenenler API genelinde paylaşılan kodlardır.

400
Hatalı biçimlendirilmiş girdi — geçersiz bir IP adresi, boş veya aşırı büyük bir toplu istek (POST /v1/lookup en fazla 100 IP'ye izin verir) ya da eksik bir zorunlu alan.
401
Eksik veya geçersiz API anahtarı.
403
Bu rota için yanlış anahtar türü (bir gizli anahtar endpoint'inde yayınlanabilir bir anahtar kullanılması ya da tam tersi) veya — yalnızca GET /v1/geo ve POST /v1/email/validate için — anahtarın izin verilen origin listesinde olmayan bir Origin/Referer. Origin durumunda ayrıca CORS başlığı da ayarlanmaz, bu yüzden tarayıcı bu gövdeden bağımsız olarak yanıtı engeller.
422
Anlamsal olarak geçerli ama işlenemeyen girdi — şu anda yalnızca POST /v1/risk/check için, sağlanan IP bir konuma çözümlenemediğinde geçerlidir.
429
Geçerli bir dakikalık pencere için hız sınırı aşıldı.

Hız sınırları

Hız sınırları, rota bazında değil, çağırdığınız her endpoint arasında paylaşılan, sabit bir dakikalık pencerede müşteri hesabı başına uygulanır. Sınır öğeleri değil HTTP çağrılarını sayar: POST /v1/lookup ve POST /v1/email/batch, 1 ya da 100 öğe taşısın, tek bir istek sayılır; bir e-posta liste işini oluşturmak, durumunu sorgulamak ve sonuçlarını indirmek de öyle. Hız sınırı nedeniyle dönen bir 429 (error: "rate_limit_exceeded"), geçerli pencerenin sıfırlanmasına kalan saniye sayısını veren bir Retry-After başlığı içerir — o kadar bekleyip yeniden deneyin.

Güvenli şekilde yeniden deneme

GET /v1/geo, GET /v1/lookup/{ip}, POST /v1/lookup ve POST /v1/email/validate salt okunurdur ve bir ağ hatasından hemen sonra yeniden denenmesi güvenlidir. POST /v1/risk/check varsayılan olarak kayıtlı bir referans noktasını günceller — bu referansı değiştirmemesi gereken deneme amaçlı bir yeniden deneme yapmanız gerekiyorsa önce commit:false gönderin.

İlgili sayfalar