Skip to content
NEWNano Banana 2.1 が登場 — Google の最新画像生成モデル、1 枚 $0.0336 から、ネイティブ 4K、前世代の約半額モデルを見る
HopBase
← ブログに戻る

Kling 4.0 API(kling-v4)の使い方:パラメータ・料金・Python

結論から:Kling 4.0 は HopBase でモデル ID kling-v4 として利用できます。テキストのプロンプト、または先頭フレーム画像 1 枚から、3〜30 秒の動画を 720p または 1080p で生成し、アスペクト比は 16:9・9:16・1:1・21:9 から選べます。出力には常に音声トラックが入り、audio: false を送っても音声は消えず、料金も下がりません。呼び出しは非同期タスクです。POST https://api.hop-base.com/v1/video/generate で投稿して kt で始まるタスク ID を受け取り、GET /v1/video/tasks/{task_id} を completed か failed になるまでポーリングします。通常は数分で完了します。公式定価は 720p が 1 秒 $0.1471、1080p が 1 秒 $0.2206 で、出力秒数で課金され、失敗したタスクは課金されません。参照画像・参照動画・2K/4K は kling-v4 ではまだ使えません。結果 URL は 24 時間有効です。

Kling 4.0 で変わったこと、3.0 を使い続ける場面

Kling 4.0 は 2026-10-29 に HopBase で提供を開始しました。同じキーで使える Kling 3.0 系と比べると、1 タスクで最長 30 秒(3.0 は 15 秒)まで生成でき、21:9 のシネマスコープ比が加わり、出力は常に音声付きです。一方で入力はシンプルで、テキストと任意の先頭フレーム画像 1 枚だけです。

kling-v4 kling-v3 kling-v3-omni
尺 3〜30 秒 3〜15 秒 3〜15 秒
解像度 720p / 1080p 720p / 1080p / 2K / 4K 720p / 1080p / 2K / 4K
アスペクト比 16:9 / 9:16 / 1:1 / 21:9 16:9 / 9:16 / 1:1 16:9 / 9:16 / 1:1
音声 常に付く あり/なしを選択 あり/なしを選択
画像入力 先頭フレームのみ 先頭/末尾フレーム、参照画像 最大 6 枚 先頭/末尾フレーム、参照画像
参照動画 非対応 非対応 対応(feature)
被写体 / マルチショット shots 非対応 対応 対応
公式定価(1080p・音声あり) $0.2206 / 秒 $0.1765 / 秒 $0.1471 / 秒

15 秒を超える 1 本の動画、21:9 の出力、毎回音声付きの出力が欲しいときは kling-v4。参照画像、参照動画、カスタム被写体によるキャラクターの一貫性、マルチショット、2K/4K が必要なら kling-v3 / kling-v3-omni を使います(shots と被写体は Kling 3.0 マルチショットガイド(英語)を参照)。画質の優劣についてはここでは主張しません。同じプロンプトで両方を試して比較してください。

料金:出力 1 秒あたりの課金

kling-v4 は出力動画の秒数 × 解像度ごとの単価で課金され、音声の有無で料金は変わりません。kling-v4 モデルカードの公式定価は次のとおりです。

解像度 公式定価 5 秒 10 秒 30 秒
720p $0.1471 / 秒 約 $0.74 約 $1.47 約 $4.41
1080p $0.2206 / 秒 約 $1.10 約 $2.21 約 $6.62

実際の単価はキーに含まれるグループによって決まり、ログイン後のモデル広場に表示されます。課金されるのは正常に完了したタスクだけです。完了後のレスポンスの usage.cost_usd が、そのタスクで残高から実際に差し引かれた金額です。Kling の他モデルの料金は料金ページにあります。

ステップ 1a:テキストから動画

Kling の全モデルは同じエンドポイントを使います。HopBase のキーを Bearer トークンとして送ります。

curl https://api.hop-base.com/v1/video/generate \
  -H "Authorization: Bearer sk-YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "kling-v4",
    "prompt": "雨の夜のネオン街をゆっくりドリーで進むショット、路面に映る光、遠くの車の音",
    "duration": 10,
    "resolution": "1080p",
    "aspect_ratio": "21:9"
  }'
  • model:kling-v4。
  • prompt:画像がない場合は必須、最大 2,500 文字。
  • duration:3〜30 の整数秒。省略時は 5 秒。
  • resolution:720p または 1080p。料金帯もこれで決まります。省略時は 720p。
  • aspect_ratio:16:9・9:16・1:1・21:9。省略してもゲートウェイは補完しないので、テキストから動画では明示してください。
  • audio:省略可。出力は常に音声付きで、料金も変わりません。

投稿に成功すると 202 が返り、トップレベルの id にタスク ID が入ります。

{
  "id": "kt57xYOUR_TASK_ID",
  "object": "video.generation.task",
  "model": "kling-v4",
  "status": "queued",
  "created": 1790000000,
  "billing_bucket": "1080p_..."
}

ステップ 1b:先頭フレーム画像から動画

静止画を動かすには、images[] に入れて usage: "first_frame" を指定します。

curl https://api.hop-base.com/v1/video/generate \
  -H "Authorization: Bearer sk-YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "kling-v4",
    "prompt": "カメラがゆっくり寄り、コーヒーカップから湯気が立ちのぼる",
    "duration": 8,
    "resolution": "720p",
    "images": [
      { "url": "https://cdn.example.com/coffee.png", "usage": "first_frame" }
    ]
  }'
  • 出力のアスペクト比は入力画像に従い、aspect_ratio は効きません。縦長にしたい場合は先に画像を 9:16 にトリミングします。
  • 各画像は url か file_id のどちらか 1 つだけを持ちます。url は公開アクセスできる http(s) の絶対 URL が必要で、相対パス、file://、プライベート/ループバック IP、認証情報入りの URL は投稿時に拒否されます。
  • usage は必須です。kling-v4 は先頭フレームのみで、usage: "reference" を送ると 400 model kling-v4 does not support reference-based generation が返ります。

ステップ 2:終了までポーリング

curl https://api.hop-base.com/v1/video/tasks/kt57xYOUR_TASK_ID \
  -H "Authorization: Bearer sk-YOUR_KEY"

status は queued → processing と進み、completed か failed で終わります。終端はこの 2 つだけなので、それ以外は実行中として扱います。完了時のレスポンス例:

{
  "id": "kt57xYOUR_TASK_ID",
  "status": "completed",
  "outputs": ["https://api.hop-base.com/..."],
  "usage": { "bucket": "1080p_...", "billed_seconds": 10, "cost": ..., "cost_usd": 2.206, "currency": "CNY" }
}

outputs は api.hop-base.com 上の署名付き URL で、完了から 24 時間有効です。再取得しても延長されず、期限切れは 410 になるので、すぐに自分のストレージへ保存してください。usage.cost_usd は米ドル残高から差し引かれた額、cost は同じ金額の人民元表記です。失敗したタスクも HTTP 200 で返り、status: "failed" と安定した error.code が付きます。

Python の完全なサンプル

import time
import requests

API = "https://api.hop-base.com/v1"
HEADERS = {"Authorization": "Bearer sk-YOUR_KEY"}

resp = requests.post(f"{API}/video/generate", headers=HEADERS, json={
    "model": "kling-v4",
    "prompt": "日差しの森の小川を紙の舟が流れていく、鳥のさえずりと水の音",
    "duration": 10,
    "resolution": "1080p",
    "aspect_ratio": "16:9",
})
resp.raise_for_status()
task_id = resp.json()["id"]

while True:
    task = requests.get(f"{API}/video/tasks/{task_id}", headers=HEADERS).json()
    if task["status"] == "completed":
        with requests.get(task["outputs"][0], stream=True) as r:
            r.raise_for_status()
            with open(f"{task_id}.mp4", "wb") as f:
                for chunk in r.iter_content(chunk_size=1 << 20):
                    f.write(chunk)
        print("saved", f"{task_id}.mp4", "charged $", task["usage"]["cost_usd"])
        break
    if task["status"] == "failed":
        err = task.get("error", {})
        raise RuntimeError(f'{err.get("code")}: {err.get("message")}')
    time.sleep(10)

Kling のリクエストには Webhook のフィールドがないため、追跡はポーリングで行います。作成から 2 時間経っても終わらないタスクは timeout で失敗扱いとなり、課金されません。タスクはキャンセルできません。

よくあるエラー

リクエストボディは厳密に検証され、投稿時のエラーはタスクを作らず課金もされません。

送った内容 error.message
duration が 3〜30 の範囲外 model kling-v4 supports 3 to 30 seconds, got 40
usage: "reference" の画像 model kling-v4 does not support reference-based generation
usage のない画像 images[0].usage is required for standard Kling video requests
resolution に "2k" / "4k" model "kling-v4" does not support billing bucket "..." for this request
OpenAI 由来の size などのフィールド request body does not match the JSON contract: json: unknown field "size"
プロンプトも画像もない prompt and input media cannot both be empty

402(code が insufficient_balance)は、残高から実行中タスクと今回の見積もりを引くと足りないという意味です。素材そのものは Kling がタスク実行中に検査するため、取得できない画像や規格外の画像は受け付け後、数分で reference_input_invalid として失敗します。審査で拒否された場合は input_sensitive です。いずれも課金されません。エラーの全一覧は Kling 動画 API ドキュメントにあります。

よくある質問

Kling 4.0 のモデル ID は?

kling-v4 です。有料のタスクを送る前に、キーで GET /v1/models を呼び、含まれていることを確認してください。

最長何秒まで生成できますか?

1 タスク 3〜30 秒(整数秒)です。duration を省略すると 5 秒になります。

2K / 4K に対応していますか?

まだ対応していません。kling-v4 は 720p と 1080p のみです。2K/4K は kling-v3 か kling-v3-omni を使ってください。

音声をオフにできますか?

できません。audio: false でも音声トラックが付き、料金も同じです。無音ファイルが必要ならダウンロード後に音声を取り除いてください。

参照画像や参照動画は使えますか?

使えません。入力はテキストと任意の先頭フレーム画像 1 枚だけです。参照画像・参照動画・カスタム被写体・マルチショットが必要なら kling-v3-omni か kling-v3 を使います。

画像から動画で aspect_ratio が効かないのはなぜ?

先頭フレームを渡すと、出力は入力画像のアスペクト比に従い、aspect_ratio は無視されます。投稿前に画像をトリミングしてください。

生成にはどれくらいかかりますか?

通常は数分です。5〜10 秒間隔でポーリングしてください。作成から 2 時間で終わらないタスクは timeout で失敗し、課金されません。

10 秒・1080p の動画はいくらですか?

公式定価で 10 × $0.2206 ≈ $2.21 です。各タスクの実際の請求額は usage.cost_usd で返り、利用履歴にも記録されます。

利用を始めるには?

HopBase コンソールで Kling を含むグループ付きの API キーを作成し、GET /v1/models に kling-v4 が出ることを確認します。他の動画モデルは動画の概要を参照してください。Seedance や Hailuo と同じキーで比べたい場合は、動画生成 API の比較・実装ガイドにモデル共通のポーリング処理をまとめています。