生产 API
轮询、重试和幂等
安全重试,遵守 Retry-After,并仅在两个结束标志都为 true 时停止轮询。
本页内容
Rentron 不发送 webhook 或 callback。GET /v1/energy/orders/{id} 是获取订单状态的唯一可信依据。
建议的轮询方式
创建后,在 1、2、5 秒后轮询 Location,之后每 10 秒轮询一次。并行追踪多笔订单时请加入少量随机抖动。
只有 lifecycle_final === true 和 delivery_final === true 时才停止。
重试矩阵
| 结果 | 处理方式 |
|---|---|
| 网络错误 / GET 超时 | 使用退避重试。 |
| 订单 POST 超时 | 重放完全相同的请求体和 client_request_id。 |
429 |
等待 Retry-After 指定的秒数。 |
GET 返回 500 / 503 |
使用退避和随机抖动重试。 |
400、413、415 |
修正请求;自动重试无效。 |
401 |
修正凭证、签名、时间戳或 IP 允许列表。 |
409 幂等冲突 |
停止并检查被重复使用的客户端 ID。 |
为什么有两个结束标志?
delivery_final 结束资源分配尝试,lifecycle_final 结束整个租赁时长。资源分配成功后,订单可以持续有效,直到 rental_finished。只检查一个标志或一个状态会过早结束流程。
频率限制
公开时间、已验证流量和创建订单分别应用限制。不要猜测限制数值;429 和 Retry-After 是接口合约的一部分。
Rentron