文档目录

批量处理

POST /v1/batches 支持在一次 API 调用中为多达 100 个接收地址批量下单。平台会对每个接收地址按需自动激活、补足带宽,并将大额能量分块委托上链。

批量任务执行机制

特性行为规范
接口响应202 Accepted:任务已进入排队,尚未扣款,尚未开始委托
结果追踪调用 GET /v1/batches/{id} 查询,或通过 Webhooks 回调(order.confirmed 事件携带 batch_id)
扣费结算按各个地址实际执行时的生效价格逐笔扣款;可通过每项的 max_price_sun 设定价格上限
故障隔离单个地址失败绝不影响其他地址;单个地址的激活或带宽补充失败不影响该地址的能量委托
订单归属每个接收地址生成独立的订单 ID —— 便于后续单独查询、提前赎回与对账
幂等控制client_batch_id:相同 ID + 相同内容返回原始批次任务;相同 ID + 不同内容返回 3010 idempotency_conflict
任务取消POST /v1/batches/{id}/cancel 可取消尚未开始的子项;已开始执行的子项将返回 3002 order_not_cancellable
请求频控订单创建接口(POST /v1/orders 与 POST /v1/batches)共享 30 rps 预算

请求格式示例

defaults 中的配置会应用到所有子项;每个子项可单独覆盖任意字段。

{
  "client_batch_id": "acme-payout-2026-09-11-01",
  "defaults": { "resource": "energy", "tier": "1h", "amount": 65000, "activate": true, "bandwidth": true, "bandwidth_amount": 400 },
  "items": [
    { "receiver": "TQn9Y2khEsLJW1ChVWFMSMeRDow5KcbLSE" },
    { "receiver": "TXXxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx", "amount": 131000 },
    { "receiver": "TYYyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy", "bandwidth": false }
  ]
}

相关接口

方法路径功能说明
POST/v1/batches创建批量任务
GET/v1/batches查询批量任务列表
GET/v1/batches/{batchId}查询批次执行进度及各地址订单详情
POST/v1/batches/{batchId}/cancel取消尚未开始的待处理项

字段级完整定义详见:批量处理 — API 接口参考。

    ↑ ↓ 切换 · Enter 打开 · Esc 关闭