Skip to content
API Reference · 视频生成 API

视频生成 API

异步视频生成任务 — 创建、查询、列出、取消,覆盖文生视频与图生视频。


概览

视频生成是异步任务:调用 POST /videos/generations 创建任务后立即返回任务 ID,使用 GET /videos/generations/{id} 轮询直到 status 变为 completed,再读取 video_url 下载结果。

支持模型:seedance-1.5-proseedance-2.0 等(用 GET /videos/models 拉取最新列表)。完整 schema 与字段约束见 交互式 API 文档

  • GET https://api.alltoken.ai/v1/videos/models — 列出可用视频模型
  • POST https://api.alltoken.ai/v1/videos/generations — 创建生成任务
  • GET https://api.alltoken.ai/v1/videos/generations/{id} — 查询任务状态
  • GET https://api.alltoken.ai/v1/videos/generations — 列出任务
  • POST https://api.alltoken.ai/v1/videos/generations/{id}/cancel — 取消任务

列出视频模型

GET
$GET https://api.alltoken.ai/v1/videos/models

返回所有可用的视频生成模型,OpenAI 兼容格式。

响应示例 JSON
1{
2 "object": "list",
3 "data": [
4 { "id": "seedance-1.5-pro", "object": "model", "owned_by": "chat" },
5 { "id": "seedance-2.0", "object": "model", "owned_by": "chat" }
6 ]
7}

创建视频生成任务

POST
$POST https://api.alltoken.ai/v1/videos/generations

文生视频

请求体 JSON
1{
2 "model": "seedance-1.5-pro",
3 "prompt": "一只小猫在彩虹上冲浪",
4 "duration": 5,
5 "ratio": "16:9",
6 "resolution": "720p"
7}

图生视频(首帧引导)

请求体 JSON
1{
2 "model": "seedance-1.5-pro",
3 "prompt": "猫向前跳跃",
4 "content": [
5 {
6 "type": "image_url",
7 "image_url": { "url": "https://example.com/cat.png" },
8 "role": "first_frame"
9 }
10 ],
11 "duration": 5
12}

响应(任务已创建,状态为 queued

响应 JSON
1{
2 "id": "vgen_01abc",
3 "status": "queued",
4 "model": "seedance-1.5-pro",
5 "input_type": "text",
6 "ratio": "16:9",
7 "resolution": "720p",
8 "duration": 5,
9 "created_at": "2026-04-27T10:00:00Z"
10}

请求参数

  • model (必填) — 视频模型 ID(如 "seedance-1.5-pro"
  • prompt (必填) — 视频内容描述
  • content — 多模态输入数组(图生视频 / 视频参考用),每项含 typeimage_url / video_url / audio_url / draft_task)和 rolefirst_frame / last_frame / reference_image / reference_video / reference_audio
  • ratio — 画面比例:16:9 / 9:16 / 4:3 / 3:4 / 21:9 / 1:1 / adaptive
  • duration — 视频时长(秒);-1 表示模型智能选择
  • resolution480p / 720p / 1080p
  • frames — 帧数(优先级高于 duration
  • generate_audio — 是否同步生成配套音频
  • input_has_video — 输入内容包含视频参考时设置
  • seed — 随机种子,用于复现
  • camera_fixed — 是否固定镜头
  • watermark — 是否添加水印(默认 false
  • callback_url — 任务完成时回调的 URL
  • return_last_frame — 是否返回末帧 URL(用于续写)
  • service_tierdefault / flex
  • execution_expires_after — 执行过期窗口(秒),范围 3600-259200
  • draft — 在模型支持时创建或使用草稿任务
  • tools — 可选工具配置,例如 web_search
  • safety_identifier — 可选的稳定安全标识,最长 64 个字符

查询任务状态

GET
$GET https://api.alltoken.ai/v1/videos/generations/{id}

返回任务详情。当 statuscompleted 时,video_url 即为生成视频的下载链接。

响应示例 JSON
1{
2 "id": "vgen_01abc",
3 "status": "completed",
4 "model": "seedance-1.5-pro",
5 "video_url": "https://cdn.example.com/videos/vgen_01abc.mp4",
6 "video_url_expires_at": "2026-04-27T11:00:00Z",
7 "video_url_ttl": 3600,
8 "duration": 5,
9 "fps": 24,
10 "resolution": "720p",
11 "ratio": "16:9",
12 "usage": {
13 "completion_tokens": 256,
14 "total_tokens": 256
15 },
16 "created_at": "2026-04-27T10:00:00Z",
17 "completed_at": "2026-04-27T10:01:32Z"
18}

video_url 是预签名 URL,video_url_ttl 秒后过期;过期后重新调本接口可获取新 URL。

任务状态枚举

  • queued — 已入队,等待 GPU 资源
  • processing — 模型正在生成
  • completed — 已完成,video_url 可用
  • failed — 生成失败,详情见 error 字段
  • expired — 任务或生成资源已过期
  • cancelled — 用户主动取消

建议轮询间隔 2-5 秒。绝大多数任务在 30-120 秒内完成,少数大分辨率任务可能 3-5 分钟。

列出任务

GET
$GET https://api.alltoken.ai/v1/videos/generations?limit=20&status=completed

分页列出当前用户的视频生成任务。查询参数:

  • limit — 每页数量(默认 20,最大 100)
  • status — 按状态过滤(queued / processing / completed / failed / expired / cancelled

取消任务

POST
$POST https://api.alltoken.ai/v1/videos/generations/{id}/cancel

取消尚未完成的任务(queuedprocessing 状态)。已 completed / cancelled 的任务返回 409 Conflict

错误响应

  • 400 — 请求参数错误(如 prompt 为空、ratio 非法)
  • 401 — API Key 无效或缺失
  • 402 — 余额不足
  • 404 — 任务 ID 不存在
  • 409 — 任务状态不允许该操作(如取消已完成任务)
  • 429 — 超出速率限制