Webhook 用法:视频生成完,自动通知你
视频要几分钟到半小时才生成好,不用再反复查询:任务一结束,结果就推到你的服务器。讲清能用在哪些场景、两种接法和三步接入。
约 10 分钟
生成视频需要时间:一条 5 到 10 秒的视频通常要几分钟到十几分钟,30 秒的长视频要二三十分钟,高峰期还可能排队。以前,你只能每隔几秒查一次任务状态:写循环、管超时,服务一重启还得记着哪些任务没查完。
现在不用了。任务一结束,不论成功还是失败,我们都会把结果直接推送到你的服务器。
两种接法
- 账户默认地址:在控制台「设置 → Webhook」填一个接收地址,勾选要推送的事件。之后通过 API 提交的视频和图片任务,结束时都会推过来。
- 单次指定:提交任务时加一个
callback_url,这一单的结果只推到这个地址。习惯写callBackUrl的也能直接用。
curl https://nezhagate.com/v1/videos/generations \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"model": "seedance-2.5", "prompt": "雨夜街头漂过一只纸船", "duration": 5,
"callback_url": "https://your-app.com/webhooks/nezhagate"}'可以用在哪
- 视频 App、小程序、网站:用户提交后就可以关掉页面。视频好了你会收到推送,再给用户发站内消息、短信或邮件,把成片放进他的作品库。
- 批量出图:电商商品图、广告素材一次提交几百张,每张生成好就自动存进你的图库或 CDN。失败的单独记下来,改一下提示词再交。
- 聊天机器人:用户在 Telegram、Discord、飞书或企业微信群里发一句提示词,机器人先回「正在生成」,推送到了再把视频发回群里。
- 云函数 / Serverless:Vercel、Cloudflare Workers 和各家云函数都不适合跑半小时的轮询。提交完函数就可以结束,推送到达时再触发下一步。
- 余额提醒:余额低于你设的积分数时推送一次。接到团队的飞书、钉钉或 Slack 群里,余额用完前就有人看到,不会等到半夜业务停了才发现。
推送可靠吗
- 能验证真伪:每次推送都带签名,用的是 Standard Webhooks 标准(OpenAI 的 Webhook 也用这套)。各语言都有现成的库,几行代码就能确认推送确实来自我们。
- 会自动重试:你的服务器 10 秒内没返回 2xx,我们会在 1 分钟、5 分钟、30 分钟、2 小时、6 小时后各再推一次。同一事件每次推送的 ID 不变,方便去重。
- 内容完整:推送的内容和查询任务接口返回的一样,视频地址、用量都在里面。失败的任务已经全额退款,推送里写明失败原因。
- 有记录:控制台能看到最近的推送和每次的结果,记录保留 30 天,也可以手动重发。
三步接好
- 在你的服务器上准备一个接收地址。Webhook 文档里有 Python 和 Node.js 的完整验签示例。
- 打开控制台「设置 → Webhook」,填上地址,点「发送测试事件」,确认能收到。
- 像平常一样提交任务,等推送就行。某一单想推到别的地方,就在请求里加
callback_url。
事件类型、推送正文、请求头和重试规则的完整说明在 Webhook 文档里。
其它教程:SillyTavern · Cherry Studio · Cline