NezhaGateNezhaGate
POST https://nezhagate.com/v1/videos/generations

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 で試す →

認証

Header
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 とも書けます。

リクエスト例

cURL
# 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'

レスポンス

200 · JSON
{
  "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 · 送信(テキストから動画)
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"}'
画像から動画:image パラメータも渡してください(最初のフレームとして使う参照画像。公開 URL、data: URI、base64 のいずれか)。
実在の人物の顔もそのまま参照画像に使えます(隠す必要はありません)。写っている人物の肖像を使用する権利があることを必ずご確認ください。
レスポンス例
{ "id": "img_3f9a...c2", "object": "video.generation.job", "status": "queued", "model": "seedance-2.5-30s" }
curl · ポーリング
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 で行ってください。一覧は接続ガイドにあります。

HTTPcode説明
401invalid_api_keyAPI Key が欠落または無効
402insufficient_quota残高不足または Key が上限超過
400invalid_requestモデルまたはパラメータが非対応
429rate_limit_exceeded上流のレート制限
502upstream_errorすべての上流回線が失敗