接收回调
登记回调地址后,任务结束和费用结算时我们向它发送签名的通知。
本页内容
回调让你不用一直轮询:任务结束时我们向你登记的 HTTPS 地址发送 POST 请求。
登记地址
- 在控制台的「回调」页添加 HTTPS 地址并完成验证,保存登记时显示的签名密钥
signing_secret。 - 创建任务时在请求体里写
callback_url,值必须与本团队已验证、未撤销且未过期的地址逐字节相同,否则返回400 callback_target_not_verified。 - 收到通知时先验证签名,再处理正文。
两种事件
| 事件 | 什么时候发送 |
|---|---|
task.completed | 任务成功、失败或取消之后;成功的任务要先完成交付处理。 |
task.billing_settled | task.completed 已送达或放弃、且费用结算确定之后。完成后三十天仍未结算的任务不发送。 |
两个事件的正文都是任务快照,不含结果下载地址;需要下载时再查询任务。
响应与重试
只有 2xx 响应表示已收到。其他状态或超时会重试:第一次失败后依次等待 10 秒、1 分钟、5 分钟,之后每小时一次,每个事件最长 7 天。task.billing_settled 的 7 天从它自己开始投递时算起。
去重
每个事件至少送达一次,可能重复。验证签名后,按正文里的 event_id 去重;请求头 Chenvoya-Event-Id 没有被签名,只是方便查看的副本。处理过的事件 ID 至少保存 7 天零 5 分钟。重试时事件 ID 和正文的原始字节都不变。
撤销地址
在控制台撤销地址后不再开始新的投递,但已经开始发送的那一次仍可能到达。控制台可以查看通知记录;任务的当前状态和下载结果始终以查询任务为准。