curl --request POST \
--url https://toapis.com/v1/videos/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "seedance-2-mini",
"client_business_id": "order_20260616_001",
"prompt": "保持圖片1中的人物形象,參考視頻1的運鏡和音頻1的節奏,生成一段室內產品口播短視頻。",
"duration": 10,
"aspect_ratio": "16:9",
"image_with_roles": [
{"url": "https://example.com/ref-image-1.jpg", "role": "reference_image"}
],
"video_with_roles": [
{"url": "https://example.com/ref-video-1.mp4", "role": "reference_video"}
],
"audio_with_roles": [
{"url": "https://example.com/ref-audio-1.mp3", "role": "reference_audio"}
],
"resolution": "480p"
}'
curl --request POST \
--url https://toapis.com/v1/videos/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "seedance-2",
"prompt": "鏡頭從窗邊花束慢慢推到餐桌中央,畫面色調溫暖柔和。",
"duration": 5,
"aspect_ratio": "16:9",
"image_with_roles": [
{"url": "https://example.com/first-frame.png", "role": "first_frame"},
{"url": "https://example.com/last-frame.png", "role": "last_frame"}
],
"resolution": "720p",
"generate_audio": false
}'
curl --request POST \
--url https://toapis.com/v1/videos/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "seedance-2",
"prompt": "微距鏡頭拍攝一隻玻璃蛙停在葉片上,鏡頭緩慢切到透明腹部與跳動心臟,紀錄片風格。",
"duration": 11,
"aspect_ratio": "16:9",
"resolution": "720p",
"generate_audio": true
}'
curl --request POST \
--url https://toapis.com/v1/videos/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "seedance-2-fast",
"prompt": "一隻柴犬在雨後的霓虹街頭奔跑,地面倒映彩色燈光。",
"duration": 5,
"aspect_ratio": "16:9",
"resolution": "720p"
}'
import requests
response = requests.post(
"https://toapis.com/v1/videos/generations",
headers={
"Authorization": "Bearer your-ToAPIs-key",
"Content-Type": "application/json",
},
json={
"model": "seedance-2-mini",
"prompt": "保持人物形象一致,參考圖片和視頻的節奏,生成一段簡短室內廣告視頻",
"duration": 8,
"aspect_ratio": "16:9",
"resolution": "720p",
"image_with_roles": [
{"url": "https://example.com/ref.png", "role": "reference_image"}
],
"video_with_roles": [
{"url": "https://example.com/ref.mp4", "role": "reference_video"}
],
},
)
print(response.json())
{
"id": "tsk_vid_xxx",
"client_business_id": "order_20260616_001",
"object": "generation.task",
"model": "seedance-2-mini",
"status": "in_progress",
"progress": 10,
"created_at": 1781577600
}
seedance-2
seedance-2 視頻生成
使用 seedance-2、seedance-2-fast 與 seedance-2-mini 模型生成視頻
POST
/
v1
/
videos
/
generations
curl --request POST \
--url https://toapis.com/v1/videos/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "seedance-2-mini",
"client_business_id": "order_20260616_001",
"prompt": "保持圖片1中的人物形象,參考視頻1的運鏡和音頻1的節奏,生成一段室內產品口播短視頻。",
"duration": 10,
"aspect_ratio": "16:9",
"image_with_roles": [
{"url": "https://example.com/ref-image-1.jpg", "role": "reference_image"}
],
"video_with_roles": [
{"url": "https://example.com/ref-video-1.mp4", "role": "reference_video"}
],
"audio_with_roles": [
{"url": "https://example.com/ref-audio-1.mp3", "role": "reference_audio"}
],
"resolution": "480p"
}'
curl --request POST \
--url https://toapis.com/v1/videos/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "seedance-2",
"prompt": "鏡頭從窗邊花束慢慢推到餐桌中央,畫面色調溫暖柔和。",
"duration": 5,
"aspect_ratio": "16:9",
"image_with_roles": [
{"url": "https://example.com/first-frame.png", "role": "first_frame"},
{"url": "https://example.com/last-frame.png", "role": "last_frame"}
],
"resolution": "720p",
"generate_audio": false
}'
curl --request POST \
--url https://toapis.com/v1/videos/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "seedance-2",
"prompt": "微距鏡頭拍攝一隻玻璃蛙停在葉片上,鏡頭緩慢切到透明腹部與跳動心臟,紀錄片風格。",
"duration": 11,
"aspect_ratio": "16:9",
"resolution": "720p",
"generate_audio": true
}'
curl --request POST \
--url https://toapis.com/v1/videos/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "seedance-2-fast",
"prompt": "一隻柴犬在雨後的霓虹街頭奔跑,地面倒映彩色燈光。",
"duration": 5,
"aspect_ratio": "16:9",
"resolution": "720p"
}'
import requests
response = requests.post(
"https://toapis.com/v1/videos/generations",
headers={
"Authorization": "Bearer your-ToAPIs-key",
"Content-Type": "application/json",
},
json={
"model": "seedance-2-mini",
"prompt": "保持人物形象一致,參考圖片和視頻的節奏,生成一段簡短室內廣告視頻",
"duration": 8,
"aspect_ratio": "16:9",
"resolution": "720p",
"image_with_roles": [
{"url": "https://example.com/ref.png", "role": "reference_image"}
],
"video_with_roles": [
{"url": "https://example.com/ref.mp4", "role": "reference_video"}
],
},
)
print(response.json())
{
"id": "tsk_vid_xxx",
"client_business_id": "order_20260616_001",
"object": "generation.task",
"model": "seedance-2-mini",
"status": "in_progress",
"progress": 10,
"created_at": 1781577600
}
中國大陸用戶請注意: 中國大陸用戶請使用
https://toapis.cn 作為接口地址(Base URL)。文檔示例中的 https://toapis.com 請替換為 https://toapis.cn。- 支持
seedance-2、seedance-2-fast與seedance-2-mini - 支持文生視頻、首幀/首尾幀圖生視頻與多模態參考生視頻;
seedance-2-mini的首尾幀與音頻開關能力也已開放 - 支持參考圖、參考視頻、參考音頻聯合控制;
seedance-2-mini最多支持9張圖、3條視頻、3條音頻 - 異步任務管理,提交後返回
generation.task,完成結果通過任務查詢接口獲取
Authorizations
string
必填
所有接口均需要使用 Bearer Token 進行認證獲取 API Key:訪問 API Key 管理頁面 獲取您的 API Key使用時在請求頭中添加:
Authorization: Bearer YOUR_API_KEY
Body
string
預設值:"seedance-2"
必填
視頻生成模型名稱可用模型:
seedance-2- 標準版,適合更高質量輸出與更完整的 Seedance 2 能力seedance-2-fast- 快速版,適合預覽、迭代和更低延遲場景seedance-2-mini- 輕量版,適合低成本草稿和多模態參考工作流,當前固定單次生成1個結果
string
視頻內容描述支持中英文輸入。建議明確描述場景、鏡頭運動、主體動作、風格和聲音氛圍。建議:
- 中文儘量控制在
500字以內 - 英文儘量控制在
1000詞以內 - 需要引用參考素材時,使用“圖片1 / 視頻1 / 音頻1”的方式指代
string
客戶側業務 ID,例如訂單號、流水號或您系統內的任務 ID。提交後會隨任務保存,後續可用該 ID 查詢狀態:
GET /v1/videos/generations/{client_business_id}。也兼容放在 metadata.client_business_id 中,但推薦使用頂層字段。boolean
預設值:false
選填, 預設
false, 僅適用於帶有媒體輸入的請求. 設為 true 後依正常規則選擇渠道: 支援素材庫的渠道自動準備並審核素材, 本輪需審核的素材全部通過後才提交生成; 其他渠道略過私有素材提審, 沿用原有媒體處理方式. HTTP 先返回影片任務. 提審圖片支援 URL 與 Base64, 影片和音訊使用 HTTP(S); 各模型原有格式限制不變. 新模式遇到 asset:// 返回 HTTP 400. 省略或設為 false 維持原有行為.完整範例, 輸入優先順序與重用規則見按需素材審核.integer
預設值:0
視頻時長(秒)取值規則:
seedance-2:4-15seedance-2-fast:4-15seedance-2-mini:4-150:自動時長(僅seedance-2/seedance-2-fast)-1:自動時長(僅seedance-2/seedance-2-fast)
string
視頻寬高比可選項:
21:916:94:31:13:49:16adaptive
aspect_ratio 作爲對外字段。adaptive 表示由上游根據輸入素材自動選擇合適比例。string[]
兼容模式下的圖片 URL 數組推薦優先使用
image_with_roles,這樣可以顯式聲明 first_frame、last_frame 或 reference_image。兼容規則:- 傳 1 張圖時,通常按首幀圖處理
- 傳多張圖時,角色推斷會帶來歧義,不建議用於新接入
image_urls不應與image_with_roles同時使用。- 新接入建議使用
image_with_roles顯式聲明圖片用途,避免兼容推斷帶來的歧義。
array
帶角色的圖片數組支持場景:
seedance-2/seedance-2-fast/seedance-2-mini- 首幀圖生視頻:
first_frame1 張 - 首尾幀圖生視頻:
first_frame1 張 +last_frame1 張 - 多模態參考生視頻:
reference_image1-9 張
- 首幀圖生視頻:
顯示 字段說明
顯示 字段說明
first_frame最多 1 張last_frame最多 1 張reference_image最多9張- 首幀/首尾幀模式不能與參考模式混用
seedance-2-mini同樣支持first_frame、last_frame與reference_image
array
array
string
預設值:"720p"
視頻分辨率可選項:
seedance-2:480p、720p、1080p、4kseedance-2-fast:480p、720pseedance-2-mini:480p、720p
boolean
預設值:true
是否生成同步音頻
true:生成帶音頻的視頻false:生成無聲視頻
seedance-2-mini 同樣支持該字段。boolean
預設值:false
是否返回生成視頻的尾幀圖像。設為
true 後,任務完成時可從狀態查詢響應的 result.data[0].last_frame_url 獲取尾幀圖像 URL。array
配置模型可調用的工具。目前 Seedance 2 系列僅支持聯網搜索:啓用後,模型會根據提示詞自主判斷是否搜索互聯網內容。實際搜索次數通過狀態查詢響應的
[{ "type": "web_search" }]
usage.tool_usage.web_search 獲取,值爲 0 表示未執行搜索。tools 僅支持純文本生成視頻請求,不能與圖片、視頻或音頻輸入同時使用。integer
隨機種子,用於控制生成隨機性
string
調用方自定義透傳 ID調用方追蹤欄位,與 Webhook 是否啟用無關。
使用已入庫素材
如果你已經通過私域素材接口完成了素材入庫,並拿到了可用的asset_id,那麼在視頻生成接口中,你不需要再傳原始素材 URL,而是直接使用:
asset://<ASSET_ID>
- 虛擬人像素材
- 真人人像素材
- 已經處理完成並處於
active狀態的圖片、視頻、音頻素材
- 先在素材接口中創建素材組或完成真人認證
- 上傳素材並拿到
asset_id - 輪詢素材狀態,確認已經變爲
active - 在視頻生成請求中把素材地址寫成
asset://<ASSET_ID>
在生成請求中的寫法
圖片素材可用於:first_framelast_framereference_image
reference_video
reference_audio
{
"model": "seedance-2-mini",
"prompt": "讓圖片1中的人物站在落地窗前緩慢轉身,鏡頭輕微推進,保持人物服裝和麪部特徵一致",
"image_with_roles": [
{
"url": "asset://asset_img_01KXXXXXXX",
"role": "reference_image"
}
]
}
{
"model": "seedance-2-mini",
"prompt": "保持圖片1中的人物形象,參考視頻1的鏡頭運動和音頻1的節奏氛圍,生成一段室內口播視頻",
"image_with_roles": [
{
"url": "asset://asset_img_01KXXXXXXX",
"role": "reference_image"
}
],
"video_with_roles": [
{
"url": "asset://asset_vid_01KXXXXXXX",
"role": "reference_video"
}
],
"audio_with_roles": [
{
"url": "asset://asset_aud_01KXXXXXXX",
"role": "reference_audio"
}
]
}
只有狀態爲
active 的素材才能用於視頻生成。如果你傳入了 asset://<ASSET_ID> 但素材仍在 processing 或已經 failed,生成請求會失敗或無法達到預期效果。輸入組合規則
支持的典型輸入組合:- 純文本:文生視頻
- 文本 + 1 張首幀圖:首幀圖生視頻
- 文本 + 首幀圖 + 尾幀圖:首尾幀圖生視頻
- 文本 + 參考圖:多模態參考生視頻
- 文本 + 參考視頻:視頻參考生視頻
- 文本 + 參考圖 + 參考音頻:多模態參考生視頻
- 文本 + 參考圖 + 參考視頻 + 參考音頻:多模態參考生視頻
三種模式互斥:
- 首幀圖生視頻
- 首尾幀圖生視頻
- 多模態參考生視頻
seedance-2-mini 也支持首幀 / 首尾幀模式;需要首尾幀控制時請使用 image_with_roles 顯式傳入 first_frame / last_frame。能力與約束
| 項目 | seedance-2 | seedance-2-fast | seedance-2-mini |
|---|---|---|---|
| 主要定位 | 更高質量與更長時長 | 更快生成與更低延遲 | 低成本草稿與多模態參考 |
| 時長 | 4-15 秒,支持自動時長 | 4-15 秒,支持自動時長 | 4-15 秒 |
| 分辨率 | 480p / 720p / 1080p / 4k | 480p / 720p | 480p / 720p |
| 圖片角色 | first_frame / last_frame / reference_image | first_frame / last_frame / reference_image | first_frame / last_frame / reference_image |
| 視頻角色 | reference_video | reference_video | reference_video |
| 音頻角色 | reference_audio | reference_audio | reference_audio |
| 首尾幀模式 | 支持 | 支持 | 支持 |
| 參考圖上限 | 9 | 9 | 9 |
| 參考視頻上限 | 以實際通道能力爲準 | 以實際通道能力爲準 | 3 |
| 參考音頻上限 | 以實際通道能力爲準 | 以實際通道能力爲準 | 3 |
| 同步音頻 | generate_audio | generate_audio | generate_audio |
| ToAPIs 回調 | callback_url(trace_id 可選追蹤) | callback_url(trace_id 可選追蹤) | callback_url(trace_id 可選追蹤) |
seedance-2-mini 當前固定單次生成 1 個結果,不暴露 count / n。首尾幀控制請通過 image_with_roles 的 first_frame / last_frame 表達。Response
string
任務 ID,用於查詢任務狀態。
string
客戶側業務 ID。僅當請求中傳入
client_business_id 時返回。string
對象類型,固定爲
generation.task。string
本次請求使用的模型名稱。
string
任務狀態:
queued、in_progress、completed 或 failed。integer
任務進度百分比(
0-100)。integer
任務創建時間戳。
提交接口返回的是基礎任務對象;當任務完成後,請使用 獲取視頻任務狀態 獲取
completed_at、expires_at 以及 result.type = "video" / result.data[].url / result.data[].format。啓用 return_last_frame 時,尾幀 URL 位於 result.data[0].last_frame_url;啓用 web_search 時,搜索次數位於 usage.tool_usage.web_search。curl --request POST \
--url https://toapis.com/v1/videos/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "seedance-2-mini",
"client_business_id": "order_20260616_001",
"prompt": "保持圖片1中的人物形象,參考視頻1的運鏡和音頻1的節奏,生成一段室內產品口播短視頻。",
"duration": 10,
"aspect_ratio": "16:9",
"image_with_roles": [
{"url": "https://example.com/ref-image-1.jpg", "role": "reference_image"}
],
"video_with_roles": [
{"url": "https://example.com/ref-video-1.mp4", "role": "reference_video"}
],
"audio_with_roles": [
{"url": "https://example.com/ref-audio-1.mp3", "role": "reference_audio"}
],
"resolution": "480p"
}'
curl --request POST \
--url https://toapis.com/v1/videos/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "seedance-2",
"prompt": "鏡頭從窗邊花束慢慢推到餐桌中央,畫面色調溫暖柔和。",
"duration": 5,
"aspect_ratio": "16:9",
"image_with_roles": [
{"url": "https://example.com/first-frame.png", "role": "first_frame"},
{"url": "https://example.com/last-frame.png", "role": "last_frame"}
],
"resolution": "720p",
"generate_audio": false
}'
curl --request POST \
--url https://toapis.com/v1/videos/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "seedance-2",
"prompt": "微距鏡頭拍攝一隻玻璃蛙停在葉片上,鏡頭緩慢切到透明腹部與跳動心臟,紀錄片風格。",
"duration": 11,
"aspect_ratio": "16:9",
"resolution": "720p",
"generate_audio": true
}'
curl --request POST \
--url https://toapis.com/v1/videos/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "seedance-2-fast",
"prompt": "一隻柴犬在雨後的霓虹街頭奔跑,地面倒映彩色燈光。",
"duration": 5,
"aspect_ratio": "16:9",
"resolution": "720p"
}'
import requests
response = requests.post(
"https://toapis.com/v1/videos/generations",
headers={
"Authorization": "Bearer your-ToAPIs-key",
"Content-Type": "application/json",
},
json={
"model": "seedance-2-mini",
"prompt": "保持人物形象一致,參考圖片和視頻的節奏,生成一段簡短室內廣告視頻",
"duration": 8,
"aspect_ratio": "16:9",
"resolution": "720p",
"image_with_roles": [
{"url": "https://example.com/ref.png", "role": "reference_image"}
],
"video_with_roles": [
{"url": "https://example.com/ref.mp4", "role": "reference_video"}
],
},
)
print(response.json())
{
"id": "tsk_vid_xxx",
"client_business_id": "order_20260616_001",
"object": "generation.task",
"model": "seedance-2-mini",
"status": "in_progress",
"progress": 10,
"created_at": 1781577600
}