Skip to main content
POST
Create a Seedance 2.0 video generation task
右側の Playground を使います。AuthorizationBearer sk-your-api-key に設定し(Token には SeeDance2 グループが有効になっている必要があります)、model / content を入力して送信してください。送信が成功すると task id が返ります。ポーリングとダウンロードの流れは、下のコードサンプルで説明しています。
Playground の「no response received」エラーについて: これは非同期 task エンドポイントであり、ブラウザで Send をクリックするとそのメッセージが表示されることがあります。ブラウザのクロスオリジン安全性チェックがレスポンスをブロックしただけで、task は実際には正常に送信されています(下の query エンドポイントまたはコンソールログで確認してください)。Playground では task を作成することしかできず、video のポーリングやダウンロードはできません。create → poll → download の一連の流れを実行するには、下の code samples(cURL / Python / Node.js)をコピーして実行してください。
これは Seedance 2.0 の task 作成エンドポイントです。Text-to-video、first+last/first frame、および multi-modal reference-to-video はすべてこれを共有しており、content 配列でモードを選択します。model の選択、pricing、解像度/ピクセル表、FAQ については、Seedance 2.0 概要 をご覧ください。
  • パス接頭辞は /seedance/api/v3 です — /api セグメントを省略しないでください。また、/v1/videos は使用しないでください
  • Token では SeeDance2 グループ を有効にしておく必要があります。そうしないと “no available channel for this model” が表示されます
  • generate_audiotrue がデフォルト です(出力には音声があります)— 無音の video にするには false を明示的に指定してください
  • Python requests には "Accept-Encoding": "identity" ヘッダーが必要です — これがないと、gzip のデコードエラー、途中で切れた非 JSON 本文(たとえば先頭の {" が失われて id":"cgt-xxx"} しか取得できない)、または断続的な 400s に遭遇することがあります
  • 成功ステータスは succeeded です(completed ではありません)。video の URL は content.video_url にあり、24 時間で期限切れになります

コード例

パラメータリファレンス

Seedance 2.0 は framescamera_fixed、または service_tier(オンライン推論のみ)をサポートしていません — これらは Seedance 1.x のパラメータであり、無視されるか拒否されます。

生成モード(コンテンツの組み合わせ)

3 つの画像モードは相互排他的です。画像は公開 URL、Base64(data:image/png;base64,...)、およびアセット ID(asset://...)を受け付けます。実在の人物の顔を含む入力は拒否されます。音声は、少なくとも 1 つの画像または動画と一緒に送信する必要があります。エンドツーエンドのアセット参照コード(取り込み → asset:// → 生成 → ダウンロード)については、アセット参照ガイド をご覧ください。

レスポンス形式

作成ではタスク ID のみが返ります(動画ではありません):
GET /seedance/api/v3/contents/generations/tasks/{id} をポーリングしてください。成功したタスクは次のようになります(テストでの実際のサンプルです):
  • 動画の URL はトップレベルではなく content.video_url にあります。これは署名付きリンクで、24時間で期限切れになります。すぐにダウンロードしてください
  • 状態マシン: queued → running → succeeded / failed / expired; 成功は succeeded
  • 署名付き URL には通常の GET でリンクをダウンロードしてください — Authorization ヘッダーは送信しないでください
usage.completion_tokens は課金対象の token 数で、tokens ≈ duration × width × height × 24 / 1024 に従います(テストでは 0.1% 以内でした)。duration: -1 または ratio: adaptive を使用すると、実際の長さと比率がレスポンスの duration / ratio フィールドに返されます。

承認

Authorization
string
header
必須

API key from the APIYI console (Token must have the SeeDance2 group enabled)

ボディ

application/json
model
enum<string>
必須

Model ID (plain ID, no ep- prefix). Standard supports 1080p; fast caps at 720p but generates faster — both bill at the same rate on APIYI

利用可能なオプション:
doubao-seedance-2-0-260128,
doubao-seedance-2-0-fast-260128
:

"doubao-seedance-2-0-fast-260128"

content
object[]
必須

Input array. Text-to-video: a single text item. Image-to-video: add image_url items (role: first_frame / last_frame). Multi-modal reference-to-video: 0-9 image_url items (role: reference_image) plus optional 0-3 video_url / 0-3 audio_url (at least 1 image or 1 video; can create / edit / extend videos). The three image modes are mutually exclusive

resolution
enum<string>
デフォルト:720p

Resolution tier (defines pixel area — every ratio in a tier costs the same). 1080p is not available on the fast model

利用可能なオプション:
480p,
720p,
1080p
ratio
enum<string>
デフォルト:adaptive

Aspect ratio. adaptive auto-fits the input (recommended for image-to-video to avoid cropping); the actual ratio is returned in the task's ratio field

利用可能なオプション:
16:9,
4:3,
1:1,
3:4,
9:16,
21:9,
adaptive
duration
integer
デフォルト:5

Video length in whole seconds, 4-15; or -1 to let the model choose (billed by actual output). Cost scales linearly with duration

:

5

generate_audio
boolean
デフォルト:true

Generate synchronized audio (voice, SFX, background music; mono). Note it DEFAULTS TO TRUE — pass false explicitly for silent video

watermark
boolean
デフォルト:false

Add an AI-generated watermark in the bottom-right corner

seed
integer
デフォルト:-1

Random seed, [-1, 2^32-1]. The same seed produces similar (not identical) results; -1 means random

return_last_frame
boolean
デフォルト:false

Return the last frame as a watermark-free png (same dimensions as the video) — chain it as the first frame of the next task to produce continuous multi-clip videos

execution_expires_after
integer
デフォルト:172800

Task expiry threshold in seconds; tasks exceeding it are marked expired. Range [3600, 259200]

レスポンス

Task created. Returns the task ID for polling

Creation response. Poll GET /seedance/api/v3/contents/generations/tasks/{id}; on success the video URL is at content.video_url (expires in ~24 h) and billed tokens at usage.completion_tokens

id
string

Video generation task ID (kept for 7 days)

:

"cgt-20260606160057-6bbjd"