Ketmus
Esc

API Reference v1

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

Формат ошибок API, коды ответов и ограничения на частоту запросов.

Формат ошибки

При ошибке API возвращает HTTP-код 4xx или 5xx и объект error с машинным кодом и понятным сообщением:

{
  "error": {
    "code": "invalid",
    "message": "amount: Number must be greater than 0"
  }
}

Коды ошибок

HTTPcodeЧто означаетЧто делать
400invalidНеверные параметры или тело запроса не JSONИсправьте запрос по сообщению в message
401unauthorizedНет ключа или ключ неверныйПроверьте заголовок Authorization
403inactiveМагазин отключёнОбратитесь в поддержку
404not_foundСчёт или метод не найденПроверьте идентификатор и путь
405method_not_allowedМетод HTTP не поддерживаетсяИспользуйте GET или POST согласно документации
429rate_limitedПревышен лимит запросовПовторите через минуту
500internalВнутренняя ошибкаПовторите запрос позже
503unavailableСервис временно недоступенПовторите с экспоненциальной задержкой
503rail_unavailableВыбранная сеть временно недоступнаПредложите клиенту другую монету

Лимиты

  • Не более 300 запросов в минуту на один API-ключ.
  • Не опрашивайте статус счёта в цикле — используйте вебхуки. Если опрос всё же нужен, делайте его не чаще раза в 15–30 секунд.
  • Для GET /invoices максимальный limit — 200 записей.

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

Повторяйте запросы только при ответах 429, 500 и 503 или сетевой ошибке. Чтобы при повторе POST /invoices не создать дубликат счёта, передавайте свой order_id и перед повтором проверяйте, нет ли уже счёта с ним: GET /invoices?order_id=....