Wan 3.0 Prime
テキスト、1 枚以上の画像、または参照動画と音声から、720p または 1080p の 2~30 秒の動画を生成します。
- 非同期です。作成の呼び出しはタスク ID を返し、動画はタスクが成功した時点で得られます。
- 1 回のリクエストで 2~30 秒のクリップを生成できます。
durationは秒数の整数です。 - 入力方法は 4 通りです。テキストのみ、画像 1 枚、複数の画像(最大 10 枚)、または参照動画と参照音声(それぞれ最大 5 件)です。画像と参照素材は併用できません。
- 料金は、解像度とリクエストした秒数に応じて決まります。失敗したタスクには課金されません。
このモデルをテスト画面で開きます。BeatAPI の API キーを入力するとタスクを作成できます。実際に呼び出され、ご自身の残高から課金されます。
モデル ID
2 つの Wan 3.0 モデルがこのエンドポイントを共有し、まったく同じリクエストを受け付けます。以下の値はゲートウェイの仕様から直接取得したものです。
エンドポイントと認証
POST https://api.beatapi.io/v1/videos/tasks
Authorization
string
必須
BeatAPI の API キーを Bearer <BEATAPI_API_KEY> の形式で送信します。キーはダッシュボードで作成できます。キーはサーバー側で保管し、ブラウザーやモバイルアプリに含めないでください。
ボディは JSON で送信し、Content-Type: application/json を指定します。Idempotency-Key は任意です。論理的に 1 件のリクエストごとに一意の値(255 文字以内)を送り、まったく同じボディを再試行するときだけ再利用してください。24 時間以内に同じキーと同じボディで再試行すると、最初のレスポンスが Idempotent-Replayed: true 付きで再度返されます。同じキーで異なるボディを送ると 409 idempotency_conflict が返ります。2xx 以外のレスポンスは保存されないため、400 や 402 の後の再試行は改めて実行されます。
リクエストの流れ
タスクを作成する
下記のパラメーターをエンドポイントに POST します。201 が返れば、タスクが受け付けられ、料金が残高から仮確保されたことを意味します。処理はバックグラウンドで実行されます。data.id を保存してください。
完了を待つ
GET /v1/tasks/{task_id} を呼び出し、status が succeeded または failed になるまで、呼び出しの間隔を data.poll_after_seconds(画像は 5 秒、動画は 8 秒)だけ空けてください。あるいは task.succeeded と task.failed のWebhookを登録することもできます。処理タイムアウトで停止したタスクはイベントを送信しないため、フォールバックとしてポーリングも続けてください。
入力モード
リクエストパラメーター
model
string
必須
実行するモデルです。
値:wan-3.0-prime
値が正しくない場合
- 指定がない場合:
"model" is required - 画像モデルをこのエンドポイントに送った場合:
"model" nano-banana-2 is served by POST /v1/images/tasks, not this endpoint
prompt
string
必須
動画で起こることを、被写体、動き、カメラワークの順に記述します。参照素材を使う場合は、各入力の用途も書いてください。
長さ:1–5000 文字
- 長さは文字数で数えます(CJK 文字は 1 文字として数えます)。
値が正しくない場合
- 指定がない場合:
"prompt" is required - 空、または上限を超えている場合:
"prompt" has an unsupported length - 文字列ではない場合:
"prompt" must be a string
images
string[]
任意
動画の元になる画像です。1 枚、または使いたい順に並べた複数枚を指定します。
要素数:1–10
各要素は公開されている https:// の URL です。ローカルファイルは先に アップロード(POST /v1/files)し、返された data.url を渡してください。
- 各リンクは公開された
https://URL である必要があります。ゲートウェイはタスク作成時にファイルのダウンロードや計測を行いません。 reference_videosやreference_audiosとは同時に送れません。aspect_ratioとresolutionを省略するとデフォルト(16:9、720p)のままになります。画像を送った場合も同様で、ゲートウェイは画像からこれらを読み取りません。希望する形を指定してください。
値が正しくない場合
- リンクが 11 個以上:
"images" accepts at most 10 items - 空の配列:
"images" requires at least 1 item - 配列ではない場合:
"images" must be an array - https:// のリンクではない場合:
"images[0]" must be a public HTTPS URL - 参照フィールドと併用した場合:
Cannot combine "images" with reference inputs in one task
reference_videos
string[]
任意
新しい動画の参照としてモデルが使う動画です。
要素数:1–5
各要素は公開されている https:// の URL です。ローカルファイルは先に アップロード(POST /v1/files)し、返された data.url を渡してください。
- 公開された
https://リンクを最大 5 個まで指定できます。ゲートウェイはタスク作成時にダウンロード、計測、制限を行わないため、モデルが使えないクリップは作成後にタスクが失敗します(返金されます)。 imagesとは同時に送れません。
値が正しくない場合
- リンクが 6 個以上:
"reference_videos" accepts at most 5 items imagesと併用した場合:Cannot combine "images" with reference inputs in one task
reference_audios
string[]
任意
参照としてモデルが使う音楽、音声、効果音のクリップです。
要素数:1–5
各要素は公開されている https:// の URL です。ローカルファイルは先に アップロード(POST /v1/files)し、返された data.url を渡してください。
- 公開された
https://リンクを最大 5 個まで指定できます。タスク作成時にダウンロードや計測は行われません。 imagesとは同時に送れません。
値が正しくない場合
- リンクが 6 個以上:
"reference_audios" accepts at most 5 items
duration
integer
任意デフォルト: 5
動画の長さを秒単位の整数で指定します。
デフォルト:5
範囲:2–30
- 省略すると
5が使われ、その分が課金されます。 - 料金は秒数で決まる(「課金」を参照)ため、価格を左右する主な項目です。
-1(モデルが長さを決める指定)は受け付けません。範囲内の整数を送ってください。
値が正しくない場合
- 2~30 の範囲外、整数ではない、または文字列で送った場合:
"duration" is outside its supported range
aspect_ratio
string
任意デフォルト: 16:9
動画の縦横比を 幅:高さ の形式で指定します。
指定できる値:16:9, 9:16, 1:1, 4:3, 3:4
デフォルト:16:9
- 省略すると
16:9が使われます。画像や参照素材を送った場合も同様です。 - このモデルでは
adaptiveは使えません。
値が正しくない場合
- リストにない値:
"aspect_ratio" must be one of: [16:9 9:16 1:1 4:3 3:4]
resolution
string
任意デフォルト: 720p
出力解像度です。1080p は 720p より 1 秒あたりの料金が高くなります。
指定できる値:720p, 1080p
デフォルト:720p
- 小文字のみです。480p は使えません。
値が正しくない場合
- リストにない値(例:
480p、720P):"resolution" must be one of: [720p 1080p]
ゲートウェイはタスク作成前に、次の組み合わせも確認します。
imagesと参照メディアのフィールドは同時に使用できません。
入力メディアの上限
ゲートウェイはタスク作成前にすべての入力を読み取り、次の上限を超えるものは、その入力を示す 400 bad_request で拒否します。課金はされません。
- ゲートウェイはタスク作成時に画像・動画・音声ファイルを読み取らないため、このモデルではサイズ、解像度、長さ、形式の制限は確認されません。上記のフィールドのルールのみが適用されます。
- モデルが取得または利用できないリンクは、タスク作成後にタスクを失敗させます。通常は
bad_requestで、入力がモデレーションで拒否された場合はcontent_policy_violationです。いずれも全額返金されます。 - ローカルファイルがある場合は、
POST /v1/filesでアップロードし(png、jpg、jpeg、webp、mp3、wav、aac、m4a、mp4、mov に対応。最大 50 MB、動画は 100 MB)、返されたdata.urlを渡してください。
併用できる入力
このモデルが受け付けないフィールド
以下のフィールドを送ると、無視されるのではなく、課金前に拒否されます。
reference_images、generate_audio、seed、quality、sound、task_type、output_format、watermark、およびほかの動画モデルのフィールド →field "seed" is not supported by model wan-3.0-prime(送ったフィールド名が入ります)。画像はimagesに入れてください。- 動画エンドポイントがまったく認識しないフィールド →
unknown field: <name>。
リクエスト例
テキストから動画
5 秒の 720p 横向きクリップです。
画像から動画
画像 1 枚から作る 10 秒の 1080p 正方形クリップです。
複数の画像
2 枚の画像を、リストの順にモデルへ渡します。
参照動画と参照音声
動画リンクは、ご自身の公開 MP4 に置き換えてください。参照のスタイルに沿った 30 秒の縦向きクリップです。
レスポンス
タスクの作成(201)
タスクオブジェクトです。タスクが成功するまで output は null です。「実行中」と記載されたフィールドは、タスクの完了後に表示されなくなります。
完了したタスク
GET /v1/tasks/{task_id} は HTTP 200 と status: "succeeded" を返し、結果は data.output に入ります。
出力フィールド
失敗したタスク
失敗したタスクも、GET /v1/tasks/{task_id} では HTTP 200 になります。失敗はボディに示されます。仮確保された金額は全額戻されるため、課金されません。
完全なコード例
タスクを作成し、サーバーが示すポーリング間隔で完了を待ち、結果の URL を出力します。環境変数に BEATAPI_API_KEY を設定し、requests をインストールしてください。
課金
- 料金は、解像度とリクエストした秒数(
duration、省略時は 5)に応じて決まります。1080p は 720p より 1 秒あたりの料金が高くなります。aspect_ratioは料金に影響しません。 - 下の表は 8 秒のクリップの料金です。他の長さは、解像度ごとの同じ単価で 1 秒単位で計算されます。
- 料金はタスク作成時に確保されます。
data.usage.billable_duration_secondsに計算の基になった秒数が表示されます。 - 失敗したタスク(送信後にモデレーションで拒否されたものを含む)は全額返金されます。
現在の定価です。料金ページと同じ金額です。割引を個別に契約しているアカウントでは、より低い金額になります。実際に課金された金額は、タスクの data.usage で確認できます。
よくあるエラー
HTTP エラー早見表
タスクが作られる前のエラーは、2xx 以外のレスポンスで返されます。課金はされません。error.code または error.retryable で処理を分岐してください。message には問題の内容が示されます。全一覧と再試行のルールはエラーにあります。
認証
Send your API key as Authorization: Bearer <BEATAPI_API_KEY>.
ヘッダー
ボディは JSON で送信し、Content-Type: application/json を指定します。Idempotency-Key は任意です。論理的に 1 件のリクエストごとに一意の値(255 文字以内)を送り、まったく同じボディを再試行するときだけ再利用してください。24 時間以内に同じキーと同じボディで再試行すると、最初のレスポンスが Idempotent-Replayed: true 付きで再度返されます。同じキーで異なるボディを送ると 409 idempotency_conflict が返ります。2xx 以外のレスポンスは保存されないため、400 や 402 の後の再試行は改めて実行されます。
リクエスト
実行するモデルです。
値:wan-3.0-prime
値が正しくない場合
- 指定がない場合:
"model" is required - 画像モデルをこのエンドポイントに送った場合:
"model" nano-banana-2 is served by POST /v1/images/tasks, not this endpoint
動画で起こることを、被写体、動き、カメラワークの順に記述します。参照素材を使う場合は、各入力の用途も書いてください。
長さ:1–5000 文字
- 長さは文字数で数えます(CJK 文字は 1 文字として数えます)。
値が正しくない場合
- 指定がない場合:
"prompt" is required - 空、または上限を超えている場合:
"prompt" has an unsupported length - 文字列ではない場合:
"prompt" must be a string
動画の縦横比を 幅:高さ の形式で指定します。
指定できる値:16:9, 9:16, 1:1, 4:3, 3:4
デフォルト:16:9
- 省略すると
16:9が使われます。画像や参照素材を送った場合も同様です。 - このモデルでは
adaptiveは使えません。
値が正しくない場合
- リストにない値:
"aspect_ratio" must be one of: [16:9 9:16 1:1 4:3 3:4]
動画の長さを秒単位の整数で指定します。
デフォルト:5
範囲:2–30
- 省略すると
5が使われ、その分が課金されます。 - 料金は秒数で決まる(「課金」を参照)ため、価格を左右する主な項目です。
-1(モデルが長さを決める指定)は受け付けません。範囲内の整数を送ってください。
値が正しくない場合
- 2~30 の範囲外、整数ではない、または文字列で送った場合:
"duration" is outside its supported range
動画の元になる画像です。1 枚、または使いたい順に並べた複数枚を指定します。
要素数:1–10
各要素は公開されている https:// の URL です。ローカルファイルは先に アップロード(POST /v1/files)し、返された data.url を渡してください。
- 各リンクは公開された
https://URL である必要があります。ゲートウェイはタスク作成時にファイルのダウンロードや計測を行いません。 reference_videosやreference_audiosとは同時に送れません。aspect_ratioとresolutionを省略するとデフォルト(16:9、720p)のままになります。画像を送った場合も同様で、ゲートウェイは画像からこれらを読み取りません。希望する形を指定してください。
値が正しくない場合
- リンクが 11 個以上:
"images" accepts at most 10 items - 空の配列:
"images" requires at least 1 item - 配列ではない場合:
"images" must be an array - https:// のリンクではない場合:
"images[0]" must be a public HTTPS URL - 参照フィールドと併用した場合:
Cannot combine "images" with reference inputs in one task
参照としてモデルが使う音楽、音声、効果音のクリップです。
要素数:1–5
各要素は公開されている https:// の URL です。ローカルファイルは先に アップロード(POST /v1/files)し、返された data.url を渡してください。
- 公開された
https://リンクを最大 5 個まで指定できます。タスク作成時にダウンロードや計測は行われません。 imagesとは同時に送れません。
値が正しくない場合
- リンクが 6 個以上:
"reference_audios" accepts at most 5 items
新しい動画の参照としてモデルが使う動画です。
要素数:1–5
各要素は公開されている https:// の URL です。ローカルファイルは先に アップロード(POST /v1/files)し、返された data.url を渡してください。
- 公開された
https://リンクを最大 5 個まで指定できます。ゲートウェイはタスク作成時にダウンロード、計測、制限を行わないため、モデルが使えないクリップは作成後にタスクが失敗します(返金されます)。 imagesとは同時に送れません。
値が正しくない場合
- リンクが 6 個以上:
"reference_videos" accepts at most 5 items imagesと併用した場合:Cannot combine "images" with reference inputs in one task
出力解像度です。1080p は 720p より 1 秒あたりの料金が高くなります。
指定できる値:720p, 1080p
デフォルト:720p
- 小文字のみです。480p は使えません。
値が正しくない場合
- リストにない値(例:
480p、720P):"resolution" must be one of: [720p 1080p]
レスポンス
タスクオブジェクトです。タスクが成功するまで output は null です。「実行中」と記載されたフィールドは、タスクの完了後に表示されなくなります。

