Skip to content
API Reference · ビデオ生成 API

ビデオ生成 API

非同期動画生成 — タスクの作成・取得・一覧・キャンセル。テキストから動画、画像から動画に対応。


概要

動画生成は非同期タスクです:POST /videos/generations でタスク ID が即座に返り、GET /videos/generations/{id}statuscompleted になるまでポーリングします。完了後、video_url から結果をダウンロードできます。

対応モデル:seedance-1.5-proseedance-2.0 など。最新リストは GET /videos/models で取得してください。完全なスキーマと制約は インタラクティブ API ドキュメント でご確認ください。

  • GET https://api.alltoken.ai/v1/videos/models — 利用可能な動画モデル一覧
  • POST https://api.alltoken.ai/v1/videos/generations — タスクを作成
  • GET https://api.alltoken.ai/v1/videos/generations/{id} — タスクステータスを取得
  • GET https://api.alltoken.ai/v1/videos/generations — タスク一覧
  • POST https://api.alltoken.ai/v1/videos/generations/{id}/cancel — タスクをキャンセル

ビデオモデル一覧

GET
$GET https://api.alltoken.ai/v1/videos/models

利用可能なすべての動画生成モデルを OpenAI 互換フォーマットで返します。

レスポンス JSON
1{
2 "object": "list",
3 "data": [
4 { "id": "seedance-1.5-pro", "object": "model", "owned_by": "chat" },
5 { "id": "seedance-2.0", "object": "model", "owned_by": "chat" }
6 ]
7}

タスクを作成

POST
$POST https://api.alltoken.ai/v1/videos/generations

テキストから動画

リクエストボディ JSON
1{
2 "model": "seedance-1.5-pro",
3 "prompt": "A cat surfing on a rainbow",
4 "duration": 5,
5 "ratio": "16:9",
6 "resolution": "720p"
7}

画像から動画(先頭フレームをガイド)

リクエストボディ JSON
1{
2 "model": "seedance-1.5-pro",
3 "prompt": "The cat jumps forward",
4 "content": [
5 {
6 "type": "image_url",
7 "image_url": { "url": "https://example.com/cat.png" },
8 "role": "first_frame"
9 }
10 ],
11 "duration": 5
12}

レスポンス(タスク作成、ステータス queued

レスポンス JSON
1{
2 "id": "vgen_01abc",
3 "status": "queued",
4 "model": "seedance-1.5-pro",
5 "input_type": "text",
6 "ratio": "16:9",
7 "resolution": "720p",
8 "duration": 5,
9 "created_at": "2026-04-27T10:00:00Z"
10}

リクエストパラメーター

  • model (必須) — 動画モデル ID(例:"seedance-1.5-pro"
  • prompt (必須) — 動画の内容を記述するテキスト
  • content — マルチモーダル入力配列(画像→動画、動画参照用)。各項目は typeimage_url / video_url / audio_url / draft_task)と rolefirst_frame / last_frame / reference_image / reference_video / reference_audio)を含む
  • ratio — アスペクト比:16:9 / 9:16 / 4:3 / 3:4 / 21:9 / 1:1 / adaptive
  • duration — 動画の長さ(秒)。-1 でモデルが自動決定
  • resolution480p / 720p / 1080p
  • frames — フレーム数(duration より優先)
  • generate_audio — 音声を同時生成するかどうか
  • input_has_video - Set when the input content includes a video reference
  • seed — 乱数シード(再現性用)
  • camera_fixed — カメラを固定するかどうか
  • watermark — ウォーターマークを追加するかどうか(デフォルト false
  • callback_url — タスク完了時に呼び出される URL
  • return_last_frame — 末尾フレームの URL を返すかどうか(続編生成用)
  • service_tierdefault / flex
  • execution_expires_after — 実行期限(秒)、3600-259200
  • draft — 対応モデルでドラフトタスクを作成または使用
  • toolsweb_search などの任意ツール設定
  • safety_identifier — 任意の安定した安全識別子(最大 64 文字)

タスクステータスを取得

GET
$GET https://api.alltoken.ai/v1/videos/generations/{id}

タスクの詳細を返します。statuscompleted になると、video_url から動画をダウンロードできます。

レスポンス JSON
1{
2 "id": "vgen_01abc",
3 "status": "completed",
4 "model": "seedance-1.5-pro",
5 "video_url": "https://cdn.example.com/videos/vgen_01abc.mp4",
6 "video_url_expires_at": "2026-04-27T11:00:00Z",
7 "video_url_ttl": 3600,
8 "duration": 5,
9 "fps": 24,
10 "resolution": "720p",
11 "ratio": "16:9",
12 "usage": {
13 "completion_tokens": 256,
14 "total_tokens": 256
15 },
16 "created_at": "2026-04-27T10:00:00Z",
17 "completed_at": "2026-04-27T10:01:32Z"
18}

video_url は事前署名付き URL で、video_url_ttl 秒後に期限切れになります。期限切れ後は本エンドポイントを再呼び出しすることで新しい URL を取得できます。

タスクステータス値

  • queued — キュー待ち、GPU リソース待機中
  • processing — モデルが生成中
  • completed — 完了、video_url 利用可能
  • failed — 生成失敗、詳細は error フィールド
  • expiredvideo_url 期限切れ、リフレッシュなし
  • cancelled — ユーザーによりキャンセル

推奨ポーリング間隔:2-5 秒。ほとんどのタスクは 30-120 秒で完了し、高解像度ジョブは 3-5 分かかる場合があります。

タスク一覧

GET
$GET https://api.alltoken.ai/v1/videos/generations?limit=20&status=completed

現在のユーザーの動画生成タスクをページネーションで一覧表示します。クエリパラメーター:

  • limit — ページサイズ(デフォルト 20、最大 100)
  • status — ステータスでフィルタ(queued / processing / completed / failed / expired / cancelled

タスクをキャンセル

POST
$POST https://api.alltoken.ai/v1/videos/generations/{id}/cancel

未完了のタスク(queued または processing のみ)をキャンセルします。すでに completed / cancelled 状態のタスクは 409 Conflict を返します。

エラーレスポンス

  • 400 — リクエストエラー(例:prompt が空、ratio が不正)
  • 401 — API Key が無効または欠落
  • 402 — 残高不足
  • 404 — タスク ID が見つかりません
  • 409 — タスク状態がこの操作を許可しない(例:完了済みタスクのキャンセル)
  • 429 — レート制限超過