İstek limitleri ve kotalar
Kaç istek gönderebileceğin ve bir limite takıldığında ne olacağı.
Limitler planına bağlıdır ve her API anahtarı için ayrı sayılır.
Dakika başına istek#
Anahtar başına kayan bir dakikalık pencere uygulanır. Her başarılı yanıt, mevcut pencerede kalan istek sayısını X-RateLimit-Remaining başlığında taşır. Limiti aşarsan saniye cinsinden error.retryAfter içeren bir 429 rateLimited yanıtı alırsın.
X-RateLimit-Remaining: 59{
"error": {
"code": "rateLimited",
"message": "Rate limit exceeded",
"retryAfter": 12
}
}Aylık kota#
Her anahtarın, her ayın 1’inde saat 00:00 UTC’de sıfırlanan aylık bir istek kotası vardır. Kota dolduğunda istekler bir sonraki aya kadar 429 rateLimited döndürür ve error.reason değeri quota olur.
{
"error": {
"code": "rateLimited",
"message": "Monthly quota exceeded",
"reason": "quota"
}
}Günlük taramalar#
Gerçekten bir tarama başlatan POST /scans çağrısı, planının günlük tarama limitinden bir tarama harcar; bu limiti uygulamada başlattığın taramalarla paylaşırsın. Rapor okumak ve önbellekteki güncel bir raporu döndüren tarama çağrıları tarama limitini harcamaz (yine de API isteği olarak sayılır).
Plana göre limitler#
| Plan | İstek / dakika | İstek / ay |
|---|---|---|
Pro | 60 | 100.000 |
En iyi uygulamalar#
- Token raporlarını kendi tarafında önbelleğe al; bir rapor birkaç dakika boyunca güncel kalır.
- 429 alırsan
retryAfter’da belirtilen saniye kadar bekle, ardından üstel backoff ve jitter ile yeniden dene. - Taramaları sıkı bir döngüde değil, 3–5 saniyede bir sorgula.
- Toplu işleri aynı anda paralel başlatmak yerine zamana yay.