2~30秒の動画
テキスト、開始フレーム、開始・終了フレームから2~30秒の動画を作成します。
WAN · VIDEO API
WAN 3.0 APIで最大30秒の動画を作成。最大10枚の参照画像と、ネイティブの会話・音楽・効果音を利用できます。
料金
4モデルを解像度と秒単価で比較します。
| モデル | 480p | 720p | 1080p | 音声 |
|---|---|---|---|---|
WAN 3.0wan-3.0 | $0.047 | $0.094 | $0.188 | オン/オフ · 同額 |
WAN 3.0 Primewan-3.0-prime | $0.067 | $0.138 | $0.273 | オン/オフ · 同額 |
WAN 2.7 T2Vwan-2.7-t2v | — | $0.094 | $0.146 | 込み(常時オン) |
WAN 2.7 I2Vwan-2.7-i2v | — | $0.098 | $0.164 | 込み(常時オン) |
実際の出力秒数で課金し、参照動画には選択した解像度の単価を適用します。
WAN 3.0 / Prime · WAN 2.7 T2V / I2V
料金スナップショット · 2026-11-09モデル、解像度、長さ、クリップ数を選択します。
参照や30秒クリップにはWAN 3.0・Prime、固定のテキスト・画像フローにはWAN 2.7を利用します。
テキスト、開始フレーム、開始・終了フレームから2~30秒の動画を作成します。
最大10枚の参照画像で被写体とスタイルを指定します。
画像・動画・音声の参照を組み合わせ、動き、スタイル、音声を指定します。
WAN 3.0・Primeで音声を任意に選び、会話、音楽、効果音を生成します。
480p・720p・1080pで、横長、縦長、正方形、ウルトラワイド形式を作成できます。
提供元の高速版Prime、またはWAN 2.7のテキスト動画・画像動画専用フローを選べます。
動画モデル
Seedance・Kling・MiniMax H3・WANを1つの残高で利用できます。同じキーでテキスト・画像モデルも使えます。
最長30秒の動画と最大30枚の参照画像に。
個別のプロンプトと長さを指定する6ショットに。
参照を使った2K動画とネイティブ音声に。
参照を使った最長30秒の動画に。
英語原文 · 生成用プロンプト
Night city street after rain, seen from a slow forward dolly shot at low height: wet asphalt reflecting colorful lights, light trails from passing cars, soft steam rising from a street grate, light drizzle. Generic modern architecture. No people, no readable text, signs, logos, license plates, flags or recognizable landmarks. Cinematic, realistic.
共通の非同期API:見積もり→作成→状態確認→ダウンロード。モデルを切り替え、対応するパラメーターを使ってください。
開発者向けクイックスタート
見積もり → 作成 → 状態確認 → ダウンロード。202は受理であり完了ではありません。受理が不明な場合は同じ冪等性キーと本文を維持し、completed後にのみダウンロードします。最小限のサンプルです。本番環境では、再起動後に再開できるように Idempotency-Key とタスク ID を永続化してください。
ユーザーのアプリに BetterToken 動画 API を組み込んでください。
BETTERTOKEN_API_KEY は環境変数からのみ読み取り、コードへの埋め込み、ログ記録、分析への送信はしないでください。
ベース URL: https://bettertoken.ai/v1
モデル: wan-3.0.
プロンプト: A rainy city street at night, slow forward camera move
下記のリクエストJSONをそのまま使い、選択したモデルの対応フィールドと制限に従ってください。
同じリクエストで POST /videos/quote を呼ぶと、残高を予約せずに見積もりを取得できます。認証が必要であり、公開料金エンドポイントではありません。
POST /videos の前に、新しい Idempotency-Key と正確なリクエスト本文をプロセス外へ永続保存してください。再起動後は保存状態を読み込むか、受理済みタスクの保存 ID で再開します。応答が不明な場合も同じキーと本文を再利用し、タイムアウトだけを理由に別の有料タスクを作らないでください。
/videos の 202 受理後(互換ルートは 200)、id を保存し、5 秒ごとに GET /videos/{id} を確認します。queued、in_progress、completed、failed、canceled を処理してください。送信結果が不明なタスクは stage=reconciliation の in_progress のままです。代替タスクを作らないでください。429 では Retry-After に従います。5 秒間隔で最大 360 回確認しますが、通信遅延やレート制限の待機で全体の時間が延びる場合があります。確認を停止するときも ID を保存してください。確認の停止はタスクのキャンセルや再作成ではありません。
completed 後、所有者の許可された API キーで GET /videos/{id}/content を呼びます。期限切れのファイルは 410 video_artifact_expired を返します。動画は非公開です。ダウンロードの失敗や期限切れは生成失敗と分けて処理してください。
最終請求は課金明細で確認してください。生成の失敗またはキャンセルが確認された場合、財務処理により元の支払い元へ予約額が解放または返金されます。タスク状態だけで返金完了とは判断できません。送信結果の不明状態と生成後の配信障害も別々に扱ってください。
relay のエラーは error にあります。402 video_insufficient_balance、409 video_idempotency_conflict/video_acceptance_pending、422 はパラメータ不正、503 は受理不明または利用不可です。応答が不明な場合は元のキーと本文を保持してください。Web 会員プランやページ内生成 UI は追加しないでください。
{
"model": "wan-3.0",
"operation": "text_to_video",
"prompt": "A rainy city street at night, slow forward camera move",
"duration": {
"mode": "fixed",
"seconds": 5
},
"output": {
"format": "mp4",
"resolution": "480p",
"aspect_ratio": "16:9"
},
"audio": {
"mode": "on"
}
}# Minimal example: persist the Idempotency-Key and task ID in production.
# Requires curl, jq and BETTERTOKEN_API_KEY in your environment.
BASE=https://bettertoken.ai/v1
IDEM="$(uuidgen)"
cat > request.json <<'JSON'
{
"model": "wan-3.0",
"operation": "text_to_video",
"prompt": "A rainy city street at night, slow forward camera move",
"duration": {
"mode": "fixed",
"seconds": 5
},
"output": {
"format": "mp4",
"resolution": "480p",
"aspect_ratio": "16:9"
},
"audio": {
"mode": "on"
}
}
JSON
curl --fail-with-body "$BASE/videos/quote" \
-H "Authorization: Bearer $BETTERTOKEN_API_KEY" \
-H 'Content-Type: application/json' --data-binary @request.json || exit 1
TASK=$(curl --fail-with-body "$BASE/videos" \
-H "Authorization: Bearer $BETTERTOKEN_API_KEY" \
-H "Idempotency-Key: $IDEM" \
-H 'Content-Type: application/json' --data-binary @request.json) || exit 1
ID=$(printf '%s' "$TASK" | jq -er '.id') || exit 1
# Poll up to 360 times, waiting 5 seconds between requests.
# Network delays can extend the total time.
for attempt in $(seq 1 360); do
TASK=$(curl --fail-with-body "$BASE/videos/$ID" \
-H "Authorization: Bearer $BETTERTOKEN_API_KEY") || exit 1
STATUS=$(printf '%s' "$TASK" | jq -r '.status')
case "$STATUS" in
completed) break ;;
failed|canceled) printf '%s\n' "$TASK"; exit 1 ;;
esac
sleep 5
done
[ "$STATUS" = completed ] || { echo "Resume polling task: $ID"; exit 1; }
curl --fail-with-body "$BASE/videos/$ID/content" \
-H "Authorization: Bearer $BETTERTOKEN_API_KEY" -o video.mp4SKU切替時はoperation、audio、mediaを調整します。WAN 2.7 I2Vにはアクセス可能な開始フレームのURLが必要です。
| パラメーター | 値と制限 |
|---|---|
model / operation | wan-3.0 / wan-3.0-prime:text_to_video、image_to_video、reference_to_video。wan-2.7-t2v:text_to_videoのみ。wan-2.7-i2v:image_to_videoのみ。 |
duration | {mode:"fixed",seconds:N}。WAN 3:整数2~30、入力動画+出力≤30秒。WAN 2.7:整数2~15。 |
output.resolution | WAN 3:480p / 720p / 1080p。WAN 2.7:720p / 1080p。 |
output.aspect_ratio | WAN 3:adaptive / 21:9 / 16:9 / 4:3 / 1:1 / 3:4 / 9:16。フレーム入力はadaptiveを推奨。2.7 T2V:16:9 / 9:16 / 1:1 / 4:3 / 3:4。2.7 I2V:省略、画像に従う。 |
audio | WAN 3/Prime:{mode:"on"}または{mode:"off"}、同額。WAN 2.7:audioを省略するかprovider_defaultを使用。 |
media · WAN 3 | 各項目には一意のidとtype、role、sourceが必要です。first_frame(+last_frame)またはreference_*。画像10枚以下、動画5本以下(契約上の上限。全組み合わせは未検証)、音声5本以下。各動画・音声1~15秒、種類ごとに15秒以下、全体20ファイル以下。 |
media · WAN 2.7 | I2V:first_frame必須、last_frame任意。両2.7 SKUは2~30秒のdriving_audioを1本使用できますが、出力は15秒以下です。自由なマルチモーダル参照ではありません。 |
prompt | ショット、動き、音声を自然言語で記述します。構造化shotsパラメーターはありません。 |
よくある質問
WAN 3.0は最大30秒とマルチモーダル参照に対応します。WAN 3.0 Primeは提供元の高速版で、作成モードは同じですが、実測の速度倍率は保証しません。WAN 2.7にはテキスト動画・画像動画専用SKUがあります。
APIのコード例を見るWAN 3.0の480p出力は$0.047/秒からです。上の4 SKUと解像度を比較してください。参照動画には同じ解像度単価で入力秒数分が加算され、出力のみの試算には含まれません。音声のオン・オフでWAN 3.0/Primeの料金は変わりません。
APIのコード例を見るBetterTokenに登録またはログインし、Workspaceでキーを用意するか再利用し、残高をチャージしてご自身のアプリからAPIを呼び出します。これはBetterTokenの中継キーで、権限と残高が必要です。Alibabaコンソールのキーは発行しません。
APIのコード例を見るWAN 3.0/Prime:2~30秒、480p/720p/1080p。動画入力がある場合は入力と出力の合計30秒以内です。WAN 2.7:2~15秒、720p/1080p。WANの4K出力は提供していません。
APIのコード例を見るWAN 3.0・Primeは音声のオン・オフを同額で利用できます。WAN 2.7は同期音声をデフォルトで生成し、audioを省略するかprovider_defaultを指定します。オン・オフ設定はありません。
APIのコード例を見る動画・音声の参照で動き、スタイル、音声を指定できます。WAN 3.0/Prime:画像10枚、音声5本まで。各動画・音声1~15秒、種類ごとに15秒以内、合計20ファイルです。フレームと自由参照は併用不可。WAN 2.7 T2Vはテキスト、I2Vは開始フレーム必須・終了フレーム任意。各2.7 SKUはdriving_audioを1本使用でき、自由なマルチモーダル参照には対応しません。
APIのコード例を見る失敗が確認された生成には課金しません。失敗・キャンセルの確認後、会計処理により元の資金源へ解放・返金しますが、タスクの状態だけでは返金完了を意味しません。受理が不明な場合は照合が必要です。生成成功後の配信失敗やファイル期限切れは別の扱いです。
APIのコード例を見るStripe経由のカード決済、またはUSDTでお支払いいただけます。利用可能な方法は決済時に確認できます。
APIのコード例を見る