Seedance 2.5 · 30s の動画生成(非同期): duration は 30 秒のいずれか(720P は 30秒 のみ)、解像度 720P、画面比率 16:9 / 9:16 / 1:1 / 4:3 / 3:4。image を渡すと画像から動画になります(参照は最大 9 枚)。ジョブ ID を返し(HTTP 202)、GET /v1/videos/jobs/{id} を status=succeeded になるまでポーリングすると、結果が data[0].url に入ります。1 本ごとの課金: $1.50(既定は 720P)。同じ等級の中では、もっとも短いクリップともっとも長いクリップが同じ料金です。失敗時は全額返金します。
Playground で試す →認証
Authorization: Bearer YOUR_API_KEY Content-Type: application/json
コンソールで API Key を作成すると利用を開始できます。
リクエストボディ
| パラメータ | 種別 | 必須 | 説明 |
|---|---|---|---|
| model | string | はい | モデル ID。ここでは seedance-2.5-30s です。 |
| prompt | string | はい | 動画の内容、カメラ、動きを説明するテキストプロンプト。最大 5000 バイト(UTF-8。漢字 1 文字は 3 バイト)。 |
| duration | integer | いいえ | 長さは 30 秒のいずれかのみ指定できます(既定は 30)。seconds とも書けます。720P は 30秒 のみ。1 本ごとの課金なので、長さは価格を変えません。 |
| resolution | string | いいえ | 解像度: $1.50(既定は 720P)。価格を決めるのは長さではなく解像度です。 |
| size | string | いいえ | 画面比率: 16:9 / 9:16 / 1:1 / 4:3 / 3:4(既定は 16:9)。aspect_ratio とも書けます。このモデルは 21:9 に対応していません。 |
| image | string | いいえ | 画像から動画:参照画像を渡してください(公開 URL、data: URI、base64)。省略するとテキストから動画になります。 |
| images | array | いいえ | 複数枚の参照画像。最大 9 枚です。上限を超えた場合は切り詰めずに拒否します。reference_images とも書けます。 |
リクエスト例
# 1) submit -> 202 {"id":"img_...","status":"queued"}
curl https://nezhagate.com/v1/videos/generations -H 'Authorization: Bearer YOUR_API_KEY' -H 'Content-Type: application/json' -d '{"model": "seedance-2.5-30s", "prompt": "a paper crane unfolding over a misty lake", "duration": 30, "resolution": "720P", "size": "16:9"}'
# image-to-video: also pass "image": "https://example.com/ref.png"
# 2) poll every ~5s until status=succeeded, then read data[0].url
curl https://nezhagate.com/v1/videos/jobs/img_3f9a...c2 -H 'Authorization: Bearer YOUR_API_KEY'レスポンス
{
"id": "img_3f9a...c2",
"object": "video.generation.job",
"status": "queued",
"model": "seedance-2.5-30s"
}非同期の動画ジョブ(送信 → ポーリング)
送信すると即座に HTTP 202 とジョブ ID が返ります。status=succeeded になるまでポーリングし、data[0].url(mp4 のリンク)を読んでください。指定できる長さ・解像度・画面比率は上のパラメータ表にあります。image パラメータを付けると画像から動画になります。
curl https://nezhagate.com/v1/videos/generations -H 'Authorization: Bearer YOUR_API_KEY' -H 'Content-Type: application/json' -d '{"model": "seedance-2.5-30s", "prompt": "夕暮れにサーフィンをする猫", "size": "16:9"}'{ "id": "img_3f9a...c2", "object": "video.generation.job", "status": "queued", "model": "seedance-2.5-30s" }curl https://nezhagate.com/v1/videos/jobs/img_3f9a...c2 -H 'Authorization: Bearer YOUR_API_KEY'
{
"id": "img_3f9a...c2",
"object": "video.generation.job",
"status": "succeeded",
"model": "seedance-2.5-30s",
"data": [{ "url": "https://img.nezhagate.com/i/9f86d081a8....mp4" }]
}🕑 data[0].url は当方の画像ホストのリンクで、60 日間保存された後に自動的に削除されます。継続して使う場合は、ダウンロードしてご自身のストレージや CDN に保存してください。
1 本ごとの課金で、失敗時は全額返金します。生成が失敗またはタイムアウトした場合、確保したクレジットは自動的に戻ります。
エラーコード
エラー本文には常に error.message / error.type / error.code / error.param が含まれます。分岐は code で行ってください。一覧は接続ガイドにあります。
| HTTP | code | 説明 |
|---|---|---|
| 401 | invalid_api_key | API Key が欠落または無効 |
| 402 | insufficient_quota | 残高不足または Key が上限超過 |
| 400 | invalid_request | モデルまたはパラメータが非対応 |
| 429 | rate_limit_exceeded | 上流のレート制限 |
| 502 | upstream_error | すべての上流回線が失敗 |