Skip to content

视频生成 Seedance

POST /api/v1/seedance/videos
Authorization: Bearer sk-xxx
Content-Type: application/json

异步视频生成接口,支持文字/图片/视频多模态输入,生成 4-15 秒电影级多镜头视频。

支持模型

模型 ID说明
doubao-seedance-2-0-260128标准版,支持 480p / 720p / 1080p / 4k 输出
doubao-seedance-2-0-fast-260128快速版,速度更快价格更低,仅支持 480p / 720p

创建视频任务

Request

字段类型必填说明
modelstring*模型 ID,见上方支持模型列表
contentarray*输入内容数组,支持 text / image / video 类型
resolutionstring可选输出分辨率:480p / 720p / 1080p / 4k(Fast 版仅支持 480p / 720p)
ratiostring可选画面比例:16:9 / 9:16 / 1:1 / 4:3 / 3:4 / 21:9
durationinteger可选视频时长(秒),4~15,默认 5
bitrate_modestring可选画质模式(仅 Seedance 2.0 系列支持):standard 标准画质(比特率适中,平衡画质与体积)/ high 高清画质(更高比特率,保留更多细节、减少色带与块效应,适合高纹理、快速运动或需后期加工的场景,输出体积比 standard 增大约 3-5 倍,不额外收费)
generate_audioboolean可选是否生成同步音频,默认 true。设为 false 时不生成音频(仅 Seedance 2.0 系列支持)

content 数组中每个元素的格式:

字段说明
typetext / image / video / audio
text文字描述(type=text 时)
image_url图片 URL(type=image 时),支持公网 URL、Base64 Data URL、asset://<ASSET_ID>(素材库素材)
video_url视频 URL(type=video 时),支持公网 URL、asset://<ASSET_ID>
audio_url音频 URL(type=audio 时),支持公网 URL、asset://<ASSET_ID>。不可单独输入音频,需同时包含图片或视频
role图片/视频的角色(可选):first_frame 首帧 / last_frame 尾帧 / reference_image 参考图 / reference_video 参考视频 / reference_audio 参考音频

请求示例

文字生成视频:

json
{
  "model": "doubao-seedance-2-0-260128",
  "content": [
    {"type": "text", "text": "一只猫在花园里追蝴蝶,阳光明媚,电影级画质"}
  ],
  "resolution": "1080p",
  "ratio": "16:9",
  "duration": 5
}

图片生成视频:

json
{
  "model": "doubao-seedance-2-0-260128",
  "content": [
    {"type": "image", "image_url": "https://example.com/photo.jpg"},
    {"type": "text", "text": "图片中的人物缓缓转身微笑"}
  ],
  "resolution": "720p",
  "duration": 5
}

多张图片 + 文字生成视频:

json
{
  "model": "doubao-seedance-2-0-260128",
  "content": [
    {"type": "image", "image_url": "https://example.com/scene1.jpg"},
    {"type": "image", "image_url": "https://example.com/scene2.jpg"},
    {"type": "image", "image_url": "https://example.com/scene3.jpg"},
    {"type": "text", "text": "根据以上图片风格,生成一段电影级宣传片"}
  ],
  "resolution": "1080p",
  "ratio": "16:9",
  "duration": 10,
  "generate_audio": true
}

最多支持 3 张参考图片,图片将作为视频的风格参考或首尾帧控制。

首尾帧控制(指定起始和结束画面):

json
{
  "model": "doubao-seedance-2-0-260128",
  "content": [
    {"type": "image", "image_url": "https://example.com/start.jpg", "role": "first_frame"},
    {"type": "image", "image_url": "https://example.com/end.jpg", "role": "last_frame"},
    {"type": "text", "text": "从第一帧过渡到最后一帧,花瓣飘落"}
  ],
  "resolution": "1080p",
  "ratio": "16:9",
  "duration": 5,
  "generate_audio": true
}

role 可选值:first_frame(首帧)、last_frame(尾帧)、reference_image(参考图)。不传 role 时默认为参考图。

使用素材库素材:

json
{
  "model": "doubao-seedance-2-0-260128",
  "content": [
    {"type": "image", "image_url": "asset://Asset-xxx", "role": "first_frame"},
    {"type": "text", "text": "基于认证素材生成视频"}
  ],
  "resolution": "720p",
  "duration": 5
}

asset://<ASSET_ID> 引用素材库中已上传的素材,适用于真人认证场景。

使用 Base64 图片:

json
{
  "model": "doubao-seedance-2-0-260128",
  "content": [
    {"type": "image", "image_url": "data:image/jpeg;base64,/9j/4AAQSkZJRg...", "role": "first_frame"},
    {"type": "text", "text": "基于本地图片生成视频"}
  ],
  "resolution": "720p",
  "duration": 5
}

image_url 支持三种格式:

  • 公网 URL:https://example.com/photo.jpg
  • Base64 Data URL:data:image/jpeg;base64,...
  • 素材库素材:asset://Asset-xxx

快速版(更便宜更快):

json
{
  "model": "doubao-seedance-2-0-fast-260128",
  "content": [
    {"type": "text", "text": "海浪拍打沙滩,夕阳西下"}
  ],
  "resolution": "720p",
  "ratio": "16:9",
  "duration": 5
}

响应

json
{
  "id": "task_xxxxxxxxxxxxxxxx",
  "status": "processing",
  "model": "doubao-seedance-2-0-260128"
}

查询任务详情

GET /api/v1/seedance/videos/{taskId}
Authorization: Bearer sk-xxx

响应示例(生成成功):

json
{
  "id": "task_xxxxxxxxxxxxxxxx",
  "status": "succeeded",
  "video_url": "https://...",
  "model": "doubao-seedance-2-0-260128",
  "duration": 5,
  "resolution": "1080p",
  "ratio": "16:9",
  "generate_audio": true,
  "framespersecond": 24,
  "usage": {
    "total_tokens": 108900,
    "completion_tokens": 108900
  }
}

响应字段说明:

字段类型说明
idstring任务 ID
statusstring任务状态:processing / succeeded / failed
video_urlstring生成成功的视频 URL(仅 succeeded 时返回)
modelstring使用的模型 ID
durationinteger视频时长(秒)
resolutionstring输出分辨率
ratiostring画面比例
generate_audioboolean是否生成音频
framespersecondinteger帧率(fps)
usage.total_tokensinteger总 token 用量(用于计费)
usage.completion_tokensinteger输出 token 用量

状态说明:

status含义说明
processing生成中视频正在生成
succeeded已完成生成成功,返回 video_url
failed失败生成失败,系统自动退款

💡 建议轮询间隔 5 秒,视频生成通常需要 30 秒 ~ 2 分钟。

查询任务列表

GET /api/v1/seedance/videos?page_num=1&page_size=10
Authorization: Bearer sk-xxx
参数类型说明
page_numinteger页码,默认 1
page_sizeinteger每页条数,默认 10
filter.statusstring按状态过滤:processing / succeeded / failed
filter.task_idsstring按任务 ID 过滤(逗号分隔)
filter.modelstring按模型 ID 过滤

取消/删除任务

DELETE /api/v1/seedance/videos/{taskId}
Authorization: Bearer sk-xxx

Seedance 模型定价

doubao-seedance-2-0-260128(元 / 百万 tokens):

输出分辨率输入不含视频输入包含视频
480p / 720p46.0028.00
1080p51.0031.00
4k26.0016.00

doubao-seedance-2-0-fast-260128(元 / 百万 tokens,不支持 1080p 输出):

输出分辨率输入不含视频输入包含视频
480p / 720p37.0022.00

素材库使用指南

第一步:获取你的素材组

每个租户有独立的素材组,用于素材隔离。首次使用时自动创建:

GET /api/v1/seedance/asset-group?groupName=我的素材组
Authorization: Bearer sk-xxx

响应:

json
{
  "groupId": "group-20260728202548-whszz",
  "groupType": "AIGC",
  "tenantId": "t_27d5923be2f648f2"
}

后续所有素材操作(CreateAsset、ListAssets 等)都需要带上这个 groupId

第二步:添加素材

用返回的 groupId 调用素材 Action 接口:

bash
curl -X POST "https://limapi.com/api/v1/seedance/action?Action=CreateAsset&Version=2024-01-01" \
  -H "Authorization: Bearer sk-xxx" \
  -H "Content-Type: application/json" \
  -d '{
    "GroupId": "group-20260728192225-j62l2",
    "Name": "素材名称",
    "URL": "https://example.com/photo.png",
    "AssetType": "Image"
  }'

第三步:在视频生成中使用素材

json
{
  "content": [
    {"type": "image", "image_url": "asset://asset-xxx", "role": "first_frame"}
  ]
}

素材与真人认证 Action

POST /api/v1/seedance/action?Action={ActionName}&Version=2024-01-01
Authorization: Bearer sk-xxx
Content-Type: application/json

素材管理与真人认证统一入口,请求体透传火山引擎格式,ActionVersion 通过 Query 参数传入。

如果之前直接对接火山引擎素材库使用的是 AK/SK 认证,切换为本平台后改为 Bearer Token(API Key)认证即可,其余请求/响应格式完全一致。

支持的 Action 列表

Action用途
CreateVisualValidateSession创建真人认证 H5 会话
GetVisualValidateResult查询真人认证结果(返回素材组 ID)
CreateAssetGroup创建 AIGC 素材组(GroupType=AIGC)
ListAssetGroups分页查询素材组列表
GetAssetGroup查询素材组详情
UpdateAssetGroup更新素材组名称或描述
DeleteAssetGroup删除素材组
ListAssets分页查询素材资产列表
GetAsset查询素材资产详情
CreateAsset创建素材资产
UpdateAsset更新素材资产名称
DeleteAsset删除素材资产

素材组有两种类型:

  • AIGC:可通过 CreateAssetGroup 手动创建,适合 AI 生成内容管理
  • LivenessFace:只能通过真人认证流程自动创建(CreateVisualValidateSession → 用户刷脸 → GetVisualValidateResult

素材组相关示例

创建 AIGC 素材组:

bash
curl -X POST "https://limapi.com/api/v1/seedance/action?Action=CreateAssetGroup&Version=2024-01-01" \
  -H "Authorization: Bearer sk-xxx" \
  -H "Content-Type: application/json" \
  -d '{
    "Name": "我的素材组",
    "GroupType": "AIGC",
    "Description": "用于存储 AI 生成的素材"
  }'

响应示例:

json
{
  "ResponseMetadata": { "RequestId": "...", "Action": "CreateAssetGroup" },
  "Result": { "Id": "group-20260728185007-jvsmf" }
}

GroupType 只能传 AIGC(大小写敏感)。LivenessFace 类型只能通过真人认证流程自动创建。

创建素材资产:

bash
curl -X POST "https://limapi.com/api/v1/seedance/action?Action=CreateAsset&Version=2024-01-01" \
  -H "Authorization: Bearer sk-xxx" \
  -H "Content-Type: application/json" \
  -d '{
    "GroupId": "Group-xxx",
    "ProjectName": "default",
    "Name": "素材名称",
    "URL": "https://example.com/photo.png",
    "AssetType": "Image"
  }'
字段必填说明
GroupId素材组 ID
ProjectName项目名,默认 default
Name素材名称,最长 64 个字符
URL素材文件地址,最长 2048 个字符
AssetType素材类型:ImageVideoAudio

真人认证相关示例

创建真人认证会话:

bash
curl -X POST "https://limapi.com/api/v1/seedance/action?Action=CreateVisualValidateSession&Version=2024-01-01" \
  -H "Authorization: Bearer sk-xxx" \
  -H "Content-Type: application/json" \
  -d '{ "CallbackURL": "https://your-app.com/callback" }'

响应示例:

json
{
  "BytedToken": "20260728170546A7445B672FC2CC3615A7",
  "H5Link": "https://ark.volcengine.com/region:cn-beijing/mobile/livenees-face-manage/authorization?...",
  "CallbackURL": "https://your-app.com/callback"
}
  • H5Link:前端打开该 URL,让用户完成人脸认证
  • BytedToken:用于查询认证结果

查询认证结果:

bash
curl -X POST "https://limapi.com/api/v1/seedance/action?Action=GetVisualValidateResult&Version=2024-01-01" \
  -H "Authorization: Bearer sk-xxx" \
  -H "Content-Type: application/json" \
  -d '{ "BytedToken": "20260728170546A7445B672FC2CC3615A7" }'

认证成功后的响应中会包含真人素材组 ID,后续可用 GetAssetGroupListAssetGroupsCreateAsset 等接口管理素材。

错误响应格式

素材 Action 的错误响应使用火山风格结构:

json
{
  "ResponseMetadata": {
    "RequestId": "D8D4...",
    "Action": "GetAsset",
    "Version": "2024-01-01",
    "Service": "ark",
    "Region": "cn-beijing",
    "Error": {
      "Code": "InvalidParameter.AssetID",
      "Message": "The parameter AssetID is invalid."
    }
  },
  "Result": null
}

Python 完整示例

python
import requests, time

API_KEY = "sk-xxx"
BASE_URL = "https://limapi.com/api/v1/seedance"
HEADERS = {
    "Authorization": f"Bearer {API_KEY}",
    "Content-Type": "application/json"
}

# 1. 创建视频任务
resp = requests.post(f"{BASE_URL}/videos", headers=HEADERS, json={
    "model": "doubao-seedance-2-0-260128",
    "content": [{"type": "text", "text": "一只猫在花园里追蝴蝶,阳光明媚"}],
    "resolution": "1080p",
    "ratio": "16:9",
    "duration": 5
})
task = resp.json()
task_id = task["id"]
print(f"任务已创建: {task_id}")

# 2. 轮询任务状态
while True:
    result = requests.get(f"{BASE_URL}/videos/{task_id}", headers=HEADERS).json()
    status = result.get("status")
    if status == "succeeded":
        print(f"视频已生成: {result.get('video_url')}")
        break
    elif status == "failed":
        print("任务失败,已自动退款")
        break
    print(f"状态: {status},等待中...")
    time.sleep(5)

LimAPI — 大模型聚合网关