Формат ошибок
Ошибки возвращаются в одной из трёх форм. Большинство эндпоинтов использует первую; две другие встречаются на конкретных путях и описаны здесь, чтобы ваш клиент не пропустил код ошибки, который ищет. Стандартная. Кодcode для программной обработки, вложенный в detail.error:
detail — этот ответ формируется до
того, как запрос дойдёт до эндпоинта:
code рядом с detail, а в detail находится само
сообщение:
detail — массив ошибок по полям, а не строка; несколько внутренних проверок возвращают
{"detail": "..."} с обычным текстом. При этом часть ответов 422 код всё же несёт, в стандартной
форме, — например повторно использованный ключ идемпотентности.
HTTP-коды состояния
Основные коды ошибок
Возвращаются в стандартной форме, в полеdetail.error.code:
У Node API (
node.tronrental.com) свои коды ошибок в другом формате — см.
Node API → Лимиты и ошибки.Коды автопополнения
Возвращаются в стандартной форме эндпоинтами автопополнения:Коды подтверждения вывода средств
POST /api/v1/account/withdrawal возвращает эти коды подтверждения в плоской форме, где code стоит
рядом с detail. Остальные ошибки того же эндпоинта приходят в стандартной форме:
Стратегия повторных попыток
Повторяйте ответы5xx с экспоненциальной задержкой. Для 429 используйте заголовок Retry-After,
если он есть, и сначала прочитайте тело — не всякий 429 является лимитом частоты
(см. Лимиты запросов).