Seedance 原生 Endpoint 格式与火山方舟 Seedance 视频生成 API 直接兼容。与 OpenAI 兼容格式(/v1/videos)不同,该格式使用带有类型化多模态条目的 content 数组,可对参考素材、音频、样片任务和生参数进行更精细的控制。
支持的模型
| 模型 | 分辨率 | 说明 |
|---|
doubao-seedance-2 | 480p、720p、1080p | 全功能支持 |
doubao-seedance-2-fast | 480p、720p | 生成速度更快,分辨率上限较低 |
创建任务
POST /api/v3/contents/generations/tasks
请求头
| Header | 必填 | 示例 |
|---|
Content-Type | 是 | application/json |
Authorization | 是 | Bearer <YOUR_API_KEY> |
请求参数
| 参数 | 类型 | 必填 | 说明 |
|---|
model | string | 是 | 模型名称:doubao-seedance-2 或 doubao-seedance-2-fast |
content | object[] | 是 | 多模态输入数组。详见 content 参数 |
duration | number | 条件必填 | 视频时长(秒),范围 5–15。按秒计费模型必传 |
frames | number | 条件必填 | 总帧数。与 duration 二选一 |
resolution | string | 否 | 480p、720p、1080p(2-fast 仅支持 480p/720p) |
ratio | string | 否 | 16:9、9:16、1:1 |
seed | number | 否 | 随机种子。-1 表示随机。默认:-1 |
generate_audio | boolean | 否 | 是否生成同步音频。默认:false |
watermark | boolean | 否 | 是否添加 AI 生成水印。默认:false |
return_last_frame | boolean | 否 | 查询结果时是否返回尾帧图像 URL。默认:false |
service_tier | string | 否 | 服务等级。默认:default |
execution_expires_after | number | 否 | 任务超时时间(秒) |
tools | object[] | 否 | 工具列表。目前支持 web_search 联网搜索工具。详见 tools 参数 |
content 参数
content 中每个条目必须包含 type 及对应的数据字段:
| 类型 | 必填字段 | 说明 |
|---|
text | text | 描述所需视频的文本提示词 |
image_url | image_url.url | 图片 URL、Base64 数据 URI 或素材 ID(asset://<ASSET_ID>) |
video_url | video_url.url | 视频 URL 或素材 ID(asset://<ASSET_ID>) |
audio_url | audio_url.url | 音频 URL、Base64 数据 URI 或素材 ID(asset://<ASSET_ID>) |
draft_task | draft_task.id | 基于样片任务生成正式视频 |
支持的素材组合:
- 文本
- 文本(可选)+ 图片
- 文本(可选)+ 视频
- 文本(可选)+ 图片 + 音频
- 文本(可选)+ 图片 + 视频
- 文本(可选)+ 视频 + 音频
- 文本(可选)+ 图片 + 视频 + 音频
role 取值
| 类型 | role | 说明 |
|---|
image_url | first_frame | 图生视频首帧。单张图片不指定 role 时也视为首帧 |
image_url | last_frame | 图生视频尾帧。需同时提供 first_frame |
image_url | reference_image | 多模态参考图(Seedance 2.0 支持 1–9 张) |
video_url | reference_video | 多模态参考视频(最多 3 个,总时长 ≤ 15s) |
audio_url | reference_audio | 多模态参考音频(最多 3 段,总时长 ≤ 15s) |
tools 用于指定视频生成时可用的工具,目前仅支持 web_search 联网搜索工具。
web_search 工具
| 属性 | 类型 | 说明 |
|---|
tools[].type | string | 固定值 web_search,表示启用联网搜索工具 |
开启联网搜索后,模型会根据用户的提示词自主判断是否搜索互联网内容(如商品、天气等)。可提升生成视频的时效性,但也会增加一定的时延。
实际搜索次数可通过查询任务结果API 返回的 usage.tool_usage.web_search 字段获取,如果为 0 表示未触发搜索。
联网搜索示例
curl --location --request POST 'https://api.wisgate.ai/api/v3/contents/generations/tasks' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer <YOUR_API_KEY>' \
--data-raw '{
"model": "doubao-seedance-2",
"content": [
{
"type": "text",
"text": "生成一个2026年最新款iPhone的开箱短视频。"
}
],
"resolution": "720p",
"ratio": "16:9",
"duration": 5,
"tools": [
{
"type": "web_search"
}
]
}'
图生视频首帧、首尾帧生视频、多模态参考生视频为互斥场景,不要在同一次请求中混用这些模式。
文生视频
curl --location --request POST 'https://api.wisgate.ai/api/v3/contents/generations/tasks' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer <YOUR_API_KEY>' \
--data-raw '{
"model": "doubao-seedance-2",
"content": [
{
"type": "text",
"text": "一只小猫在清晨阳光里伸懒腰,镜头缓慢推进,画面温暖自然。"
}
],
"resolution": "720p",
"ratio": "16:9",
"duration": 5,
"seed": -1,
"generate_audio": true,
"watermark": false
}'
参考素材生视频
curl --location --request POST 'https://api.wisgate.ai/api/v3/contents/generations/tasks' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer <YOUR_API_KEY>' \
--data-raw '{
"model": "doubao-seedance-2",
"content": [
{
"type": "text",
"text": "全程使用视频1的第一视角构图,全程使用音频1作为背景音乐。第一人称视角果茶宣传广告。"
},
{
"type": "image_url",
"image_url": { "url": "https://example.com/reference.jpg" },
"role": "reference_image"
},
{
"type": "video_url",
"video_url": { "url": "https://example.com/reference.mp4" },
"role": "reference_video"
},
{
"type": "audio_url",
"audio_url": { "url": "https://example.com/reference.mp3" },
"role": "reference_audio"
}
],
"resolution": "720p",
"ratio": "16:9",
"duration": 5,
"generate_audio": true,
"return_last_frame": true
}'
首尾帧生视频
{
"model": "doubao-seedance-2",
"content": [
{
"type": "text",
"text": "让画面从首帧自然过渡到尾帧,镜头保持平稳推进。"
},
{
"type": "image_url",
"image_url": { "url": "https://example.com/first-frame.png" },
"role": "first_frame"
},
{
"type": "image_url",
"image_url": { "url": "https://example.com/last-frame.png" },
"role": "last_frame"
}
],
"resolution": "720p",
"ratio": "16:9",
"duration": 5
}
创建响应
{
"id": "cgt-20260518175249-8x55h"
}
查询任务
GET /api/v3/contents/generations/tasks/{id}
路径参数
| 参数 | 类型 | 必填 | 说明 |
|---|
id | string | 是 | 创建任务接口返回的任务 ID |
请求头
| Header | 必填 | 示例 |
|---|
Authorization | 是 | Bearer <YOUR_API_KEY> |
查询示例
curl --location --request GET 'https://api.wisgate.ai/api/v3/contents/generations/tasks/cgt-20260518175249-8x55h' \
--header 'Authorization: Bearer <YOUR_API_KEY>'
成功响应
{
"id": "cgt-20260518175249-8x55h",
"model": "doubao-seedance-2-0-260128",
"status": "succeeded",
"error": null,
"created_at": 1778756838,
"updated_at": 1778757081,
"content": {
"video_url": "https://example.com/generated-video.mp4?signature=<SIGNED_URL_PARAMS>",
"last_frame_url": "https://example.com/last-frame.png?signature=<SIGNED_URL_PARAMS>"
},
"seed": 29545,
"resolution": "720p",
"ratio": "16:9",
"duration": 5,
"framespersecond": 24,
"generate_audio": true,
"service_tier": "default",
"execution_expires_after": 172800,
"usage": {
"completion_tokens": 173700,
"total_tokens": 173700,
"tool_usage": {
"web_search": 2
}
}
}
响应字段
| 字段 | 类型 | 说明 |
|---|
id | string | 任务 ID |
model | string | 上游实际使用的模型 |
status | string | 任务状态:queued、running、succeeded、failed、expired、cancelled |
error | object / null | 失败时的错误信息 |
created_at | number | 创建时间戳(Unix 秒) |
updated_at | number | 最后更新时间戳(Unix 秒) |
content.video_url | string | 生成视频 URL(带签名的临时链接,请及时下载) |
content.last_frame_url | string | 尾帧图像 URL(仅当 return_last_frame 为 true 时返回) |
seed | number | 生成使用的随机种子 |
resolution | string | 视频分辨率 |
ratio | string | 视频宽高比 |
duration | number | 视频时长(秒) |
frames | number | 总帧数(按帧计费模型) |
framespersecond | number | 帧率(FPS) |
generate_audio | boolean | 是否生成了同步音频 |
service_tier | string | 服务等级 |
execution_expires_after | number | 结果保留时长(秒) |
usage.completion_tokens | number | 生成消耗的 token 数 |
usage.total_tokens | number | 总 token 消耗 |
usage.tool_usage | object | 工具使用统计。仅当创建任务时设置了 tools 且触发工具调用时返回 |
usage.tool_usage.web_search | number | 联网搜索次数。为 0 表示未触发搜索 |
完整工作流
import requests
import time
BASE_URL = "https://api.wisgate.ai"
HEADERS = {
"Authorization": "Bearer <YOUR_API_KEY>",
"Content-Type": "application/json"
}
# 第一步:创建任务
response = requests.post(
f"{BASE_URL}/api/v3/contents/generations/tasks",
headers=HEADERS,
json={
"model": "doubao-seedance-2",
"content": [{"type": "text", "text": "一只猫在阳光明媚的街道上走"}],
"resolution": "720p",
"ratio": "16:9",
"duration": 5
}
)
task_id = response.json()["id"]
print(f"任务已创建: {task_id}")
# 第二步:轮询状态并下载
while True:
result = requests.get(
f"{BASE_URL}/api/v3/contents/generations/tasks/{task_id}",
headers={"Authorization": HEADERS["Authorization"]}
).json()
status = result["status"]
print(f"状态: {status}")
if status == "succeeded":
video_url = result["content"]["video_url"]
video = requests.get(video_url, stream=True)
with open("generated_video.mp4", "wb") as f:
for chunk in video.iter_content(chunk_size=8192):
f.write(chunk)
print("视频下载成功!")
break
elif status in ("failed", "expired", "cancelled"):
print(f"任务结束: {status},错误: {result.get('error')}")
break
time.sleep(10)
参数限制
| 参数 | 支持值 |
|---|
duration | 5 到 15 秒 |
ratio | 16:9、9:16、1:1 |
resolution | 480p、720p、1080p |
content.image_url.url | 公网 URL、data:image/<format>;base64,<BASE64> 或 asset://<ASSET_ID> |
content.video_url.url | 公网 URL 或 asset://<ASSET_ID> |
content.audio_url.url | 公网 URL、data:audio/<format>;base64,<BASE64> 或 asset://<ASSET_ID> |
注意事项
API Key 安全
不要在代码、文档、日志或截图中暴露真实 API Key。请使用环境变量或占位符替代。
人像内容政策
Seedance 2.0 系列模型不支持直接上传含有真人人脸的参考图或参考视频。如需肖像素材,请使用平台支持的合规素材、虚拟人像或已授权素材。
及时下载
content.video_url 通常是带有效期的签名链接,请在过期前下载或转存。可通过 execution_expires_after 字段查看保留时长。
轮询间隔
如果任务尚未完成,请间隔数秒重复查询任务接口。避免过于频繁的轮询以防止触发频率限制。
/v1/videos 与 /api/v3/contents/generations/tasks 的请求体格式不同,不要混用 prompt/size 与 content/ratio/resolution 字段。
- 大文件建议使用公网 URL 或素材 ID,避免使用 Base64 编码导致请求体过大。
- 如果 API Key 已暴露或泄露,请立即轮换或作废该 Key。
素材资产库(Assets)
素材资产库用于把图片、视频、音频预先入库为可信素材。入库完成且素材状态为 Active 后,可在创建视频任务时通过 asset://<ASSET_ID> 引用素材。
WisdomGate 对接火山/豆包 Assets API,同时做用户隔离:
ListAssetGroups / ListAssets 由 WisdomGate 本地数据库返回,只能看到当前 API Key 所属用户的数据。
CreateAssetGroup / CreateAsset / GetAssetGroup / GetAsset / UpdateAssetGroup / UpdateAsset / DeleteAsset 会调用上游官方接口,并同步本地数据库。
CreateVisualValidateSession / GetVisualValidateResult 用于真人人像素材真人认证及获取 GroupId,仅支持启用 Assets SDK 鉴权的火山/豆包渠道,其他渠道暂不支持。
Assets 接口支持两种入口:
POST /api/v3/open/{Action}
POST /api/v3/assets?Action={Action}&Version=2024-01-01(火山官方 Query Action 格式)
两种入口复用同一套行为控制和本地同步逻辑,响应不包含 ResponseMetadata / Result 外层包装。
火山官方格式示例:
POST /api/v3/assets?Action=GetAssetGroup&Version=2024-01-01
创建资产组
POST /api/v3/open/CreateAssetGroup
| 参数 | 类型 | 必填 | 说明 |
|---|
Name | string | 是 | 资产组名称,最多 64 字符 |
Description | string | 否 | 资产组描述,最多 300 字符 |
GroupType | string | 是 | 资产组类型,当前使用 AIGC |
ProjectName | string | 否 | 项目名称,默认 default |
curl --location --request POST 'https://api.wisgate.ai/api/v3/open/CreateAssetGroup' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer <YOUR_API_KEY>' \
--data-raw '{
"Name": "WisGateDemo",
"Description": "WisGate Demo",
"GroupType": "AIGC"
}'
响应示例:
{
"Id": "group-20260520103710-f2hzc"
}
查询资产组列表
POST /api/v3/open/ListAssetGroups
| 参数 | 类型 | 必填 | 说明 |
|---|
Filter.Name | string | 否 | 按资产组名称模糊搜索 |
Filter.GroupIds | string[] | 否 | 按资产组 ID 过滤 |
Filter.GroupType | string | 是 | 资产组类型,当前使用 AIGC |
PageNumber | number | 否 | 页码,从 1 开始,默认 1 |
PageSize | number | 否 | 每页数量,最大 100,默认 20 |
SortBy | string | 否 | CreateTime 或 UpdateTime |
SortOrder | string | 否 | Desc 或 Asc |
curl --location --request POST 'https://api.wisgate.ai/api/v3/open/ListAssetGroups' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer <YOUR_API_KEY>' \
--data-raw '{
"Filter": {
"GroupType": "AIGC"
},
"PageNumber": 1,
"PageSize": 10,
"SortBy": "CreateTime",
"SortOrder": "Desc"
}'
响应示例:
{
"TotalCount": 1,
"Items": [
{
"Id": "group-20260520103710-f2hzc",
"Name": "WisGateDemo",
"Description": "WisGate Demo",
"GroupType": "AIGC",
"ProjectName": "default",
"CreateTime": "2026-05-20T02:37:10.544Z",
"UpdateTime": "2026-05-20T02:37:10.544Z"
}
],
"PageNumber": 1,
"PageSize": 10
}
查询资产组详情
POST /api/v3/open/GetAssetGroup
curl --location --request POST 'https://api.wisgate.ai/api/v3/open/GetAssetGroup' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer <YOUR_API_KEY>' \
--data-raw '{
"Id": "group-20260520103710-f2hzc"
}'
更新资产组
POST /api/v3/open/UpdateAssetGroup
当前仅支持更新 Name 和 Description。
curl --location --request POST 'https://api.wisgate.ai/api/v3/open/UpdateAssetGroup' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer <YOUR_API_KEY>' \
--data-raw '{
"Id": "group-20260520103710-f2hzc",
"Name": "WisGateDemo2",
"Description": "WisGate Demo 2"
}'
创建资产
POST /api/v3/open/CreateAsset
| 参数 | 类型 | 必填 | 说明 |
|---|
GroupId | string | 是 | 所属资产组 ID |
URL | string | 是 | 公开可访问的素材 URL,不支持 Base64 |
Name | string | 否 | 资产名称,最多 64 字符 |
AssetType | string | 是 | Image、Video 或 Audio |
ProjectName | string | 否 | 项目名称,默认 default |
curl --location --request POST 'https://api.wisgate.ai/api/v3/open/CreateAsset' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer <YOUR_API_KEY>' \
--data-raw '{
"GroupId": "group-20260520103710-f2hzc",
"URL": "https://example.com/reference.png",
"Name": "reference-image",
"AssetType": "Image"
}'
响应示例:
{
"Id": "asset-20260520105344-gk4kd"
}
创建资产后需要调用 GetAsset 轮询状态。只有 Status 为 Active 的资产才能用于视频生成。
查询资产列表
POST /api/v3/open/ListAssets
| 参数 | 类型 | 必填 | 说明 |
|---|
Filter.GroupIds | string[] | 否 | 按资产组 ID 过滤 |
Filter.GroupType | string | 是 | 资产组类型,当前使用 AIGC |
Filter.Statuses | string[] | 否 | Active、Processing、Failed |
Filter.Name | string | 否 | 按资产名称模糊搜索 |
PageNumber | number | 是 | 页码,从 1 开始 |
PageSize | number | 是 | 每页数量,最大 100 |
SortBy | string | 否 | CreateTime、UpdateTime 或 GroupId |
SortOrder | string | 否 | Desc 或 Asc |
curl --location --request POST 'https://api.wisgate.ai/api/v3/open/ListAssets' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer <YOUR_API_KEY>' \
--data-raw '{
"Filter": {
"GroupType": "AIGC",
"GroupIds": ["group-20260520103710-f2hzc"],
"Statuses": ["Active", "Processing"]
},
"PageNumber": 1,
"PageSize": 10
}'
响应示例:
{
"Items": [
{
"Id": "asset-20260520105344-gk4kd",
"Name": "reference-image",
"URL": "https://example.com/reference.png",
"GroupId": "group-20260520103710-f2hzc",
"AssetType": "Image",
"Status": "Active",
"ProjectName": "default",
"CreateTime": "2026-05-20T02:53:44.000Z",
"UpdateTime": "2026-05-20T02:54:10.000Z"
}
],
"TotalCount": 1,
"PageNumber": 1,
"PageSize": 10
}
查询资产详情
POST /api/v3/open/GetAsset
curl --location --request POST 'https://api.wisgate.ai/api/v3/open/GetAsset' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer <YOUR_API_KEY>' \
--data-raw '{
"Id": "asset-20260520105344-gk4kd"
}'
资产状态
| 状态 | 说明 |
|---|
Processing | 正在预处理,暂不可用于视频生成 |
Active | 已处理完成,可用于视频生成 |
Failed | 处理失败,不可用于视频生成 |
更新资产
POST /api/v3/open/UpdateAsset
当前仅支持更新 Name。
curl --location --request POST 'https://api.wisgate.ai/api/v3/open/UpdateAsset' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer <YOUR_API_KEY>' \
--data-raw '{
"Id": "asset-20260520105344-gk4kd",
"Name": "reference-image-v2"
}'
删除资产
POST /api/v3/open/DeleteAsset
curl --location --request POST 'https://api.wisgate.ai/api/v3/open/DeleteAsset' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer <YOUR_API_KEY>' \
--data-raw '{
"Id": "asset-20260520105344-gk4kd"
}'
成功删除后返回空对象:
在视频生成中使用资产
资产状态为 Active 后,可在创建视频任务时使用 asset://<ASSET_ID>:
{
"type": "image_url",
"image_url": {
"url": "asset://asset-20260520105344-gk4kd"
},
"role": "reference_image"
}
真人人像认证及获取 Group ID
真人人像素材组类型为 LivenessFace。调用 GetVisualValidateResult 成功返回 GroupId 后,WisdomGate 会继续调用上游 GetAssetGroup 获取完整素材组信息并入库。
拉起 H5 真人认证页
POST /api/v3/open/CreateVisualValidateSession
| 参数 | 类型 | 必填 | 说明 |
|---|
CallbackURL | string | 是 | 认证结束后跳转的公网可访问 URL |
ProjectName | string | 否 | 项目名称,默认 default |
curl --location --request POST 'https://api.wisgate.ai/api/v3/open/CreateVisualValidateSession' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer <YOUR_API_KEY>' \
--data-raw '{
"CallbackURL": "https://www.example.com/callback"
}'
响应包含 BytedToken、H5Link 和 CallbackURL。终端用户打开 H5Link 完成认证后,回调地址会拼接 resultCode;当 resultCode=10000 时再调用 GetVisualValidateResult。
响应示例:
{
"BytedToken": "20260609094027539BA348F9B7396F2839",
"CallbackURL": "http://localhost:3000/api/v3/callback",
"H5Link": "https://h5-v2.kych5.com?accessKeyId=AKTP0V8amxFATDZB4p2zHK4vkgDVsEIR8sNLJvKVQu1B2U&secretAccessKey=CCoKygvfps7Y3B7w2qNzdlXBxiuW6NwuGsw5VfERDDd&sessionToken=nChBNa0N4OURzamFsTGZrWVdo.CiQKEEFuM0M5UHh6TDF5cXQ5ZFESEMX9lEsZqkN5rYu521geDb4Qrdud0QYYs-Od0QYgvsLI8wcoBDC35IQvOiNSb2xlRm9yVmlzdWFsRmFjZS9Sb2xlRm9yVmlzdWFsRmFjZUIDYXJrUhFSb2xlRm9yVmlzdWFsRmFjZVgDegNhcms.dbToow9VioZIGuqqJp90s8_W76O45XwMHrjzskpfJSdKvudG1jQFFo9f3vi0DUmd2NUSEDEQEfLuTFTbCJZj7A&configId=ed90561e-9078-470f-ba83-b34460fa8283&bytedToken=20260609094027539BA348F9B7396F2839&lng=zh"
}
获取真人认证创建的 Group ID
POST /api/v3/open/GetVisualValidateResult
| 参数 | 类型 | 必填 | 说明 |
|---|
BytedToken | string | 是 | CreateVisualValidateSession 返回的认证凭证,有效期 120 秒 |
ProjectName | string | 否 | 项目名称,默认 default |
curl --location --request POST 'https://api.wisgate.ai/api/v3/open/GetVisualValidateResult' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer <YOUR_API_KEY>' \
--data-raw '{
"BytedToken": "202603311449168C23BA26**************"
}'
{
"GroupId": "group-20260331145705-*****"
}
使用火山 Go SDK 调用 Assets
如果调用方仍希望沿用火山官方 Go SDK 的 universal.DoCall 方式,需要同时设置 SDK endpoint 和 Authorization 请求头:
WithEndpoint 指向本平台 Assets SDK 入口:https://api.wisgate.ai/api/v3/assets
Authorization 请求头使用 Bearer <YOUR_API_KEY> 格式鉴权
- AK/SK 不参与本平台鉴权,但火山 SDK 要求 credentials 非空,可填写任意非空占位值
package main
import (
"context"
"fmt"
"net/http"
"github.com/bytedance/sonic"
"github.com/volcengine/volcengine-go-sdk/volcengine"
"github.com/volcengine/volcengine-go-sdk/volcengine/credentials"
"github.com/volcengine/volcengine-go-sdk/volcengine/session"
"github.com/volcengine/volcengine-go-sdk/volcengine/universal"
)
func main() {
platformApiKey := "<YOUR_API_KEY>"
config := volcengine.NewConfig().
WithCredentials(credentials.NewStaticCredentials("unused", "unused", "")).
WithRegion("cn-beijing").
WithEndpoint("https://api.wisgate.ai/api/v3/assets").
WithExtendHttpRequest(func(_ context.Context, req *http.Request) {
req.Header.Set("Authorization", "Bearer "+platformApiKey)
})
sess, err := session.NewSession(config)
if err != nil {
panic(err)
}
client := universal.New(sess)
resp, err := client.DoCall(
universal.RequestUniversal{
ServiceName: "ark",
Action: "GetAssetGroup",
Version: "2024-01-01",
HttpMethod: universal.POST,
ContentType: universal.ApplicationJSON,
},
&map[string]any{
"Id": "group-20260331145705-*****",
},
)
if err != nil {
panic(err)
}
respData, _ := sonic.Marshal(resp)
fmt.Println(string(respData))
}
上面 SDK 示例会请求:
POST /api/v3/assets?Action=GetAssetGroup&Version=2024-01-01
Authorization: Bearer <YOUR_API_KEY>
格式对比
| 功能 | OpenAI 兼容 (/v1/videos) | Seedance 原生 (/api/v3/...) |
|---|
| 内容输入 | prompt + images[] + videos[] | content[] 含类型化条目 |
| 音频参考 | 不支持 | audio_url 类型 |
| 样片任务 | 不支持 | draft_task 类型 |
| 分辨率格式 | 1280x720、1920x1080 | 720p、1080p、480p |
| 宽高比 | size 字段 | ratio 字段(16:9、9:16、1:1) |
| 水印控制 | 不支持 | watermark 布尔值 |
| 尾帧获取 | 不支持 | return_last_frame 布尔值 |
| 种子控制 | 不直接暴露 | seed 字段 |
简单的文生视频和基础图片/视频参考场景建议使用 OpenAI 兼容格式。需要音频参考、样片任务、水印控制或尾帧获取等进阶功能时,建议使用 Seedance 原生格式。