Соглашения

Форматы, повтор запросов, ошибки и лимиты — общие для всех методов.

Обновлено 26 сентября 2026 г. · 2 мин чтения
Markdown

Форматы

Что Как Пример
Деньги строки USD с двумя знаками; оптовая цена и аванс — только в долларах, рублей в API нет "19.00"
Время UTC с Z 2026-09-24T10:14:03Z
Идентификаторы UUID; события — evt_<число>, строки леджера — led_<число> evt_1042
Списки новые сверху; курсор — id последнего объекта страницы (cursor), флаг has_more; чужой или битый курсор — 422 invalid_cursor ?cursor=…
Лента событий по возрастанию seq, параметр after ?after=1042

Повтор запросов

reseller_ref — ваш номер заказа, печатный ASCII до 64 знаков. Он и есть ключ повтора POST /v1/orders:
СитуацияОтветЧто делать
Повтор с тем же ref и тем же телом200Текущее состояние заказа — второго не будет: сеть оборвалась — повторите
Тот же ref, другое тело422idempotency_conflict, прежний заказ — в details.order_id
После 402 insufficient_balance или 500повторитьПополните или подождите и повторите с тем же ref и телом
Отменённый заказновый refПовтором не оживает — новый заказ требует нового ref
Idempotency-Key — обязателен на остальных изменяющих запросах (отмена заказа, действия с активацией, ротация секрета вебхука): печатный ASCII до 128 знаков, живёт 24 ч.
СитуацияОтветЧто делать
Тот же ключ с другим телом или на другом объекте422idempotency_conflict
Параллельный повтор, пока первый выполняется409idempotency_in_progress — подождите и повторите
Ответ 429ключ свободенПовторите с тем же ключом после Retry-After

Ошибки и лимиты

request_id

В каждом ответе об ошибке — назовите его поддержке.

Лимиты

Заголовки X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset на каждом ответе после авторизации; 429 несёт Retry-After.

Один конверт

{"error": {"code", "reason", "message", "details", "request_id"}}. Ветвитесь по code и reason, message — для людей и может меняться.

Страница помогла?