Seedance 视频生成 API 使用说明

概述

本服务提供 AI 视频生成能力,请求 / 响应采用类火山方舟(Volcengine Ark)的结构,支持三种生成模式:

文生视频 图生视频 多模态参考生视频

快速开始

认证方式

所有接口均需在请求头中传入 API Key:

Authorization: Bearer <你的 API Key>

⚠️ 请妥善保管 API Key,不要泄露给他人。

基础信息

项目
服务器地址https://sd.boosterai.cn
接口基础路径/api/v3/contents/generations/tasks
请求 / 响应格式application/json

计费与余额

本服务采用预付费余额模式,请求前请确保账户余额充足。

计费规则

  • 计费单位:积分。
    每个任务费用 = 视频时长(秒)× 该模型单价(积分/秒)。

冻结与扣费流程

  1. 下单冻结:提交任务时,按预估费用冻结相应积分。
  2. 成功扣费:任务成功后才实际扣费。
  3. 解冻退回:任务失败 / 取消 / 超时则全额解冻,不扣费。

可用余额

可用余额 = 账户总余额 − 冻结中金额

下单时若「可用余额 < 本次预估费用」,接口返回 402 insufficient_balance,任务不会提交。

余额查询与充值

  • 余额查询:用你的 API Key 登录工作台 https://sd.boosterai.cn/#bill,查看实时余额、冻结金额与消费明细。
  • 充值:请联系管理员。余额不足时请及时充值,否则无法继续提交任务。

可用模型列表

模型名分辨率时长范围支持的宽高比
seedance-2720p4–15 秒21:9, 16:9, 4:3, 1:1, 3:4, 9:16
seedance-2-1080p1080p4–15 秒16:9, 9:16, 1:1
seedance-2-fast720p4–15 秒21:9, 16:9, 4:3, 1:1, 3:4, 9:16
seedance-2-mini720p4–15 秒21:9, 16:9, 4:3, 1:1, 3:4, 9:16

分辨率由模型决定,无法在请求中修改。duration 为必填参数(无默认值),须在该模型时长范围内。

接口详情

1. 提交视频生成任务

POST/api/v3/contents/generations/tasks

请求体参数

参数类型必填说明
modelstring模型名,见上方模型列表
contentarray输入内容,见下方说明;必须包含且仅包含一个 type=text作为提示词
durationint视频时长(秒),必须在该模型允许的时长范围内
ratiostring宽高比,取值见上方模型列表

火山方舟其它字段(如 seedwatermarkgenerate_audioreturn_last_frameresolutionframes 等)本服务不支持,传入会被忽略,不报错。

content 数组元素说明

content 是一个数组,每个元素按 type 区分,本服务支持以下四种 type

type字段说明
texttext提示词。必须且仅能有一个,长度 ≥ 1
image_urlimage_url.url参考图片 URL,最多9张,图片、视频、音频参考媒体合计最多12个
video_urlvideo_url.url参考视频 URL,最多3个,总时长 ≤ 15s,图片、视频、音频参考媒体合计最多12个
audio_urlaudio_url.url参考音频 URL,最多3个,总时长 ≤ 15s,图片、视频、音频参考媒体合计最多12个

完整请求示例

下例演示文本 + 图片 + 视频 + 音频的多模态参考请求,可直接运行。文生视频、图生视频等场景只需按需增减 content 中的元素(text 项必填,其余参考媒体可选)。

多模态参考(seedance-2-fast,9:16,15 秒):

curl -X POST https://sd.boosterai.cn/api/v3/contents/generations/tasks \
  -H "Authorization: Bearer 你的APIKey" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "seedance-2-fast",
    "content": [
      { "type": "text", "text": "保持视频中的动作和场景,参考图片中的人物风格,画面节奏跟随音频律动" },
      {
        "type": "image_url",
        "image_url": { "url": "https://example.com/reference.jpg" }
      },
      {
        "type": "video_url",
        "video_url": { "url": "https://example.com/source.mp4" }
      },
      {
        "type": "audio_url",
        "audio_url": { "url": "https://example.com/beat.mp3" }
      }
    ],
    "duration": 15,
    "ratio": "9:16"
  }'

响应示例

{
  "id": "task_01KWBW73D7WCN1PFZN9S1QQCK2"
}

HTTP 状态码

状态码说明
200任务提交成功
400请求参数错误(模型不存在、prompt 缺失、ratio 不支持、时长超出范围、未配置定价等)
401API Key 无效或未传入
402余额不足(insufficient_balance),请联系管理员充值
500服务器内部错误
502上游服务异常,稍后重试

2. 查询单个任务状态

GET/api/v3/contents/generations/tasks/{taskId}

将提交任务时返回的 id 填入路径。

请求示例

curl https://sd.boosterai.cn/api/v3/contents/generations/tasks/task_01KWBW73D7WCN1PFZN9S1QQCK2 \
  -H "Authorization: Bearer 你的APIKey"

响应示例(成功)

{
  "id": "task_01KWBW73D7WCN1PFZN9S1QQCK2",
  "model": "seedance-2",
  "status": "succeeded",
  "created_at": 1748900000,
  "updated_at": 1748900120,
  "content": {
    "video_url": "https://cdn.example.com/output/video.mp4"
  },
  "duration": 10,
  "resolution": "1080p",
  "ratio": "16:9"
}

响应字段说明

字段说明
id任务 ID
model提交时使用的模型名
status任务状态,见下方状态说明
created_at / updated_at创建 / 更新时间,Unix 秒(UTC+8)
content.video_url生成的视频下载地址(24 小时有效)
duration视频时长(秒)
resolution分辨率,如 720p / 1080p
ratio宽高比,如 16:9
error.message失败时的错误描述

响应示例(失败)

{
  "id": "task_01KWBW73D7WCN1PFZN9S1QQCK2",
  "status": "failed",
  "error": {
    "message": "模型处理失败,请重新提交"
  }
}

任务状态说明

状态说明
queued排队等待处理
running正在生成中
succeeded生成成功,可获取视频链接
failed生成失败
expired任务超时
cancelled已取消

HTTP 状态码

状态码说明
200查询成功
401API Key 无效
404任务不存在

3. 查询任务列表

GET/api/v3/contents/generations/tasks

支持分页,返回当前 API Key 下的所有任务,按创建时间倒序排列。

查询参数

参数类型必填默认值说明
page_numint1页码(从 1 开始)
page_sizeint10每页条数

请求示例

curl "https://sd.boosterai.cn/api/v3/contents/generations/tasks?page_num=1&page_size=20" \
  -H "Authorization: Bearer 你的APIKey"

响应示例

{
  "total": 42,
  "items": [
    {
      "id": "task_01KWBW73D7WCN1PFZN9S1QQCK2",
      "model": "seedance-2",
      "status": "succeeded",
      "created_at": 1748900000,
      "updated_at": 1748900120,
      "content": {
        "video_url": "https://cdn.example.com/output/video.mp4"
      },
      "duration": 10,
      "resolution": "1080p",
      "ratio": "16:9"
    }
  ]
}

错误码参考

错误码HTTP含义处理建议
invalid_api_key401API Key 无效或已禁用检查 Authorization 头
invalid_model400模型名不存在或已禁用参考模型列表使用正确的模型名
invalid_duration400时长超出模型允许范围调整 duration 至模型允许范围内
invalid_ratio400宽高比不被该模型支持参考模型列表的「支持的宽高比」
invalid_request400请求参数错误(如缺少 prompt、多个 text 项)content 必须且仅含一个非空 type=text 项
pricing_not_configured400未配置该模型的定价联系管理员开通权限
insufficient_balance402余额不足(可用余额 = 余额 − 冻结 < 本次预估费用)联系管理员充值后重试
task_not_found404任务不存在确认 task id 正确,且属于当前 API Key
bad_request400缺少必填请求头等检查请求头与请求体
not_found404路径不存在检查请求 URL
upstream_error502上游服务异常稍后重试,若持续报错联系管理员
internal_error500服务器内部错误稍后重试,若持续报错联系管理员