https://api.kazzle.app の /ai/* 配下にあり、Authorization ヘッダーで kzl_ APIキーを受け入れます。作成方法については APIキー を参照してください。
生成されたKazzleアプリもこのAPIを使用する必要があります。アプリ用のKazzle APIキーを作成し、Vaultに保存して、プロセスコンポーネント上で KAZZLE_API_KEY として配線し、サーバー側コードから https://api.kazzle.app/ai/* を呼び出します。ユーザーが明示的に独自のプロバイダーアカウントを使用したい場合を除き、プロバイダーキーをユーザーに要求しないでください。
機能
| エンドポイント | モダリティ | 標準入力 | 標準出力 |
|---|---|---|---|
POST /ai/chat/completions | チャット(テキスト、ストリーミング) | OpenAI互換 messages[] | OpenAI互換 choices[] またはSSEストリーム |
POST /ai/responses | Responses API | OpenAI Responses互換 | OpenAI Responses互換 |
POST /ai/images/generations | 画像 | { model, prompt, size?, output_format? } | { images: [{ url? | b64?, mimeType }] } |
POST /ai/audio/speech | テキスト音声変換 | { model, text, voice?, format? } | audio/* バイトストリーム |
POST /ai/audio/transcriptions | 音声テキスト変換 | multipart/form-data with file + model | { text } |
POST /ai/video/generations | 動画(非同期) | { model, prompt, ... } | { id, status, pollUrl } |
GET /ai/responses/{id} | 非同期ポーリング | response id | プロバイダー形式の結果 |
POST /ai/gateway | ロー パススルー | Workers AI / プロバイダーネイティブペイロード | ロー アップストリーム応答 |
GET /ai/models | カタログ | — | { models: [{ id, modality, pricing, ... }] } |
GET /ai/models は、どのモデルIDがどのエンドポイントで機能するかの信頼できる情報源です。APIに対して構築する場合は、最初にこれを読んでください。
呼び出しの仕組み
課金対象のすべての呼び出しは5つのフェーズを通過します。ほとんどは表示されません。失敗した呼び出しを払い戻し、正確な使用状況を報告できるようにサーバー側で追跡されます。| フェーズ | 内容 |
|---|---|
open | リクエストに関連付けられた課金イベントを作成しましたが、まだアップストリームを呼び出していません。 |
recorded | アップストリームプロバイダーが応答しました。Cloudflare AI GatewayからログIDを取得しました。コストはまだ不明です。 |
priced | Cloudflareが最終コストを報告しました。マークアップを適用し、クレジット請求を記録しました。終了。 |
failed | アップストリーム呼び出しが失敗したか、20回の再試行後にコストを取得できませんでした。顧客は課金されません。終了。 |
synced | 価格設定されたイベントがメータリングシステムに配信されました。 |
x-kazzle-ai-billing-event-id: airesp_... が含まれます。後で使用状況エクスポートとリクエストを関連付けたい場合は保持してください。
課金とマークアップ
cloudflare_cost_usd × (1 + markup) で課金します。マークアップは 設定 → 課金 → 料金 で公開されています。Cloudflareが$0で価格設定した呼び出し(無料Workers AIティア、プロモーション)は、ゼロコストで priced フェーズに到達し、課金されることはありません。
リザーブ:呼び出しを行うには、クレジットで最低 $0.50 相当が必要です。呼び出しが完了するまでこれを残高に対して保持し、その後実際のコストを決済します。
エラー
| ステータス | 意味 |
|---|---|
401 | kzl_ APIキーが見つからないか無効です。 |
402 | リザーブに対するクレジットが不足しています。設定 → 課金 でトップアップしてください。 |
4xx from upstream | そのまま転送されます。本文にはプロバイダーのエラーが含まれます。顧客は課金されません。 |
5xx from upstream | そのまま転送されます。顧客は課金されません。 |