Webhooks(回调 URL)

当视频生成任务完成、失败或被取消时,通过 HTTP POST 接收实时通知,无需轮询任务状态接口。

设置回调

在生成请求中包含 callback_url

import requests

response = requests.post(
    "https://api.evolink.ai/v1/videos/generations",
    headers={
        "Authorization": "Bearer YOUR_API_KEY",
        "Content-Type": "application/json"
    },
    json={
        "model": "seedance-2.0",
        "prompt": "A sunset over the ocean, cinematic wide shot",
        "quality": "1080p",
        "callback_url": "https://yourapp.com/api/video-callback"
    }
)

回调载荷

当任务完成(或失败)时,系统会向您的 callback_url 发送 POST 请求。响应体格式与任务查询 API 的响应完全一致

已完成

{
    "id": "task-unified-1756817821-4x3rx6ny",
    "object": "video.generation.task",
    "created": 1756817821,
    "model": "seedance-2.0",
    "status": "completed",
    "progress": 100,
    "results": [
        "https://cdn.example.com/videos/task-unified-1756817821-4x3rx6ny.mp4"
    ],
    "type": "video",
    "task_info": {
        "can_cancel": false
    }
}

失败

{
    "id": "task-unified-1756817821-4x3rx6ny",
    "object": "video.generation.task",
    "created": 1756817821,
    "model": "seedance-2.0",
    "status": "failed",
    "progress": 0,
    "type": "video",
    "task_info": {
        "can_cancel": false
    }
}

回调时机

  • 当任务状态变为已完成失败已取消时触发
  • 在计费确认完成后发送

回调要求

要求详情
协议仅限 HTTPS
超时您的接口必须在 10 秒 内响应
成功确认返回 2xx 状态码以确认收到
重试失败后最多 重试 3 次(间隔 1 秒、2 秒、4 秒)
URL 长度最多 2048 个字符
网络禁止使用内网/私有 IP(127.0.0.110.x.x.x172.16-31.x.x192.168.x.x

相关文档