Seedance 影片 API 接入

使用 Seedance 2.0 或 2.5 進行文生影片與圖生影片,查詢非同步任務狀態並下載結果。

Seedance 影片生成使用非同步 Video API:先提交任務,再使用傳回的任務 ID 查詢狀態。此介面與 Chat Completions 分開,請勿請求 /v1/chat/completions

開始前準備

建立 Modelflare API Key,並使用 https://modelflare.dev/v1 作為 Base URL。公開模型名稱為 seedance-2.0seedance-2.5

不同模型可用的時長與解析度組合可能不同,請在請求前查看模型與價格頁面。模型支援時,解析度值使用 480p720p1080p4k

文生影片請求

curl https://modelflare.dev/v1/videos \
  -H "Authorization: Bearer YOUR_MODELFLARE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "seedance-2.5",
    "prompt": "雨夜霓虹街道上,一隻白貓朝鏡頭跑來,電影感低機位跟拍",
    "duration": 4,
    "resolution": "720p"
  }'

圖生影片請求

加入 image 欄位並傳入可公開存取的 HTTPS 圖片網址,其餘欄位與文生影片相同。

curl https://modelflare.dev/v1/videos \
  -H "Authorization: Bearer YOUR_MODELFLARE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "seedance-2.5",
    "prompt": "讓主體緩慢轉向鏡頭,鏡頭輕微向前推進",
    "image": "https://example.com/reference.png",
    "duration": 4,
    "resolution": "720p"
  }'

提交回應

提交成功會傳回公開任務 ID。idtask_id 代表同一個任務,儲存任一值即可繼續查詢。

{
  "id": "task_example_123",
  "task_id": "task_example_123",
  "object": "video",
  "model": "seedance-2.5",
  "status": "queued"
}

查詢任務狀態

建議每隔數秒查詢一次。等待狀態可能為 queuedpendingprocessingin_progress;狀態變為 completedfailed 後停止輪詢。

curl https://modelflare.dev/v1/videos/task_example_123 \
  -H "Authorization: Bearer YOUR_MODELFLARE_API_KEY"

完成回應範例:

{
  "id": "task_example_123",
  "task_id": "task_example_123",
  "object": "video",
  "model": "seedance-2.5",
  "status": "completed",
  "progress": 100,
  "metadata": {
    "url": "https://example.com/generated-video.mp4"
  }
}

下載影片

任務完成後,透過 content 介面下載影片:

curl -L https://modelflare.dev/v1/videos/task_example_123/content \
  -H "Authorization: Bearer YOUR_MODELFLARE_API_KEY" \
  -o seedance.mp4

主要輸入參數

  • model:必填,使用 seedance-2.0seedance-2.5
  • prompt:必填,描述要生成的影片。
  • duration:必填,整數秒,目前最短為 4 秒;亦相容 seconds 欄位。
  • resolution:必填,使用目前模型支援的輸出解析度。
  • image:選填,可公開存取的 HTTPS 圖片網址;傳入後執行圖生影片。

HTTP 400 通常表示參數錯誤,401 表示 API Key 無效,429 表示暫時受限,5xx 錯誤可在退避等待後重試。