Retler
{ "code": "insufficient_balance", "error": "Not enough funds", "request_id": "9f3c1e2a7b4d5e60"}Mantığınızı code üzerine kurun. Bazı retler ek alanlar taşır:
{ "code": "invalid_targeting", "error": "Unknown city", "field": "city", "value": "nosuchcity"}{ "code": "unsupported_field", "error": "Field is not supported here", "field": "count"}{ "code": "rate_limited", "error": "Too many requests", "retry_after": 12, "limit": 120}GET /api/v1/orders/{id} üzerindeki 404 yalnızca error ve request_id taşır, code yoktur.
Kod kataloğu
Section titled “Kod kataloğu”| Kod | Durum | Ne zaman |
|---|---|---|
invalid_api_key | 401 | anahtar kabul edilmedi |
validation_failed | 400 | bir alan kısıtı ihlal edildi |
invalid_body | 400 | gövde veya alan yanlış biçimde |
unknown_product | 400 | slug bilinmiyor ya da ürün satılmıyor |
insufficient_scope | 403 | anahtarda rotanın gerektirdiği yetki yok |
not_found | 404 | kaynak yok ya da başka bir hesaba ait |
idempotency_in_progress | 409 | bu anahtarla yapılan önceki istek hâlâ yürütülüyor |
replace_in_progress | 409 | paketin adres değişimi zaten sürüyor |
invalid_volume | 422 | hacim ürünün aralığı dışında |
invalid_quantity | 422 | adres sayısı tek satın almada alınabilecek sayıdan fazla |
country_unavailable | 422 | ülke bu ürün için satılmıyor |
unknown_plan, unknown_operator, unknown_period | 422 | seçilen ülkede bu tarife, konum veya dönem yok - parametrelerle karşılaştırın |
out_of_stock | 422 | konumdaki müsait adres sayısı istenenden az |
unsupported_capability | 422 | işlem bu paketin türüne ait değil |
package_expired | 422 | adres paketinin süresi doldu - önce uzatın |
prolong_window_closed | 422 | adresler artık uzatmayla geri getirilemez - yeni satın alma gerekir |
type_unavailable | 422 | yapılandırma ne fiyatlandırılabilir ne satılabilir |
insufficient_balance | 422 | bakiye yetersiz |
unsupported_field | 422 | gövdede uygulanamaz bir anahtar var; field ile gelir |
invalid_targeting | 422 | değer geo kataloğunda yok; field ve value ile gelir |
package_unavailable | 422 | işlem paketin mevcut durumunda veya bu ayarlarla mümkün değil |
purchase_refunded | 422 | satın alma gerçekleşmedi, para iade edildi |
idempotency_key_required | 422 | Idempotency-Key başlığı yok |
idempotency_key_invalid | 422 | başlık boş veya 255 karakterden uzun |
idempotency_key_reused | 422 | aynı anahtar farklı gövdeyle |
rate_limited | 429 | anahtarın istek bütçesi tükendi |
replace_cooldown | 429 | adresler yakın zamanda değiştirildi; ne zaman yeniden mümkün olduğu replace_available_at içinde |
order_failed | 500 | sipariş verilmedi, bakiye düşülmedi |
package_failed | 500 | paket üzerindeki işlem başarısız oldu, para düşülmedi |
order_needs_attention | 500 | para düşüldü, sağlama gerçekleşmedi, elle inceleniyor |
operation_indeterminate | 500 | sonucu belirsiz bir işlemin anahtarıyla tekrar |
catalog_unavailable | 503 | ürünün geo kataloğu henüz senkronize edilmedi |
Ücretli işlemler
Section titled “Ücretli işlemler”| Kod | Para | Eylem |
|---|---|---|
order_failed, package_failed | düşülmedi | aynı Idempotency-Key ile tekrarlayın |
purchase_refunded (422) | iade edildi | yeni anahtarla yeni bir satın alma olarak tekrarlayın |
order_needs_attention | düşüldü, sonuç inceleniyor | tekrarlamayın, order_id ile desteğe başvurun |
operation_indeterminate | sonuç belirsiz | aynı anahtarla tekrarlamayın; siparişleri ve paketleri kontrol edin, ardından desteğe başvurun |
5xx yanıtlarındaki mesaj nötrdür - code değerine göre karar verin.
Destek: @ipvrent_support,
[email protected]. Ret gövdesindeki request_id değerini ve varsa
order_id değerini ekleyin.
Tekrar denemeler
Section titled “Tekrar denemeler”Zaman aşımı bir ret değildir: istek ulaşmış olabilir. Aynı Idempotency-Key ile tekrar, aynı yanıtı
döndürür. 409 idempotency_in_progress durumunda bekleyin ve aynı anahtarla tekrarlayın.
Tekrar denenmeyenler: insufficient_balance, invalid_volume, invalid_quantity,
unknown_product, unsupported_field, unsupported_capability, invalid_targeting,
prolong_window_closed. rate_limited için Retry-After kadar, replace_cooldown için
replace_available_at zamanına kadar bekleyin.