Webhook 回调
除了轮询状态接口,你还可以在提交视频任务时提供回调 URL,在生成完成时自动接收通知。工作原理
- 提交时附带回调 URL:在提交视频任务时加入
callback_url - 接收通知:任务完成(成功或失败)时,PoYo AI 会向你的 URL 发送 POST 请求
- 处理结果:你的服务器会收到完整的任务数据,包括生成的视频
回调请求
任务完成时,PoYo AI 会向你的回调 URL 发送 POST 请求。回调请求体与视频状态接口的任务数据结构相同,但不包含外层的code 和 data 包装。
请求头
请求体
失败任务回调
签名验证
PoYo 使用 HMAC-SHA256 对每个视频 Webhook 请求签名。现有接收端可以忽略这些请求头,但生产系统应当验证签名。 获取你的 Webhook HMAC 密钥:task_id是回调请求体中顶层的task_idtimestamp是X-Webhook-Timestamp的值webhook_hmac_key由GET /api/api-keys/webhook-secret返回
要求
你的回调接口必须满足以下要求:- 仅支持 HTTPS:必须使用 HTTPS 协议(不支持 HTTP)
- URL 最大长度:2048 个字符
- 响应超时:必须在 30 秒内响应
- 成功响应:应返回 HTTP 200-299 状态码
- 禁止内网 IP:不能使用私有/内网 IP 地址(例如 192.168.x.x、10.x.x.x)
- 公网可访问:必须能从互联网公开访问
重试策略
如果你的回调接口未响应或返回错误:- 重试次数:最多自动重试 5 次
- 重试间隔:指数退避,从约 60 秒开始,最长 10 分钟
- 最终失败:所有重试均失败后,不再继续重试
重要说明
后续步骤
任务状态
了解如何轮询视频任务状态
视频模型
浏览所有视频模型