30秒の広告・ストーリー ↗
Seedance 2.5・WAN 3.0で最大30秒の広告やストーリーを作成します。
BETTERTOKEN · AI VIDEO API
APIキー1つ、4つのモデルファミリー、秒単位の料金。Seedance、Kling、MiniMax H3、WANを選び、同じ非同期APIで開発できます。
提供中の10 SKUを比較します。料金は各SKUの最低出力単価で、サンプルの設定とは別です。
| モデル | 動画1本の秒数 | 解像度 | 対応する入力 | 音声 | 用途 | ||
|---|---|---|---|---|---|---|---|
Seedance 2.5 ↗seedance-2.5-cn | $0.176 / 秒480p | 4–30 秒 | 480p / 720p / 1080p1080p | テキスト · 開始/開始+終了フレーム · 画像30枚以下 · 動画・音声参照 | ネイティブ音声 · オン/オフ | 30秒のストーリー | 入力と音声
|
Seedance 2.0 ↗seedance-2.0-cn | $0.097 / 秒480p | 4–15 秒 | 480p / 720p / 1080p / 4K4K | テキスト · 開始/開始+終了フレーム · 画像9枚以下 · 動画・音声参照。音声参照には画像か動画が必要。 | ネイティブ音声 · オン/オフ | 4K出力 | 入力と音声
|
Seedance Fast ↗seedance-2.0-fast-cn | $0.078 / 秒480p | 4–15 秒 | 480p / 720p720p | テキスト · 開始/開始+終了フレーム · 画像9枚以下 · 動画・音声参照。音声参照には画像か動画が必要。 | ネイティブ音声 · オン/オフ | 低解像度の試作 | 入力と音声
|
Seedance Mini ↗seedance-2.0-mini-cn | $0.048 / 秒480p | 4–15 秒 | 480p / 720p720p | テキスト · 開始/開始+終了フレーム · 画像9枚以下 · 動画・音声参照。音声参照には画像か動画が必要。 | ネイティブ音声 · オン/オフ | 低コストの試作 | 入力と音声
|
Kling 3.0 ↗kling-3.0 | $0.099 / 秒Standard 720p · 音声オフ | 3–15 秒 | Standard 720p / Pro 1080p / 4K4K | テキスト · 開始/開始+終了フレーム · カスタムショット6つ以下 | ネイティブ音声 · オン/オフ | 構造化された絵コンテ | 入力と音声
|
MiniMax H3 ↗minimax-h3 | $0.050 / 秒768p | 4–15 秒 | 768p / 2K2K | テキスト · 開始/終了/両方 · 画像9枚以下 · 動画・音声参照 | 込み(常時オン) | 2K · 終了フレーム単独入力 | 入力と音声
|
WAN 3.0 ↗wan-3.0 | $0.047 / 秒480p | 2–30 秒 | 480p / 720p / 1080p1080p | テキスト · 開始/開始+終了フレーム · 画像10枚以下 · 動画・音声参照 | ネイティブ音声 · オン/オフ | 参照を基にした30秒クリップ | 入力と音声
|
WAN 3.0 Prime ↗wan-3.0-prime | $0.067 / 秒480p | 2–30 秒 | 480p / 720p / 1080p1080p | テキスト · 開始/開始+終了フレーム · 画像10枚以下 · 動画・音声参照 | ネイティブ音声 · オン/オフ | 提供元による高速版の位置付け | 入力と音声
|
WAN 2.7 T2V ↗wan-2.7-t2v | $0.094 / 秒720p | 2–15 秒 | 720p / 1080p1080p | テキスト · 任意の駆動音声 · 5つの固定比率 | 込み(常時オン) | テキスト動画専用フロー | 入力と音声
|
WAN 2.7 I2V ↗wan-2.7-i2v | $0.098 / 秒720p | 2–15 秒 | 720p / 1080p1080p | 開始/開始+終了フレーム · 任意の駆動音声 · 入力比率に従う | 込み(常時オン) | 画像動画専用フロー | 入力と音声
|
開始料金は最低解像度で、Klingは音声オフの場合です。
各モデルの対応機能を用途に合わせて選びます。
Seedance 2.5・WAN 3.0で最大30秒の広告やストーリーを作成します。
Kling 3.0で最大6ショットに個別のプロンプトと長さを指定します。
Seedance 2.0・Kling 3.0で4Kの最終出力を作成します。
Seedance Mini・WAN 3.0で480pの試作を行います。
Seedance 2.5で最大30枚、WAN 3.0で10枚、H3で9枚の画像を使い、被写体とスタイルを指定します。
MiniMax H3でテキスト、開始フレーム、終了フレーム、または両方から、ネイティブ音声付き2K動画を作成します。
開発者向けクイックスタート
見積もり → 作成 → 状態確認 → ダウンロード。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.mp4フローは同じですが、対応するJSONフィールドはモデルごとに異なります。コードは下の計算機の選択に連動します。
| パラメーター | 値と制限 |
|---|---|
共通ルート | POST /v1/videos/quote → POST /v1/videos → GET /v1/videos/{id} → GET /v1/videos/{id}/content。Bearerキー、JSON本文。作成時はIdempotency-Keyを維持します。 |
Seedance 2.5 / 2.0 / Fast / Mini | 4~30 / 4~15 / 4~15 / 4~15秒。解像度(output.resolution):最大1080p / 4K / 720p / 720p。音声:オン/オフ(audio)。参照画像最大30 / 9 / 9 / 9枚。2.0 / Fast / Miniのみ、音声参照には画像または動画が必要です。 |
Kling 3.0 | 3~15秒。出力モード(provider_options.kling.mode):Standard 720p / Pro 1080p / 4K(std / pro / 4k)。output.resolutionなし。音声:オン/オフ(audio)。テキストの比率:16:9 / 9:16 / 1:1。フレームは入力に従います。最大6ショット(shots)、shotsと終了フレームの併用不可。 |
MiniMax H3 | 4~15秒 · 768p / 2K。ネイティブ音声がデフォルトで、オン/オフ設定なし。audioを省略するか{mode:"provider_default"}を使用。テキスト:固定比率、画像:adaptive(output.aspect_ratio)。終了フレーム単独入力に対応。参照画像9枚、動画3本(契約上の上限。全組み合わせは未検証)、音声3本まで。各2~15秒、種類ごとに15秒以内、合計12ファイル。 |
WAN 3.0 / Prime | 2~30秒 · 480p / 720p / 1080p。音声:オン/オフ(audio)。参照画像10枚、動画5本(契約上の上限。全組み合わせは未検証)、音声5本まで。各1~15秒、種類ごとに15秒以内、合計20ファイル。入力動画+出力は30秒以内。端点フレームと参照は別モードです。 |
WAN 2.7 T2V | 2~15秒 · 720p / 1080p。テキスト動画生成(text_to_video)。比率:16:9 / 9:16 / 1:1 / 4:3 / 3:4。ネイティブ音声がデフォルトで、オン/オフなし。audioを省略するか{mode:"provider_default"}を使用。任意の駆動音声(driving_audio):1本。 |
WAN 2.7 I2V | 2~15秒 · 720p / 1080p。画像動画生成(image_to_video)。開始フレーム必須、終了フレーム任意(mediaの各項目に一意のidとtype、role、sourceが必要)。比率は画像に従う(output.aspect_ratioなし)。ネイティブ音声がデフォルトで、オン/オフなし。audioを省略するか{mode:"provider_default"}を使用。任意の駆動音声(driving_audio):1本。 |
料金
予算に合わせてモデルと設定を選びます。
実際の出力秒数で課金し、参照動画には選択した解像度の単価を適用します。
提供中の10 SKU · 1つのキーと残高
料金スナップショット · 2026-11-09モデル、解像度、長さ、クリップ数を選択します。
動画モデル
同じプロンプトのサンプルを比較し、各モデルを詳しく確認します。
英語原文 · 生成用プロンプト
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.
よくある質問
30秒クリップにはSeedance 2.5・WAN 3.0、最大6つの構造化ショットにはKling、4KにはSeedance 2.0・Kling、低コストの出力にはMini・WAN 480p、終了フレーム単独入力や標準ネイティブ音声付き2KにはH3を使います。
APIのコード例を見るはい。BetterTokenの中継キーと残高1つで、権限と残高の範囲内で提供中のモデルを利用できます。BetterTokenはモデル提供元と提携していない独立プロバイダーです。
APIのコード例を見る実際の出力1秒ごとに課金します。参照動画には入力秒数分、H3では6枚目以降の画像に1枚ごとの料金が加算される場合があります。Klingは長さの許容分として約1秒分を一時予約し、未使用分を精算時に解放します。定額の追加料金ではありません。
APIのコード例を見る失敗が確認された生成には課金しません。失敗・キャンセルの確認後、会計処理により元の資金源へ解放・返金しますが、タスクの状態だけでは返金完了を意味しません。受理が不明な場合は照合が必要です。生成成功後の配信失敗やファイル期限切れは別の扱いです。
APIのコード例を見るStripe経由のカード決済、またはUSDTでお支払いいただけます。利用可能な方法は決済時に確認できます。
APIのコード例を見る長さ、出力解像度、入力モード、ネイティブ音声の制御が異なります。Seedance 2.5は参照画像30枚、WAN 3.0は10枚、H3は9枚に対応。Klingは構造化ショット6つに対応します。H3・WAN 2.7は音声がデフォルトでオン・オフ設定がありません。上の各SKUの上限を比較してください。
APIのコード例を見る見積もり→作成→状態確認→ダウンロードの共通ルートを使い、operation、解像度またはKlingモード、長さ、縦横比、media、audioを新モデルに合わせます。モデル名の変更だけでは不十分です。サンプルは計算機に連動します。
APIのコード例を見るBetterTokenに登録またはログインし、Workspaceでキーを用意するか再利用し、残高をチャージしてご自身のアプリからAPIを呼び出します。BetterTokenの中継キーで、権限と残高が必要です。リクエストを見積もり、永続保存した冪等性キーで作成し、completedまで状態を確認して所有者の認証でダウンロードします。
APIのコード例を見るBETTERTOKEN · VIDEO GENERATION API
初回チャージ:$3.00のお支払いで残高$5.00