本稿では、カスタムパラメータを入力してKling公式の動画を生成できるKling Videos Generation APIの接続方法について説明します。Documentation Index
Fetch the complete documentation index at: https://docs.xhuoapi.ai/llms.txt
Use this file to discover all available pages before exploring further.
申請手順
APIを使用するには、まず Kling Videos Generation API の該当ページでサービスを申請する必要があります。ページにアクセスしたら、「Acquire」ボタンをクリックします。以下の図のように表示されます:
ログインまたは登録していない場合は、自動的にログインページにリダイレクトされ、登録・ログイン後に元のページに戻ります。
初回申請時には無料枠が付与され、このAPIを無料で利用可能です。
基本的な使い方
まず基本的な使い方を理解しましょう。入力するのはプロンプトprompt、生成動作 action、初期フレームの参照画像URL start_image_url、およびモデル model です。これらを入力することで処理結果を得られます。最初に action フィールドを簡単に渡します。値は text2video で、主に3つの動作を含みます:テキストから動画生成(text2video)、画像から動画生成(image2video)、動画の拡張(extend)。次にモデル model を指定します。現在利用可能なモデルは kling-v1, kling-v1-6, kling-v2-master, kling-v2-1-master, kling-v2-5-turbo, kling-v2-6, kling-v3, kling-v3-omni, kling-video-o1 です。具体的な内容は以下の通りです:

accept:受け取りたいレスポンス形式。ここではapplication/json(JSON形式)を指定。authorization:API呼び出し用のキー。申請後にドロップダウンから選択可能。
model:動画生成モデル。主にkling-v1,kling-v1-6,kling-v2-master,kling-v2-1-master,kling-v2-5-turbo,kling-v2-6,kling-v3,kling-v3-omni,kling-video-o1。mode:動画生成モード。標準モードstd、高速モードpro、ネイティブ4Kモード4k。4kはkling-v3とkling-v3-omniのみ対応し、camera_control(カメラ操作)とは非互換。action:動画生成タスクの動作。テキストから動画生成(text2video)、画像から動画生成(image2video)、動画拡張(extend)。start_image_url:image2video動作時に必須の初期フレーム参照画像URL。end_image_url:image2video時のオプションで、終了フレーム指定。duration:動画の長さ(秒)。kling-v3とkling-v3-omniは3~15秒(整数)に対応、その他モデルは5秒または10秒のみ対応。generate_audio:音声を同時生成するかどうかのオプション(ブール値)。kling-v3、kling-v3-omni、kling-v2-6(proモードのみ)対応。デフォルトはfalse。aspect_ratio:動画のアスペクト比。オプションで16:9、9:16、1:1をサポート。デフォルトは16:9。cfg_scale:関連度の強度。範囲は [0,1]。値が大きいほどプロンプトに忠実。camera_control:オプション。カメラ動作制御パラメータ。type/simple プリセットや horizontal、vertical、pan、tilt、roll、zoom などの設定をサポート。negative_prompt:オプション。生成したくない内容の逆プロンプト。最大200文字。element_list:主体参照リスト。モデルkling-video-o1のみ対応。詳細は公式ドキュメント参照。video_list:参照動画。URL経由で取得。モデルkling-video-o1のみ対応。詳細は公式ドキュメント参照。prompt:プロンプト。callback_url:結果コールバック用URL。

success:動画生成タスクの状態。task_id:動画生成タスクID。video_id:動画生成タスクの動画ID。video_url:動画生成タスクの動画URL。duration:動画の長さ。state:動画生成タスクの状態。
data 内の動画URLから生成されたKling動画を取得できます。
また、対応する接続コードを生成したい場合は、直接コピー可能です。例えばCURLコードは以下の通りです:
モデル能力マトリックス
モデルごとにパラメータ対応状況が大きく異なります。以下のマトリックスは Kling公式 video models ドキュメント から整理したものです。呼び出し前に現在のmodel / mode / duration の組み合わせが必要な機能をサポートしているか確認してください。そうでない場合、上流から model/mode/duration(...) is not supported with image_tail などのエラーが返されます。
| モデル | モード | end_image_url(初終フレーム) | generate_audio(伴奏) | camera_control(カメラ操作) | 備考 |
|---|---|---|---|---|---|
kling-v1 | std / pro | ✅ duration=5 のみ | ❌ | ✅ duration=5 のみ | extend は negative_prompt と cfg_scale 非対応 |
kling-v1-6 | std | ❌ | ❌ | ❌ | 複数画像動画生成、extend は全モード対応 |
kling-v1-6 | pro | ✅ | ❌ | ❌ | |
kling-v2-master | — | ❌ | ❌ | ❌ | 単一モード、duration=5/10 のみ |
kling-v2-1-master | — | ❌ | ❌ | ❌ | 単一モード、duration=5/10 のみ |
kling-v2-5-turbo | std | ❌ | ❌ | ❌ | |
kling-v2-5-turbo | pro | ✅ | ❌ | ❌ | |
kling-v2-6 | std | ❌ | ❌ | ❌ | |
kling-v2-6 | pro | ✅ | ✅ | ❌ | 非v3モデルで唯一伴奏対応 |
kling-v3 | std / pro | ✅ | ✅ | ✅ | duration は3~15秒 |
kling-v3 | 4k | ✅ | ✅ | ❌ | 4Kモードはカメラ操作非対応 |
kling-v3-omni | std / pro / 4k | ✅ | ✅ | ❌ | |
kling-video-o1 | std / pro | ✅ | ❌ | ❌ | duration=5/10 のみ対応 |
mode=4kはkling-v3とkling-v3-omniのみ対応し、camera_control(カメラ操作)とは排他。end_image_urlはaction=image2videoの場合に限りstart_image_urlと併用可能。end_image_urlのみ(start_image_urlなし)は拒否される。kling-v3/kling-v3-omniは任意の3~15秒の整数durationを受け入れる。その他モデルは5秒または10秒のみ。generate_audioはデフォルトfalse。対応はkling-v3、kling-v3-omni、kling-v2-6(proモードのみ)。
動画拡張機能
既に生成したKling動画をさらに生成したい場合は、パラメータaction を extend に設定し、続きの動画を生成したい動画IDを入力します。動画IDは基本的な使い方で取得可能です。以下の図のように:

注意:ここでの video_id は生成済み動画のIDです。動画生成方法が不明な場合は上記の基本的な使い方を参照してください。
次に、拡張に必要なプロンプトを入力して動画をカスタム生成します。指定可能な内容は以下の通りです:
model:動画生成モデル。主にkling-v1、kling-v1-5、kling-v1-6。mode:動画生成モード。標準モードstd、高速モードpro、ネイティブ4Kモード4k(kling-v3とkling-v3-omniのみ対応、カメラ操作とは非互換)。duration:動画の長さ。主に5秒または10秒。start_image_url:image2video動作時に必須の初期フレーム参照画像URL。prompt:プロンプト。


非同期コールバック
Kling Videos Generation APIの生成時間は比較的長く、約1~2分かかります。APIが長時間応答しない場合、HTTPリクエストは接続を維持し続け、システムリソースを余計に消費します。そこで本APIは非同期コールバックをサポートしています。 全体の流れは、クライアントがリクエスト時にcallback_url フィールドを追加指定します。APIは即座に task_id を含む結果を返します。タスク完了後、生成された動画結果がPOST JSON形式でクライアント指定の callback_url に送信されます。task_id も含まれており、タスク結果をIDで紐付け可能です。
以下に具体的な操作例を示します。
まずWebhookコールバックはHTTPリクエストを受け取るサービスで、開発者は自身のHTTPサーバーURLに置き換えてください。ここではデモ用に公開Webhookサイト https://webhook.site/ を利用します。サイトを開くとWebhook URLが取得できます。以下の図の通りです:
このURLをコピーし、Webhookとして使用します。例:https://webhook.site/624b2c78-6dbd-4618-9d2b-b32eade6d8c3
次に、callback_url フィールドに上記Webhook URLを設定し、その他のパラメータを入力します。内容は以下の図の通りです:

https://webhook.site/624b2c78-6dbd-4618-9d2b-b32eade6d8c3 で生成動画結果を確認できます。以下の図の通りです:
内容は以下の通りです:
task_id フィールドがあり、他のフィールドも前述と同様です。このIDでタスクを関連付けられます。
エラー処理
API呼び出し時にエラーが発生した場合、APIは対応するエラーコードとメッセージを返します。例:400 token_mismatched:不正なリクエスト。パラメータ不足や不正の可能性。400 api_not_implemented:不正なリクエスト。パラメータ不足や不正の可能性。401 invalid_token:認証エラー。無効または欠落した認証トークン。429 too_many_requests:リクエスト過多。レート制限超過。500 api_error:サーバー内部エラー。

