Skip to main content
Ответ на запрос содержит HTTP‑статус, стандартные заголовки и тело в формате JSON. HTTP‑статус отражает класс ошибки, а тело содержит точный машиночитаемый код.

Тело ответа при успехе

HTTP 200 OK и конверт с state: 0:
Подробнее — Формат взаимодействия.

Тело ответа при ошибке

Конверт с объектом error:
  • code — машиночитаемый код вида <домен>.<причина>. Именно по нему ветвитесь в коде.
  • message — человекочитаемое пояснение. Логировать безопасно, но не полагайтесь на точный текст.
Одно исключение — ограничение частоты (429). Оно отдаёт другую форму: {"state":1,"message":"rate limit exceeded"}без объекта error и без code. Ваш обработчик ошибок должен учитывать оба варианта: сначала проверьте HTTP‑статус (429 → подождать Retry-After и повторить), и только для прочих читайте error.code. Подробнее — Ограничение частоты.

Классы ошибок (HTTP‑статусы)


Примеры кодов

Список не исчерпывающий — точные коды каждого метода смотрите на его странице.

Как обрабатывать ошибки

  1. Ветвитесь по error.code, а не по message. Текст может меняться; код — контракт.
  2. 4xx — ваша ошибка запроса. Повтор без изменений даст тот же результат (кроме идемпотентных сценариев, где 409 означает «уже обработано»).
  3. 5xx и 503 — временные. Повторяйте с экспоненциальным backoff. Благодаря идемпотентности повтор денег‑движущих операций безопасен.
  4. 409 — не всегда финал. payout.funds_maturing, idempotency.in_progress, payout.frozen — временные: повторяйте позже с backoff. Прочие 409 не трактуйте вслепую как «уже сделано» — сверьтесь через */info. → Устойчивый клиент

Связанные страницы

Справочник кодов ошибок

все коды одной таблицей.

Формат взаимодействия

Идемпотентность

Аутентификация