GPT-5.6 Luna price down 80%, Terra down 20% →

Kling への直接オンボーディングなしで Kling API を利用する方法:2026年版ガイド

CometAPI
AnnaAug 4, 2026
Kling への直接オンボーディングなしで Kling API を利用する方法:2026年版ガイド

TL;DR CometAPI のアカウントと API キーで、別途 Kling の開発者オンボーディングを行わずに、CometAPI 経由でサポート対象の Kling 動画モデルにアクセスできます。現在のテキストから動画ルートは POST /kling/v1/videos/text2video です。レスポンスはタスク ID を返し、バックエンドがポーリングして succeed または failed に到達するまで待機します。モデルの提供状況、パラメータ、料金、アカウント適格性は変動し得るため、本番導入前にライブのモデルカタログと API ドキュメントで必ず確認してください。

Direct answer

実務的な経路は CometAPI の Kling モデルカタログ です。必要な Kling モデルがあなたの CometAPI アカウントで利用可能なら、サーバーは CometAPI の API キーで認証し、対応する Kling 互換エンドポイントを呼び出せます。この経路では、統合手順の一部として別個の Kling API アプリケーションは不要です。

この区別は、すでに他モデルで CometAPI を使っているチームにとって重要です。アプリケーションは 1 つの認証情報管理面と 1 つのプロバイダー関係を維持したまま、Kling の動画ワークフローを追加できます。ただし、Kling の動画特有のリクエストスキーマと非同期タスクのライフサイクルは引き続き必要です。「1 つの API キー」であっても、すべてのプロバイダーが同一のリクエストボディを共有するわけではありません。

本記事は、最小構成で有用な統合であるテキストから動画に焦点を当てます。CometAPI には画像から動画やその他の Kling ワークフローも記載されていますが、それぞれ固有のエンドポイントとパラメータ制約があります。まずは 1 つの検証済みパスから開始し、最新ドキュメントを確認したうえで段階的に機能を追加してください。

Why this route can be useful for a development team

即効性のある利点は、魔法ではなく運用面です。すでに CometAPI を利用しているチームは、別のプロバイダー統合を新たに作成したり、追加の認証情報を配布したり、別個のアカウント管理フローを構築したりすることなく、利用可能な Kling ワークフローを追加できます。これにより、プラットフォームが維持すべきシークレット、請求関係、プロバイダー固有のクライアント設定の数を減らせます。

第 2 の利点はアーキテクチャです。アプリケーションは、プロンプト、ワークフロー、モデル、オプション、ジョブ状態という小さな内部の動画生成コントラクトを公開し、プロバイダーアダプターがそのコントラクトをドキュメント化された Kling リクエストへ変換できます。将来別の動画モデルを評価する場合でも、エンドポイントパスやパラメータ、出力メタデータが異なっても、プロダクト向けのジョブモデルは安定させられます。

同じく重要な制約として、アクセスレイヤーを統合しても基盤モデルが相互交換可能になるわけではありません。プロンプトの挙動、受け付けるメディア、レイテンシ、料金、安全性ポリシー、結果スキーマはそれぞれ異なり得ます。設定やテストで差異を見える化し、サポートされない仮定で覆い隠さないでください。

What this access route changes—and what it does not

何が変わるか。 CometAPI キーを作成・管理し、CometAPI の Kling 互換 API へリクエストを送信し、利用状況を CometAPI 側で追跡します。この経路では、当該アクセスに関して Kling への直接オンボーディング手順が不要になります。

何が変わらないか。 Kling は引き続き基盤のモデルファミリーです。プロバイダー固有のパラメータ、生成挙動、利用規約、モデル可用性、出力特性は依然として重要です。CometAPI のドキュメントにも、プロバイダーごとにリクエスト/レスポンスのフィールドが異なる可能性があると記載されています。実装の契約としてライブのエンドポイントリファレンスを扱ってください。

コミット前に検証すべきこと。 必要なモデル ID にアカウントがアクセス可能か、最新の価格とレート制限を確認し、少数の認証済みテストを実施してください。古いブログ記事やキャッシュされた例で見かけたモデル名を前提に本番ワークフローを設計しないでください。

Before you start

CometAPI アカウント、サーバー側に保管する API キー、非同期ジョブを実行できるバックエンドが必要です。キーは COMETAPI_KEY のような環境変数に保存し、ブラウザやモバイルのクライアントコードで露出させないでください。

  1. Kling モデルカタログ を開き、使用予定のモデルが現在アカウントで利用可能か確認します。
  2. 最新の Kling テキストから動画 API リファレンス を確認します。検証時点の例では kling-v3 を使用しています。
  3. CometAPI コンソール でサーバーサイドの API キーを作成し、実行環境に設定します。
  4. タスク ID と最終的な動画の保存先を決めます。生成リクエストは動画ファイルではなくタスクを返します。

Choose the Kling workflow before you design the request

プロダクトがすでに持つアセットから設計を始めてください。ユーザー入力が文章のみならテキストから動画が直接の経路です。保持すべき静止画像があるなら、別途ドキュメント化されている画像から動画ルートを使用します。テキストから動画のリクエストに画像フィールドを追加して、API がワークフローを推論することを期待しないでください。

WorkflowCurrent create pathUse it when
Text to videoPOST /kling/v1/videos/text2video入力が文章によるシーンやモーションのコンセプトで、保持すべき元画像が存在しない場合。
Image to videoPOST /kling/v1/videos/image2video1 枚の元画像を含み、その画像を生成モーションとビジュアルの基調として反映させたい場合。

現行の画像から動画リファレンス は公開画像 URL または base64 画像文字列を受け付け、非同期タスクを返します。より特化した Kling ワークフローにはそれぞれ個別のページとリクエスト制約があります。製品要件と最新ドキュメントが追加のアダプターを正当化する場合に限り、1 つずつ追加してください。

最初の本番検証では、1 つのワークフロー、1 つの検証済みモデル ID、短い再生時間、代表的な少数のプロンプトを使ってください。これにより、主観的な出力評価と切り離して、アカウントアクセスとタスクオーケストレーションを検証できます。パイプラインが安定したら、評価セットを固定してモードやモデルを比較し、同一テストで複数の変数を変えないでください。

Make your first Kling text-to-video request

現在のテキストから動画エンドポイントは JSON と Bearer 認証を受け付けます。短いプロンプトと最小の再生時間から始めてください。以下のリクエストは、現行の CometAPI リファレンスに記載のフィールドのみを使用しています。

curl https://api.cometapi.com/kling/v1/videos/text2video \
  -H "Authorization: Bearer $COMETAPI_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "prompt": "A small ceramic cup on a wooden table, steam rising in soft morning light",
    "model_name": "kling-v3",
    "mode": "std",
    "duration": "5",
    "sound": "off"
  }'

成功すると、data.task_id とタスクステータスを含むオブジェクトが返ります。そのタスク ID をアプリケーションのジョブ記録に保存してください。動画のレンダリング中に HTTP 接続を保持しないでください。

FieldDocumented valuesImplementation note
model_name現行の列挙値には kling-v3 とそれ以前の系統を含む本番配備前にライブの列挙値とアカウントでの可用性を確認してください。
duration5 or 10ワークフロー検証にはまず 5 秒から始めてください。
aspect_ratio16:9, 9:16, 1:1既定値が配信面に合致する場合を除き、省略しないでください。
modestd or proリファレンスでは pro は高品質かつ高コストと説明されています。
soundon or off対応するモデル系統でのみ音声生成が適用されます。

Handle the asynchronous task safely

Kling の生成は非同期です。テキストから動画では、GET /kling/v1/videos/text2video/{task_id} をポーリングします。CometAPI のタスクリファレンスによれば、レスポンスはタスクを直接返す場合と data エンベロープ内に含める場合があるため、例では両方の形を正規化しています。また、非終端状態は固定の中間ステータス一覧を仮定せず「待機継続」として扱います。

import os
import time
import requests

API_KEY = os.environ["COMETAPI_KEY"]
BASE_URL = "https://api.cometapi.com/kling/v1/videos/text2video"
HEADERS = {
    "Authorization": f"Bearer {API_KEY}",
    "Content-Type": "application/json",
}


def submit_video(prompt: str) -> str:
    response = requests.post(
        BASE_URL,
        headers=HEADERS,
        json={
            "prompt": prompt,
            "model_name": "kling-v3",
            "mode": "std",
            "duration": "5",
            "sound": "off",
        },
        timeout=30,
    )
    response.raise_for_status()
    payload = response.json()
    return payload["data"]["task_id"]


def wait_for_video(task_id: str, timeout_seconds: int = 600) -> str:
    deadline = time.monotonic() + timeout_seconds
    poll_url = f"{BASE_URL}/{task_id}"

    while time.monotonic() < deadline:
        response = requests.get(poll_url, headers=HEADERS, timeout=30)
        response.raise_for_status()
        payload = response.json()
        task = payload.get("data") or payload
        status = task.get("task_status")

        if status == "succeed":
            videos = task.get("task_result", {}).get("videos", [])
            if not videos or not videos[0].get("url"):
                raise RuntimeError("Task succeeded without a video URL")
            return videos[0]["url"]

        if status == "failed":
            detail = task.get("task_status_msg") or task.get("task_result")
            raise RuntimeError(f"Kling task failed: {detail}")

        time.sleep(10)

    raise TimeoutError(f"Kling task {task_id} exceeded {timeout_seconds}s")


task_id = submit_video(
    "A small ceramic cup on a wooden table, steam rising in soft morning light"
)
video_url = wait_for_video(task_id)
print(video_url)

終端の成功ステータスは succeedsucceeded ではありません)です。タスクが完了したら、製品で保持が必要な場合は生成アセットを自分で管理するストレージにコピーしてください。プロバイダーの配信 URL を恒久的なアプリケーションストレージとして扱うべきではありません。

大規模ワークロードでは、Web リクエスト内でポーリングするのではなく、キューやワーカーを使用してください。CometAPI には Kling タスクのコールバック URL も記載されています。Webhook を採用する場合は、コールバックイベントの認証と重複排除を行い、配信漏れに備えてポーリングのフォールバックを維持してください。

Design the application job lifecycle before you scale

プロバイダーのタスクは、自身のジョブ記録の一部として扱ってください。アプリケーションのジョブ ID、ワークフロー、要求モデル、プロバイダーのタスク ID、クエリ URL、現在のステータス、送信タイムスタンプ、最終ポーリング時刻、出力保存先を保存します。これにより、サポートや運用チームが、原始的なリクエストログを探らなくても、失敗や遅延の原因を調査できます。

クライアントがレスポンスを受け取れなかったという理由だけで作成リクエストを再試行しないでください。プロバイダー側ではすでにタスクが作成済みかもしれません。送信前にローカルのジョブを保存し、返却されたタスク ID を直ちに記録し、作成リトライとステータスクエリのリトライを分離してください。現行のテキストから動画リファレンスにはアプリケーショントラッキング用の external_task_id も記載されていますが、重複排除の保証として依存する前にライブの挙動を確認してください。

const TERMINAL = new Set(["succeed", "failed"]);

function normalizeKlingTask(payload) {
  const task = payload?.data ?? payload;
  if (!task?.task_id || !task?.task_status) {
    throw new Error("Kling response is missing task identity or status");
  }
  return task;
}

async function refreshVideoJob(job, apiKey) {
  const response = await fetch(job.queryUrl, {
    headers: { Authorization: `Bearer ${apiKey}` },
  });

  if (!response.ok) {
    throw new Error(`Task query failed with HTTP ${response.status}`);
  }

  const task = normalizeKlingTask(await response.json());
  const outputUrl = task.task_result?.videos?.[0]?.url ?? null;

  return {
    ...job,
    providerTaskId: task.task_id,
    providerStatus: task.task_status,
    terminal: TERMINAL.has(task.task_status),
    outputUrl,
    failureDetail: task.task_status_msg ?? null,
    checkedAt: new Date().toISOString(),
  };
}

この例では、可能なすべての中間ステータスを製品の約束に写像していません。ワーカーは非終端タスクを継続扱いし、succeedfailed を明示的に処理し、デバッグ用に生のプロバイダーステータスを記録します。アプリケーション側のタイムアウトも別途設け、停止したタスクが永遠に開いたままにならないようにしてください。

基準としてはポーリングを使用してください。タスク ID は照会可能なままだからです。選択したエンドポイントが callback_url をサポートしている場合、Webhook により反復的なステータスリクエストを減らせますが、それだけを回復メカニズムにしないでください。公式の ポーリングと Webhook ガイド には、コールバックペイロードがプロバイダーごとに異なる可能性があると記されています。生イベントを保存し、タスク ID による冪等処理を行い、HTTP レスポンスは速やかに返し、終端状態の突き合わせはポーリングで行ってください。

Production checklist for developer teams

  • ランタイムでモデルを検証する。利用不可のモデルが要求された場合は明確に失敗させる。出力挙動が重要なら、別モデルへ黙って代替しない。
  • 送信と取得を分離する。CometAPI のタスク ID、自身のジョブ ID、選択モデル、タイムスタンプを保存し、リトライで重複作業を作らない。
  • ポーリングを制限する。タイムアウト、指数バックオフまたは適切な固定間隔、最大リトライ回数を設ける。並列度を上げる前に CometAPI の レート制限と並行実行ガイダンス を確認する。
  • エラーを分類する。無効パラメータや認証失敗は再試行しない。レート制限やプラットフォームエラーの再試行にはバックオフを適用し、最新のリトライガイド に従う。
  • 認証情報と入力を保護する。API キーはサーバー側に保持し、シークレットをログに残さず、ユーザーが送信するプロンプトや画像その他のソース資産について権利を確認する。
  • ジョブ全体を計測する。送信成功、キュー待ち時間、生成時間、終端失敗率、タイムアウト率、出力取得成功、モデル/モード別コストを追跡する。
  • 出力は意図して永続化する。製品で永続アクセスが必要な場合は、完了したアセットを自前のストレージへダウンロードし、保持と削除ポリシーを適用する。

Practical FAQs

この経路では別途 Kling 開発者アカウントが必要ですか?

CometAPI の統合フローでは、Kling への個別の開発者オンボーディング手順は見当たりません。CometAPI のアカウントと API キーを使用します。アクセスは、アカウントと地域で当該モデルが利用可能かに依存するため、本番前に確認してください。

Kling API は完全に OpenAI 互換ですか?

ここで示す動画ワークフローについては互換ではありません。/kling/v1/videos/text2video のような Kling 固有ルートと固有フィールドを使用します。認証情報管理は CometAPI で行えますが、アダプターはプロバイダー固有のスキーマを維持してください。

どの Kling モデル ID を使うべきですか?

現行の CometAPI テキストから動画リファレンスは最初の稼働例で kling-v3 を使用し、いくつかの旧系統も列挙しています。ライブのエンドポイント列挙からモデル ID を選び、そのモデルがアカウントで有効か検証してください。最新モデルがどこでも利用可能とは限りません。

最初のレスポンスに動画が含まれないのはなぜですか?

動画生成は非同期タスクとして実行されます。初回レスポンスはタスク ID を返します。task_statussucceed または failed になるまで、対応するクエリルートをポーリングし、その後に結果メタデータを取得してください。

ポーリングとコールバック URL のどちらを使うべきですか?

最初の統合ではポーリングの方が簡単です。規模が大きくなるとコールバックが繰り返しのリクエストを削減しますが、認証済みで冪等な受信処理と回復ロジックが必要です。多くの本番システムは、一次経路としてコールバックを用い、フォールバックとしてポーリングを維持します。

同じエンドポイントで画像から動画も使えますか?

いいえ。CometAPI では画像から動画が別ルート /kling/v1/videos/image2video に記載されています。テキストから動画の例に画像フィールドを追加するのではなく、そのエンドポイントの現行リクエストスキーマに従ってください。

最初は標準モードとプロフェッショナルモードのどちらを使うべきですか?

認証、リクエスト形状、タスク保存、ポーリング、出力取得を検証するために std を使用してください。現行のリファレンスでは pro は高品質・高コストと説明されています。基本ワークフローが動作した後に代表的なプロンプトで評価し、生成時間と実コストも含めて比較してください。

リトライ時の重複生成をどう避けられますか?

API 呼び出し前にアプリケーションのジョブ記録を作成し、返されたプロバイダーのタスク ID を即座に保存します。作成リクエストの再試行とステータス照会の再試行を分離してください。同じ POST を繰り返しても冪等とは限りません。エンドポイントには現在 external_task_id が記載されていますが、重複排除保証として依存する前に現行のセマンティクスを確認してください。

Conclusion

米国の開発チームが、Kling の動画生成を直接の Kling 開発者申請なしに試したい場合、CometAPI はドキュメント化された経路を提供しています。必要な Kling モデルがアカウントで利用可能かを確認し、CometAPI キーで認証し、ワークフロー固有のエンドポイントを呼び出し、非同期タスクを終端状態まで追跡してください。

実務的なエンジニアリング価値は、アクセスの集約と再利用可能なアプリケーションジョブモデルにあります。すべての動画プロバイダーが同じように振る舞うという前提ではありません。各ワークフローに薄いアダプターを用意し、タスクの同一性と出力を意図して保存し、Webhook を有効化しても回復パスとしてポーリングを維持してください。

安全なロールアウトは小さく計測可能であるべきです。1 つのモデルと 1 つのワークフローを検証し、短く低コストのジョブを送信し、終端成功率と失敗率を記録し、出力取得を検証し、実コストとレイテンシを製品要件と照合してください。画像から動画や追加の Kling ワークフローの拡張は、最新ドキュメントと対象アカウントの確認後に行ってください。

AI開発コストを20%削減する準備はできていますか?

数分で無料スタート。無料トライアルクレジット付き。クレジットカード不要。

もっと読む