はじめに
認証
Bearer APIキーによるCheaperGen APIリクエストの認証方法。キーの形式、保存、ローテーション、失効、認証不要のエンドポイントを解説します。
CheaperGen APIは秘密のAPIキーを使用します。認証が必要なすべてのエンドポイントに、Bearerトークンとして次のヘッダーを付けてください:Authorization
Authorization: Bearer cg_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxAPIキーを作成#
ダッシュボード → APIキーを開き、キーを作成をクリックします。用途が分かる名前を付けてください(例:production-backend)。キーの形式はcg_live_の後にランダムな32文字が続きます。
キー全体が表示されるのは一度だけです。SHA-256ハッシュのみを保管するため再表示できません。紛失した場合は失効させ、新しいキーを作成してください。ダッシュボードには接頭辞、作成日、最終使用時刻が表示されます。
認証付きリクエストを送信#
const resp = await fetch("https://cheapergen.com/api/v1/account", {
headers: { Authorization: `Bearer ${process.env.CHEAPERGEN_API_KEY}` },
});
console.log(await resp.json());公開エンドポイント#
カタログと料金のエンドポイントはAPIキー不要のため、ブラウザーやビルド手順から呼び出せます:GET /api/v1/models、GET /api/v1/models/{vendor}/{model}、POST /api/v1/quote/{endpoint}。生成の送信・取得・キャンセル、アップロード、アカウント情報など、ほかの操作にはキーが必要です。全エンドポイントはAPIリファレンスをご覧ください。
APIキーを安全に管理#
- サーバーサイドでのみ使用。モバイルアプリ、ブラウザーバンドル、公開リポジトリにキーを含めないでください。キーを持つ人は誰でも残高を利用できます。
- 環境変数を使うかシークレット管理ツールを使い、ソースコードには直接記載しないでください。このドキュメントの例では
CHEAPERGEN_API_KEYから読み込みます。 - 環境やサービスごとにAPIキーを分けるなら、ほかに影響を与えず個別のキーを失効できます。
- キーをローテーションするには、新しいキーを作成してデプロイし、その後、古いキーを失効させてください。失効は直ちに反映されます。
キーが漏えいしましたか?
ダッシュボード → APIキーで直ちにキーを失効させてください。その後、生成に見覚えのない利用履歴がないか確認してください。自動チャージを無効にすると、漏えいしたキーで利用できる金額を現在の残高までに制限できます。
クライアント側アプリを開発していますか?#
自社のバックエンド経由でリクエストを中継してください。サーバーでキーを保持し、ユーザーを認証してから生成リクエストを転送します。ジョブの完了を検知して結果を届けるにはWebhookを使います。
認証エラー#
キーがない、形式が不正、または失効している場合は401 unauthorizedを返します:
{
"error": {
"code": "unauthorized",
"message": "Invalid or revoked API key"
}
}当社サイト内からのリクエスト(Studio、モデルページのプレイグラウンド)は、キーの代わりにログイン中のセッションで認証します。ダッシュボードではソースとしてplaygroundが表示されます。
不明な点や不足している情報がありますか?support@cheapergen.com — すべて目を通しています。