前回、API は アプリ同士の「会話の窓口」 だと話しました。 じゃあ実際に自分の作ったアプリで ChatGPT API を使おうとすると、必ず出てくるのがこれ。

API キーを取得してください。

※ ブラウザで普通に ChatGPT を使うときは API キーは不要です。自分のアプリから ChatGPT を呼び出す= API として使うとき に登場します。

API キーって聞くけど何?
図1:API キーって聞くけど何?

「キー…?鍵…?」って一瞬戸惑いますよね。 この記事では、API キーの正体と扱い方を、家の鍵 に例えて説明します。

API キーってなに?

結論から言うと、API キーは そのサービスを使うための「鍵」 です。

API キーはサービスの鍵
図2:API キーはサービスの「鍵」

たとえば ChatGPT API を使いたい場合、OpenAI から「あなた専用の鍵」をもらいます。アプリがその鍵を見せると、はじめて窓口(API)が応えてくれる、という仕組み。

つまり API キーは、こう言ってるようなものです。

「この鍵を持ってる人なら、入っていいですよ」

なぜ鍵が必要なの?

「窓口があるなら、誰でも自由に使わせてくれればいいのに」って思いませんでしたか? 鍵が必要な理由は、ざっくり3つあります。

鍵が必要な3つの理由
図3:鍵が必要な3つの理由

たとえば ChatGPT API なら「あなたが何文字やりとりしたか」を鍵ごとに記録して、使った分だけ料金が引き落とされます。Google Maps API も「あなたが作ったアプリで地図を何回表示したか」をカウントして、無料枠を超えたら課金。

鍵がないと「誰が」「いくら使ったか」を区別できないので、こういう仕組みが成り立たないわけです。

※ 料金体系はサービスによって違います(前払いクレジット制/月末まとめ請求/無料枠付きなど)。共通しているのは「鍵ごとに使用量が記録されて課金につながる」という点です。

API キーって実際どんなもの?

実物は、こんな見た目をしてます。

API キーの実物(sk-... の形)
図4:API キーの実物(こんな見た目)

ただの 長い文字列 です。sk- で始まるのが OpenAI のキー。他のサービスでも、英数字がランダムに並んだ長い文字列が一般的。

人間が覚える前提じゃなくて、アプリが裏側で送る用。だからこんなに長い。

どこで取るの?

OpenAI を例にすると、こんな流れです。

OpenAI で API キーを取る流れ
図5:OpenAI で API キーを取る流れ
  1. OpenAI のアカウントを作る
  2. 支払い方法(クレジットカード) を登録する
  3. ダッシュボードで「Create new secret key」をクリック
  4. 表示された鍵をコピーして、自分のアプリに設定する

ここで重要なのが手順4。この鍵、表示されるのは最初の1回だけ です。

鍵を漏らすとどうなる?

ここが一番大事な話。

鍵を漏らすとどうなる
図6:鍵を漏らしたら、勝手に使われる

API キーは あなたのお金に直結した鍵 です。誰かに知られると、その人が勝手に ChatGPT を呼び出して、あなたの登録した支払い手段から料金が引かれていく ことになります。

過去には、API キーを GitHub に公開してしまって 一晩で数十万円の請求 が来た事例もあります。

守るための鉄則

これだけは守る

  • API キーをコードに直接書かない(環境変数=コードとは別の場所に書く仕組み、で管理する)
  • GitHub などに上げない(.gitignore=アップロード対象外のファイルを書くリスト、に追加)
  • 他人に見せない・共有しない
  • 漏れたかもと思ったら、すぐ無効化して新しい鍵を作る

まとめ

API キーのすべて、これ1枚で
図7:API キーのすべて、これ1枚で

ふんわり理解チェック

  • API キーは「そのサービスを使うための鍵」
  • 誰が・いくら使ったかを管理するために必要
  • 実物は長い文字列、`sk-...` の形が多い
  • お金に直結しているので、絶対に漏らさない

次は、コードの保管庫であり世界の共同編集ノートでもある GitHub の話。「コミットってなに?」「リポジトリってなに?」の正体に迫ります。