Коды ошибок
Эта страница содержит информацию о кодах ошибок, которые могут быть возвращены API TronZap.
Формат ответа с ошибкой
При возникновении ошибки API вернет ответ с ненулевым кодом ошибки и описанием ошибки:
{
"code": 1,
"key": "auth",
"request_id": "99d8b507-0bca-4d5a-9542-cc2a2f2e3639",
"error": "Incorrect token or signature"
}Список кодов ошибок
| Код | Ключ | Описание | Решение |
|---|---|---|---|
| 0 | — | Успех | Не является ошибкой. Запрос выполнен успешно. |
| 1 | auth | Ошибка аутентификации | Проверьте ваш API-токен и убедитесь, что подпись рассчитана правильно. |
| 2 | invalid_service_or_params | Неверный сервис или параметры | Проверьте правильность названия сервиса и параметров. |
| 5 | wallet_not_found | Кошелек не найден | Проверьте адрес кошелька или обратитесь в поддержку, если считаете это ошибкой. |
| 6 | insufficient_funds | Недостаточно средств | Пополните счет или уменьшите запрашиваемое количество энергии. |
| 10 | invalid_tron_address | Неверный TRON-адрес | Проверьте формат TRON-адреса. Это должен быть валидный 34-символьный TRON-адрес. |
| 11 | invalid_energy_amount | Неверное количество энергии | Убедитесь, что запрашиваемое количество энергии валидно. |
| 12 | invalid_duration | Неверная длительность | Проверьте правильность параметра длительности. |
| 20 | subscription_not_found | Подписка не найдена | Проверьте правильность ID подписки или внешнего ID. |
| 21 | cannot_stop_subscription | Не удается остановить подписку | Проверьте ограничения подписки; измените лимит транзакций или завершите ожидающие операции. |
| 24 | address_not_activated | Адрес не активирован | Сначала активируйте адрес, создав транзакцию активации адреса. |
| 25 | address_already_activated | Адрес уже активирован | Адрес уже активирован. Действия не требуются. |
| 30 | aml_check_not_found | Проверка AML не найдена | Повторите проверку AML или свяжитесь с поддержкой для подтверждения статуса проверки. |
| 35 | service_unavailable | Сервис недоступен | Сервис временно недоступен для использования. |
| 500 | internal_server_error | Внутренняя ошибка сервера | Обратитесь в поддержку, если эта ошибка повторяется. |
Подключи (Sub-keys)
Некоторые ошибки могут содержать более конкретный подключ, предоставляющий дополнительный контекст. Подключи используют точечную нотацию (например, invalid_tron_address.from_address).
| Базовый ключ | Sub-key | Описание |
|---|---|---|
invalid_tron_address | invalid_tron_address.from_address | Неверный адрес отправителя |
invalid_tron_address | invalid_tron_address.to_address | Неверный адрес получателя |
invalid_tron_address | invalid_tron_address.contract_address | Неверный адрес контракта |
invalid_tron_address | invalid_tron_address.already_subscribed | У адреса уже есть активная подписка |
invalid_service_or_params | invalid_service_or_params.network | Неподдерживаемая сеть |
invalid_service_or_params | invalid_service_or_params.address | Указан неверный адрес |
invalid_service_or_params | invalid_service_or_params.hash | Для проверки требуется хэш |
invalid_service_or_params | invalid_service_or_params.direction | Неверное значение направления |
invalid_service_or_params | invalid_service_or_params.page | Неверная страница |
invalid_service_or_params | invalid_service_or_params.per_page | Неверный параметр per_page |
invalid_service_or_params | invalid_service_or_params.status | Неверный статус |
invalid_service_or_params | invalid_service_or_params.id | Неверный id / Требуется id или external_id |
invalid_service_or_params | invalid_service_or_params.external_id | Неверный external_id |
invalid_service_or_params | invalid_service_or_params.address_owner | Адрес принадлежит другому пользователю |
invalid_service_or_params | invalid_service_or_params.internal_credit | Внутреннее пополнение не разрешено |
invalid_service_or_params | invalid_service_or_params.amount | Сумма вне допустимого диапазона |
invalid_service_or_params | invalid_service_or_params.exchange_finalized | Обмен завершен |
invalid_service_or_params | invalid_service_or_params.exchange_state | Обмен в недопустимом состоянии |
invalid_energy_amount | invalid_energy_amount.energy_amount | Неверное количество энергии |
invalid_energy_amount | invalid_energy_amount.bandwidth_amount | Неверное количество bandwidth |
invalid_duration | invalid_duration.duration | Длительность должна быть равна 1 (1 час) |
address_not_activated | address_not_activated.subscription | Адрес должен быть активирован перед покупкой подписки |
subscription_not_found | subscription_not_found.transaction | Транзакция не найдена |
Обработка ошибок
При использовании API вам следует реализовать логику обработки ошибок для всех возможных кодов ошибок. Вот некоторые рекомендации:
Ошибки аутентификации (Код 1)
Ошибки аутентификации указывают на проблемы с вашими учетными данными API или расчетом подписи. Вам следует:
- Проверить правильность API-токена
- Проверить логику расчета подписи
- Убедиться, что ваш API-секрет не раскрыт в клиентском коде
Ошибки ресурсов (Коды 5, 6, 10, 20)
Ошибки ресурсов указывают на проблемы с предоставленными ресурсами. Вам следует:
- Проверять TRON-адреса перед отправкой в API
- Проверять баланс счета перед совершением транзакций
- Проверять ID транзакций при проверке статуса
Ошибки бизнес-логики (Коды 24, 25)
Ошибки бизнес-логики указывают на проблемы с запрашиваемой операцией. Вам следует:
- Реализовать проверку активации адреса перед попыткой покупки энергии
- Пропускать активацию адреса, если он уже активирован
