错误代码
本页面提供了TronZap API可能返回的错误代码信息。
错误响应格式
发生错误时,API将返回包含非零错误代码和错误消息的响应:
json
{
"code": 1,
"key": "auth",
"request_id": "99d8b507-0bca-4d5a-9542-cc2a2f2e3639",
"error": "Incorrect token or signature"
}错误代码列表
| 代码 | Key | 描述 | 解决方案 |
|---|---|---|---|
| 0 | — | 成功 | 这不是错误。请求成功。 |
| 1 | auth | 身份验证错误 | 检查您的API令牌并确保签名计算正确。 |
| 2 | invalid_service_or_params | 无效的服务或参数 | 检查服务名称和参数是否正确。 |
| 5 | wallet_not_found | 未找到钱包 | 验证钱包地址,如果您认为这是错误,请联系支持。 |
| 6 | insufficient_funds | 余额不足 | 向您的账户添加资金或减少您要求的能量数量。 |
| 10 | invalid_tron_address | 无效的波场地址 | 检查波场地址格式。它应该是有效的34字符波场地址。 |
| 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 | 无效的每页数量 |
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 | 无效的带宽数量 |
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)
资源错误表示提供的资源存在问题。您应该:
- 在将波场地址发送到API之前验证它们
- 在进行交易之前检查账户余额
- 检查状态时验证交易ID
业务逻辑错误(代码24、25)
业务逻辑错误表示请求的操作存在问题。您应该:
- 在尝试能量购买之前实现地址激活检查
- 如果已激活则跳过地址激活
