Перейти до вмісту

Відмови

{
"code": "insufficient_balance",
"error": "Not enough funds",
"request_id": "9f3c1e2a7b4d5e60"
}

Розгалужуйтеся за code. Частина відмов несе додаткові поля:

{
"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
}

404 на GET /api/v1/orders/{id} несе тільки error і request_id, без code.

КодСтатусКоли
invalid_api_key401ключ не прийнято
validation_failed400порушено обмеження поля
invalid_body400тіло або поле не тієї форми
unknown_product400слаг невідомий або продукт не продається
insufficient_scope403у ключа немає права, якого вимагає маршрут
not_found404ресурсу немає або він належить іншому акаунту
idempotency_in_progress409попередній запит із цим ключем ще виконується
replace_in_progress409заміна адрес пакета вже йде
invalid_volume422обсяг поза діапазоном продукту
invalid_quantity422адрес більше, ніж можна взяти за одну купівлю
country_unavailable422країна не продається для цього продукту
unknown_plan, unknown_operator, unknown_period422тарифу, локації або періоду немає в обраної країни - звірте з параметрами
out_of_stock422у локації менше вільних адрес, ніж запитано
unsupported_capability422операція не стосується виду цього пакета
package_expired422термін пакета адрес сплив - спочатку продовжте
prolong_window_closed422адреси вже не повернути продовженням - потрібна нова купівля
type_unavailable422конфігурацію не можна ні оцінити, ні продати
insufficient_balance422не вистачає коштів
unsupported_field422у тілі незастосовний ключ; іде з field
invalid_targeting422значення немає в гео-каталозі; іде з field і value
package_unavailable422операція неможлива в поточному стані пакета або з цими налаштуваннями
purchase_refunded422купівля не відбулася, гроші повернуто
idempotency_key_required422немає заголовка Idempotency-Key
idempotency_key_invalid422заголовок порожній або довший за 255 символів
idempotency_key_reused422той самий ключ з іншим тілом
rate_limited429бюджет ключа вичерпано
replace_cooldown429адреси нещодавно замінювалися; коли можна знову - у replace_available_at
order_failed500замовлення не розміщено, баланс не списано
package_failed500операція над пакетом не вдалася, гроші не списано
order_needs_attention500гроші списано, видача не відбулася, розбирається вручну
operation_indeterminate500повтор із ключем операції, результат якої не визначено
catalog_unavailable503гео-каталог продукту ще не синхронізовано
КодГрошіДія
order_failed, package_failedне списаноповторити з тим самим Idempotency-Key
purchase_refunded (422)повернутоповторити як нову купівлю з новим ключем
order_needs_attentionсписано, результат з’ясовуєтьсяне повторювати, у підтримку з order_id
operation_indeterminateрезультат не визначеноне повторювати з тим самим ключем; звірити замовлення й пакети, потім у підтримку

Повідомлення в 5xx нейтральне - розгалужуйтеся за code.

Підтримка: @ipvrent_support, [email protected]. Додайте request_id з тіла відмови та order_id, якщо він є.

Таймаут - не відмова: запит міг дійти. Повтор із тим самим Idempotency-Key поверне ту саму відповідь. На 409 idempotency_in_progress зачекайте й повторіть з тим самим ключем.

Не ретраються: insufficient_balance, invalid_volume, invalid_quantity, unknown_product, unsupported_field, unsupported_capability, invalid_targeting, prolong_window_closed. На rate_limited чекайте Retry-After, на replace_cooldown - replace_available_at.