「ChatGPTを自分のアプリやシステムに組み込みたい」「定型業務を自動化するツールを作りたい」という目標があっても、APIという言葉を聞いただけで「難しそう...」と感じてしまう人も多いです。
筆者はプログラミング未経験からWebアプリ開発を独学した経験があります。ChatGPT APIを最初に触った時の「え、こんな簡単に使えるの?」という驚きを今でも覚えています。実際、基本的なAPIコールは5行のPythonコードで実現できます。
この記事では、APIの基礎知識からAPIキーの取得、実際のコード例、料金の計算方法まで、初心者が最初につまずきやすいポイントを全て解説します。
この記事でわかること:
- ChatGPT APIとは何か・ChatGPTとの違い
- APIキーの取得手順とセキュリティの注意点
- 料金体系(トークンとは何か・費用の計算方法)
- PythonとcurlでのAPIコール実例
- 初心者でも作れる活用アイデア5選
ChatGPT APIとは?基本概念を理解しよう
まず「API(Application Programming Interface)」とは、アプリケーション同士が通信するための窓口です。ChatGPT APIを使えば、自分のアプリやスクリプトからChatGPTの機能を呼び出せます。
ChatGPT(Web版)とAPIの違い
| 項目 | ChatGPT(Web/アプリ版) | ChatGPT API |
|---|---|---|
| 使い方 | ブラウザ・アプリで手動操作 | プログラムから自動呼び出し |
| 対象者 | 一般ユーザー | 開発者・エンジニア |
| 料金体系 | 月額サブスクリプション(無料/Plus $20) | 使用量に応じた従量課金 |
| カスタマイズ | 制限あり | プロンプト・動作を自由に設定 |
| 自動化 | できない | バッチ処理・定期実行が可能 |
| アカウント共有 | 1アカウント1ユーザー | 複数ユーザーがAPIキーを通じて利用可能 |
APIで何ができるか
ChatGPT APIを使うと、例えばこんなことができます:
- お問い合わせフォームに自動返信機能を追加する
- 毎朝ニュースを自動要約してSlackに投稿する
- 社内ドキュメントを検索してQ&Aを自動生成する
- ECサイトの商品説明文を一括自動生成する
- 顧客レビューを自動分類・感情分析する
APIキーの取得手順

ChatGPT APIを使うには、まず「APIキー」を取得する必要があります。APIキーは「パスワード」のようなもので、誰がAPIを使っているかを識別します。
ステップ1:OpenAIアカウントの作成
OpenAI公式サイト(platform.openai.com)にアクセスし、Googleアカウントまたはメールアドレスでサインアップします。ChatGPTのアカウントとは別扱いになるため、ChatGPTを使っている方も改めてAPI用のアカウント設定が必要です。
ステップ2:支払い方法の登録
APIは従量課金制なので、クレジットカードの登録が必要です。「Billing」→「Payment methods」からクレジットカードを追加します。初回クレジットとして一定額がもらえることがあります(時期によって変動)。
注意: 上限金額(Usage Limit)を設定しておくと、予期せず高額請求になることを防げます。初心者は月$10〜$20程度を上限にしておくのが安全です。
ステップ3:APIキーの発行
- 「API keys」メニューを開く
- 「Create new secret key」をクリック
- キーの名前を入力(用途がわかるように命名)
- 生成されたキーをコピーして安全な場所に保存
重要: APIキーが表示されるのは発行時の一度だけです。必ずコピーして保存してください。忘れた場合は再発行が必要です。
APIキーのセキュリティ管理(必須)
APIキーは絶対にGitHubにコミットしたり、コード内にベタ書きしてはいけません。漏洩すると第三者に悪用され、高額請求につながります。
安全な管理方法:
- 環境変数(.envファイル)に保存し、.gitignoreで除外する
- 本番環境ではサーバーの環境変数やシークレット管理サービスを使用
- 定期的にローテーション(再発行)する
料金体系を理解する|トークンとは何か
ChatGPT APIの料金は「トークン(token)」単位で計算されます。トークンとは、テキストを小さな単位(単語や文字)に分割したものです。
トークン数の目安
| テキストの例 | おおよそのトークン数 |
|---|---|
| 英語で1単語 | 約1〜2トークン |
| 日本語で1文字 | 約2〜3トークン |
| 英語で400語 | 約500トークン |
| 日本語で400字 | 約500〜800トークン |
| A4用紙1枚の日本語文書 | 約1,000〜2,000トークン |
主要モデルの料金(2026年3月時点)
| モデル | 入力トークン単価 | 出力トークン単価 | 特徴 |
|---|---|---|---|
| gpt-4o | $2.50/1Mトークン | $10.00/1Mトークン | 高性能・多用途 |
| gpt-4o-mini | $0.15/1Mトークン | $0.60/1Mトークン | 軽量・コスパ優秀 |
| gpt-3.5-turbo | $0.50/1Mトークン | $1.50/1Mトークン | 旧世代だが安定 |
例えばgpt-4o-miniで1日100回のAPIコール(1回あたり1,000トークン入力+500トークン出力)を行った場合:
- 月間入力トークン:3,000,000トークン → $0.45
- 月間出力トークン:1,500,000トークン → $0.90
- 合計:月約$1.35(約200円)
一般的な個人利用・小規模ツール開発なら、月$1〜$10程度に収まるケースがほとんどです。
実際にAPIを叩いてみよう

概念を理解したら、実際に動かしてみましょう。まずcurlで試し、次にPythonで実装します。
curlでの基本APIコール
ターミナル(MacはTerminal、WindowsはGit Bash等)で以下を実行します。
curl https://api.openai.com/v1/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_KEY" \
-d '{
"model": "gpt-4o-mini",
"messages": [
{"role": "user", "content": "こんにちは。自己紹介をしてください。"}
],
"max_tokens": 200
}'
「YOUR_API_KEY」を自分のAPIキーに置き換えて実行すると、JSONレスポンスが返ってきます。
PythonでのAPIコール(基本版)
まずOpenAIのPythonライブラリをインストールします。
pip install openai
次に以下のコードを実行します(my_script.pyとして保存)。
import os
from openai import OpenAI
# 環境変数からAPIキーを読み込む
client = OpenAI(api_key=os.environ.get("OPENAI_API_KEY"))
# APIコール
response = client.chat.completions.create(
model="gpt-4o-mini",
messages=[
{"role": "system", "content": "あなたは親切なアシスタントです。"},
{"role": "user", "content": "Pythonとは何ですか?初心者向けに100字で説明してください。"}
],
max_tokens=300,
temperature=0.7 # 0〜2の範囲。高いほど創造的、低いほど一貫性重視
)
# 回答を取得して表示
print(response.choices[0].message.content)
実行方法:
# Windows(コマンドプロンプト)の場合 set OPENAI_API_KEY=sk-xxxxxxxx... python my_script.py # Mac/Linuxの場合 export OPENAI_API_KEY=sk-xxxxxxxx... python my_script.py
よく使うパラメータの解説
| パラメータ | 意味 | 推奨値 |
|---|---|---|
| model | 使用するモデル | まずgpt-4o-miniで試す |
| messages | 会話履歴(system/user/assistant) | 必須項目 |
| max_tokens | 出力の最大トークン数 | 用途に応じて100〜4000 |
| temperature | 出力のランダム性(0=決定的、2=ランダム) | 通常業務は0.3〜0.7 |
| top_p | 確率的サンプリングの制御 | 通常は1.0(temperatureと併用しない) |
会話の継続(コンテキストの管理)
ChatGPTのWeb版のように「前の会話を覚えている」状態を再現するには、過去のメッセージを全て渡す必要があります。
from openai import OpenAI
import os
client = OpenAI(api_key=os.environ.get("OPENAI_API_KEY"))
# 会話履歴を保持するリスト
conversation_history = [
{"role": "system", "content": "あなたは親切なサポートエージェントです。"}
]
def chat(user_message):
"""会話を継続するチャット関数"""
conversation_history.append({"role": "user", "content": user_message})
response = client.chat.completions.create(
model="gpt-4o-mini",
messages=conversation_history,
max_tokens=500
)
assistant_message = response.choices[0].message.content
conversation_history.append({"role": "assistant", "content": assistant_message})
return assistant_message
# 使用例
print(chat("私の名前はAIテクです。"))
print(chat("さっき言った私の名前を覚えていますか?"))
# 「AIテクさんですね」と正しく覚えた応答が返ってくる
ChatGPT APIの活用アイデア5選

APIの基本がわかったら、何を作るかが重要です。初心者でも取り組みやすいアイデアを5つ紹介します。
アイデア1:ブログ記事の自動要約ツール
URLやテキストを入力すると、要点をまとめた3行サマリーを生成するスクリプトです。毎日のニュースチェックや資料収集の効率化に使えます。
アイデア2:Slack/Discord botへの組み込み
チームのSlackワークスペースにChatGPT botを追加すると、質問に自動回答したり、メッセージを翻訳したりできます。業務効率化ツールとして社内展開しやすいです。
アイデア3:CSVデータの自動分析・レポート生成
売上データや顧客データのCSVを読み込み、傾向分析とレポートを自動生成するスクリプト。月次レポート作成の大幅な自動化が可能です。
アイデア4:メール下書き自動生成システム
条件(宛先・目的・重要情報)を入力すると、ビジネスメールの下書きを自動生成するWebフォーム。社内の非エンジニアでも使えるUIを付ければ、チーム全体の生産性向上につながります。
アイデア5:商品説明文の一括生成ツール
ECサイト運営者向けに、商品スペック(名称・機能・価格)を渡すと、SEOに配慮した商品説明文を自動生成するツールです。数十〜数百商品の説明文を一括で作れます。
よくあるエラーと解決方法
| エラーコード | 原因 | 解決方法 |
|---|---|---|
| 401 Unauthorized | APIキーが無効または間違い | APIキーを再確認・再発行 |
| 429 Too Many Requests | リクエスト数・トークン数の上限超過 | 少し待ってリトライ、または上限緩和を申請 |
| 500 Internal Server Error | OpenAI側のエラー | しばらく待ってリトライ |
| 400 Bad Request | リクエスト形式が不正 | パラメータの形式・必須項目を確認 |
| insufficient_quota | クレジット残高不足 | 支払い方法の確認・チャージ |
この記事ではChatGPT APIの基本概念、APIキーの取得方法、料金体系、Pythonでの実装例まで解説しました。難しそうに見えても、最初のAPIコールは5〜10行のコードで実現できます。まずは本記事のサンプルコードをそのままコピーして動かしてみてください。動いた瞬間の「できた!」という体験が、その後の学習モチベーションになります。APIを使った自動化ツールは、ChatGPTのビジネス活用をさらに一段階上のレベルに引き上げてくれます。ぜひチャレンジしてみてください。