メインコンテンツへスキップ
ビデオ生成は非同期です。 POST /v1/videos/generations は公開タスクIDを返し、通常は poll_url を返します。最終的なビデオは後のステータス応答に表示されます。 選択した Seedance モデルが TokenLab 素材ライブラリを使用できる場合、画像 URL と対応するインライン data URL は生成前に再利用可能な TokenLab 素材として準備されます。準備に 60 秒を超える場合は、返された auto_material_asset_idsACTIVE になってから再試行してください。選択したモデルが素材ライブラリを使用できない場合、通常の画像入力は通常の画像パスで処理されます。

対応する操作

本番環境では明示的な operation を使用してください。TokenLabは入力からいくつかの操作を推測できますが、明示的な操作値は検証、サポート、および再試行を明確にします。
操作必要または典型的な入力使用例
text-to-videopromptテキストのみから生成
image-to-videoimage_url または互換性のある image開始画像をアニメーション化
reference-to-videoreference_images およびサポートされているモデルのオプションの video_urls / audio_urlsアイデンティティ、スタイル、またはアセットの参照を保持
start-end-to-videostart_image, end_image最初と最後のフレームを制御
video-to-videovideo_url またはモデル固有の task_id既存のクリップを変換またはアップスケール
motion-controlimage_urlvideo_url対象にモーション参照を適用
audio-to-videoaudio_url音声条件付きのビデオフロー
video-extensiontask_id, extend_at またはモデル固有の拡張フィールド生成されたビデオを続行

モデル発見

curl "https://api.tokenlab.sh/v1/models?recommended_for=video" \\
  -H "Authorization: Bearer sk-your-api-key"
model には TokenLab に表示されるモデル ID を使い、機能差分は operation と対応するメディア入力で選択してください。例: wan-2.7happyhorse-1.0viduq3viduq3-mixpixverse-v6kling-3.0-videoveo3.1seedance-2.0。操作固有の接尾辞を TokenLab のモデル名として使わないでください。 reference_images, kling_elements, output_audio, duration, resolution, または aspect_ratio のような専門的なフィールドに依存する前に、選択したモデルの詳細を確認してください。

リクエストの作成

curl https://api.tokenlab.sh/v1/videos/generations \\
  -H "Authorization: Bearer sk-your-api-key" \\
  -H "Content-Type: application/json" \\
  -d '{
    "model": "veo3.1",
    "operation": "text-to-video",
    "prompt": "日差しの中を歩く猫の穏やかなシネマティックショット",
    "duration": 4,
    "aspect_ratio": "16:9"
  }'
本番メディア入力には、インラインの data: URL よりも公開 https URL を優先してください。一時 URL を使用する場合は、TokenLab がタスク作成を完了するまで有効に保ってください。

入力とモデル固有のフィールド

  • Veo 3ファミリーのリクエストは、output_audio が省略された場合、デフォルトでオーディオオンになります。モデルがトグルをサポートしている場合は、サウンドに依存するUXのために明示的に設定してください。
  • kling_elementskling-3.0-video 画像条件付きリクエスト用です。各要素を prompt@name として参照してください。 output_audio=true と組み合わせないでください。
  • Seedance 2.0 ファミリーで 4K 出力、Fast/Mini の解像度上限、またはマルチモーダル参照入力を使う前に、Seedance 2.0 ビデオモデルガイドを確認してください。
  • grok-imagine-video の場合、video-to-video は公開の .mp4 video_url を使用します。モデル固有の制限(durationresolution など)はモデル詳細から取得する必要があります。

PixVerse および HappyHorse

モデル操作入力解像度長さ音声セレクター
pixverse-c1, pixverse-v6text-to-video, image-to-video, start-end-to-video, reference-to-videoprompt; image_url; start_image + end_image; reference_images360p, 540p, 720p, 1080p1 ~ 15 秒の任意の整数output_audio, デフォルトは false
pixverse-v5.6text-to-video, image-to-video, start-end-to-video, reference-to-videoC1 および V6 と同じフィールド360p, 540p, 720p, 1080p5、8、または 10 秒。1080p は 5 または 8 秒をサポートします。output_audio, デフォルトは false
happyhorse-1.0text-to-video, image-to-video, reference-to-video, video-to-videoprompt; image_url; reference_images; video_url + reference_images720p, 1080p生成操作では 3 ~ 15 秒。video-to-video 出力は最大 15 秒に制限されます。output_audio を送信しないでください。
TokenLab では、上記の PixVerse モデルは operation=video-extension を受け付けません。
curl https://api.tokenlab.sh/v1/videos/generations \
  -H "Authorization: Bearer sk-your-api-key" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "pixverse-v6",
    "operation": "image-to-video",
    "prompt": "A slow camera move through a neon-lit street",
    "image_url": "https://example.com/start.jpg",
    "resolution": "1080p",
    "duration": 5,
    "output_audio": true
  }'

ポーリング結果

最初に返された poll_url を使用してください。固定エンドポイントが必要な場合は、作成応答から同じ id / task_id を使用して GET /v1/tasks/{id} を使用してください。 完了したビデオタスクは、モデルと出力数に応じて video_url, video, または videos を返す場合があります。 billing_transaction_id はタスク識別子ではなく、請求識別子として扱ってください。

一般的な落とし穴

  • 古いビデオステータスパスをハードコーディングしないでください。 poll_url を優先してください。
  • モデル詳細が許可していない限り、最初のフレームフィールドを専用の参照画像フローと組み合わせないでください。
  • duration が入力参照ビデオの長さを示すとは限りません。通常は生成された出力の長さを制御します。
  • タイムアウト後にタスクがすでに作成されたかどうかを確認せずに作成リクエストを再試行しないでください。

APIリファレンス

トピックリファレンス
ビデオの作成ビデオの作成
ビデオステータスの取得ビデオステータスの取得
タスクステータスの取得タスクステータスの取得
タスクのキャンセルタスクのキャンセル
請求と価格設定請求と価格設定

OpenAI 形式と Volc 互換の動画 API

複数モデルにまたがる TokenLab の統一動画 API には /v1/videos/generations を使います。Volc 形式の content[] や Action リクエストを使う既存の Seedance 2.0 連携を移行する場合は、/api/v3 配下の Seedance 互換エンドポイントを使えます。どちらも TokenLab Bearer API Key と非同期ポーリングを使いますが、リクエストと応答の形は異なります。