Ana içeriğe geç

İstek Sınırları

Gateway istekleri çalışma alanı başına ve dakikalık olarak sınırlanır. Sınır API anahtarına ya da IP adresine değil çalışma alanına bağlıdır: aynı çalışma alanı için farklı sunuculardan gönderilen istekler aynı sayaca yazılır.

Sınırlar​

SınırKapsadığı uçlarKim başınaDakikada
GenelBütün gateway uçları (20 uç)Çalışma alanı300 istek
Ödemesecure-payment, regular-payment, refund-payment, cancel-payment, create-saved-card, delete-saved-cardÇalışma alanı60 istek
  • Ödeme sınırındaki uçlar iki sınıra birden tabidir: her istek hem ödeme sayacına hem genel sayaca yazılır. Örneğin bir dakikada 60 regular-payment isteği, o dakikanın genel 300 hakkından da 60'ını kullanır.
  • Sorgu ve listeleme uçları (retrieve-*), retrieve-bin, create-* / update-* (kayıtlı kart dışında) yalnızca genel sınıra tabidir.
  • Sayaç, ilk isteğin geldiği andan başlayarak bir dakika sürer.

Sınır aşıldığında​

İstek işlenmez ve 429 döner. Yanıt diğer hata yanıtlarıyla aynı biçimdedir ve imzalıdır:

{
"result": {
"successful": false,
"message": "İstek sınırı aşıldı: bu çalışma alanı için dakikada en fazla 300 istek (ödeme, iade ve kart işlemlerinde 60) kabul edilir. Lütfen bir dakika sonra yeniden deneyin."
}
}

Mesaj iki sınırda da aynıdır; hangi sınırın aşıldığını belirtmez.

Başlıklar​

Her yanıt şu başlıkları taşır:

BaşlıkDeğer
X-RateLimit-LimitDakikalık sınır: 300 ya da 60.
X-RateLimit-RemainingBu dakika içinde kalan istek hakkı.
Retry-AfterYalnız 429 yanıtında: yeniden denemeden önce beklenecek saniye.
X-RateLimit-ResetYalnız 429 yanıtında: sınırın sıfırlanacağı an (Unix zaman damgası).

İki sınıra birden tabi uçlarda başlıklar, kalan hakkı daha az olan sınırı gösterir. Başlıklar imzanın kapsamında değildir.

SDK'lar 429'u RateLimitException / RateLimitError olarak fırlatır; retryAfter (Python'da retry_after) Retry-After başlığındaki saniyeyi taşır.

SDK'larda​

429, SDK'larda RateLimitException (PHP, Java) / RateLimitError (Node.js, Python) olarak atılır. Bkz. Hatalar.