最終確認 2026-11-12

OpenAI API(ChatGPT API)を Base URL とキーの変更だけで使う

OpenAI SDK の base_url を https://api.relayswitch.io/v1 に、キーを RelaySwitch のものに変えると、GPT モデルをそのまま呼び出せます。GPT のチャットモデルは 19 個あり、Chat Completions と Responses の両方に対応し、カタログの単価どおりにトークン単位で課金されます。

01OpenAI API、ChatGPT API、GPT API は同じインターフェース

「OpenAI API」「ChatGPT API」「GPT API」と呼ばれているものは、同じ 1 つのインターフェースです。呼び出し方は 2 つあります。既存のコードや多くのツールが使う Chat Completions(/chat/completions)と、OpenAI の新しいインターフェースである Responses(/responses)です。RelaySwitch はどちらも受け付け、同じキー、同じ残高、同じ料金で動きます。

OpenAI の API を直接使う場合は、OpenAI のプラットフォームでアカウントを作り、支払いをして、そのキーで呼び出します。ここではその部分が入れ替わります。RelaySwitch に前払いし、RelaySwitch のキーを使い、リクエストは RelaySwitch のゲートウェイに送ります。コードから見た違いは Base URL とキーの 2 か所だけで、リクエストボディ、モデル ID、ストリーミング、ツール呼び出しはそのままです。Base URL を設定できるクライアントやフレームワークなら、どれでも接続できます。

同じキーで、カタログにある Claude や Gemini も呼び出せます。モデルを切り替えるときに変えるのは model の値だけです。

02OpenAI API の料金:GPT モデルの現在の単価

単位は米ドル / 100 万トークンで、ページの表示時にカタログから読み込んだ値です。単価は入力、キャッシュ入力、出力の 3 つで、表の料金がそのまま引き落とされます。モデルごとの倍率やグループごとの倍率はありません。

キャッシュ入力の単価は、モデル名のリンク先のモデルページで確認できます。料金の仕組み全体は料金ページにまとめています。

モデル開発元入力出力コンテキスト
GPT-6.1 Solgpt-6.1-solOpenAI$0.582≈ ¥95$2.91≈ ¥4751,050,000
GPT-6 Lunagpt-6-lunaOpenAI$0.0625≈ ¥10$0.20≈ ¥331,050,000
GPT-6 Solgpt-6-solOpenAI$0.60≈ ¥98$3.00≈ ¥4901,050,000
GPT-6 Astragpt-6-astraOpenAI$3.00≈ ¥490$15.00≈ ¥2,4481,050,000
GPT-5.6 Lunagpt-5.6-lunaOpenAI$0.12≈ ¥20$0.72≈ ¥1181,050,000
GPT-5.6 Solgpt-5.6-solOpenAI$1.20≈ ¥196$3.00≈ ¥4901,050,000
GPT-5.6 Terragpt-5.6-terraOpenAI$1.20≈ ¥196$3.60≈ ¥5881,050,000
GPT-5.5gpt-5.5OpenAI$1.80≈ ¥294$9.00≈ ¥1,4691,050,000
GPT-5.4 Minigpt-5.4-miniOpenAI$0.75≈ ¥122$4.50≈ ¥734400,000
GPT-5.4gpt-5.4OpenAI$1.50≈ ¥245$9.00≈ ¥1,4691,050,000
GPT-5.3-Codexgpt-5.3-codexOpenAI$1.75≈ ¥286$14.00≈ ¥2,285400,000
GPT-4o minigpt-4o-miniOpenAI$0.15≈ ¥24$0.60≈ ¥98128,000
GPT-4ogpt-4oOpenAI$2.50≈ ¥408$10.00≈ ¥1,632128,000
GPT-4.1 Nanogpt-4.1-nanoOpenAI$0.10≈ ¥16$0.40≈ ¥651,048,576
GPT 5.4 Nanogpt-5.4-nanoOpenAI$0.40≈ ¥65$2.50≈ ¥408400,000
GPT 5.6gpt-5.6OpenAI$0.9412≈ ¥154$4.7059≈ ¥7681,050,000
GPT 6.1 Terragpt-6.1-terraOpenAI$0.2941≈ ¥48$1.4706≈ ¥2401,000,000
gpt-oss-120bgpt-oss-120bOpenAI$0.20≈ ¥33$1.80≈ ¥294
gpt-oss-20bgpt-oss-20bOpenAI$0.16≈ ¥26$0.72≈ ¥118

米ドル / 100 万トークン · ≈ は欧州中央銀行の 2026-11-13 のレートで換算した日本円の参考価格で、課金は米ドルです

03curl で最初のリクエストを送る(Chat Completions)

SDK に組み込む前に、curl でキーと Base URL を確認します。200 と JSON が返れば、どちらも正しく設定されています。

Base URL は https://api.relayswitch.io/v1 で、末尾の /v1 まで含めます。/v1 のないドメインだけを指定すると 404 が返ります。

bash
1curl https://api.relayswitch.io/v1/chat/completions \
2 -H "Authorization: Bearer sk-relay-..." \
3 -H "content-type: application/json" \
4 -d '{"model": "gpt-6.1-sol", "messages": [{"role": "user", "content": "Reply with ok"}]}'

04Python での使い方(OpenAI SDK)

OpenAI の Python SDK は、base_url と api_key の 2 か所を変えるだけで使えます。レスポンスの usage に入るトークン数は、そのリクエストの署名付きレシートの記載と一致します。

コードを変更したくない場合は、環境変数を使います。OpenAI の公式 SDK は、引数で明示的に渡されていなければ OPENAI_API_KEY と OPENAI_BASE_URL を読み取ります。ストリーミングは stream を true にすると server-sent events で返り、形式は OpenAI と同じです。

python
1from openai import OpenAI
2
3client = OpenAI(base_url="https://api.relayswitch.io/v1", api_key="sk-relay-...")
4reply = client.chat.completions.create(
5 model="gpt-6.1-sol",
6 messages=[{"role": "user", "content": "Reply with ok"}],
7)
8print(reply.choices[0].message.content)

05Responses API を使う

Responses のエンドポイントは /responses で、キーと料金は Chat Completions と同じです。新しく書くプログラムは、どちらの形式を選んでも構いません。次の例は -i を付けているので、ステータス行とレスポンスヘッダーが表示され、そのリクエストの ID を確認できます。

Codex CLI は Responses だけを使います。Codex の設定は config.toml に書くので、Codex CLI の設定を参照してください。

bash
1curl -i https://api.relayswitch.io/v1/responses \
2 -H "Authorization: Bearer sk-relay-..." \
3 -H "content-type: application/json" \
4 -d '{"model": "gpt-6.1-sol", "input": "Reply with ok"}'

06API key の発行とチャージ

発行までは下の 3 ステップで、すべてコンソールの中で完了します。残高は米ドル建てで、リクエストが実際に使ったトークンの分だけ引き落とされます。サブスクリプションや月額料金はなく、残高に有効期限はありません。チャージは返金できないため、初回は最低額の $10 でチャージし、curl で動作を確認してから追加することをおすすめします。支払いの詳細は支払い方法にあります。

キーごとに米ドルの予算、1 日の利用上限、モデルの許可リスト、IP の許可リスト、レート制限を設定できます。設定項目と、上限に達したときの応答は API キーのページにまとめています。GPT を呼ぶのも同じキーなので、内容はそのまま当てはまります。

  • アカウントを開設します。コンソール(app.relayswitch.io)でメールアドレスを入力し、届いた確認コードでログインします。Google または GitHub のアカウントでもログインできます。電話番号、本人確認書類、OpenAI のアカウントはいずれも不要です。
  • チャージします。カード(Apple Pay、Google Pay)または暗号資産(USDT, USDC, BTC, ETH, SOL)を選び、金額を $10, $25, $50, $100, $250, $500 から選びます。暗号資産はネットワーク上で承認されると残高に反映され、通常は数分以内です。
  • キーを作成します。名前を付けて作成すると、キーの全文が 1 度だけ表示されます。以降コンソールには先頭部分しか表示されないので、その場でパスワードマネージャーに保存してください。

07エラーコードと OpenAI SDK の例外

エラーの本文は OpenAI のエラー構造で返ります。401 から 404 はリクエストがモデルに届く前に返り、429、502、503 は内容が返らないため、いずれも課金されません。

OpenAI の Python SDK は、既定で 408、409、429 と 5xx のリクエストを 2 回まで自動で再試行します。それ以外の 4xx は再試行されないので、リクエストかキーを直す必要があります。レスポンスヘッダーのリクエスト ID をログに残しておくと、問い合わせのときにその 1 回の呼び出しを特定できます。

400 invalid_requestSDK の例外は BadRequestError です。リクエストボディが JSON オブジェクトでない、model がない、または 1 つのリクエストに異なる 2 つのキーが付いています。
401 invalid_api_keyAuthenticationError。キーが付いていない、間違っている、または失効しています。Authorization ヘッダーと環境変数 OPENAI_API_KEY の値が RelaySwitch のキーかを確認します。
402 insufficient_balance残高が不足しています。チャージするとすぐに再開します。残高はあってもそのキーの予算を使い切った場合のエラーコードは key_budget_exhausted です。
403 scope_denied / ip_not_allowedPermissionDeniedError。キーは有効ですが、モデルの許可リストまたは IP の許可リストがそのリクエストを許可していません。
404 model_not_foundNotFoundError。モデル ID がカタログにありません。多くは綴りの誤りか、ID の代わりに表示名を書いています。Base URL に /v1 がない場合も 404 です。
429 rate_limitedRateLimitError。キーの 1 分あたりのリクエスト数、トークン数、または同時実行数が上限に達しました。retry-after ヘッダーが待ち時間を秒で示します。
502 / 503InternalServerError。経路でエラーが起きたか、そのモデルに応答できる経路が一時的にありません。少し待って再試行するか、別のモデルを使います。

よくある質問

OpenAI API(ChatGPT API)の API key はどこで取得しますか?
「ChatGPT API の API key」と呼ばれるものには 2 種類あります。OpenAI が自社のプラットフォームで発行する公式のキーと、ゲートウェイが発行するキーです。RelaySwitch のキーは後者です。メールアドレスでアカウントを開設し、カードまたは暗号資産で $10 からチャージして、コンソールで sk-relay- で始まるキーを作成します。呼び出すときのモデル ID は GPT の ID のままです。
OpenAI API の料金はどのように計算されますか?
トークン単位です。モデルごとに入力、キャッシュ入力、出力の単価があり、このページの表の料金がそのまま前払い残高から引き落とされます。倍率はありません。単価、残高、引き落としはすべて米ドル建てです。
Base URL に /v1 は必要ですか?
必要です。Base URL は https://api.relayswitch.io/v1 で、SDK がその後ろに /chat/completions や /responses を付け足します。/v1 のないドメインだけを指定すると 404 が返ります。
Chat Completions と Responses のどちらを使えばよいですか?
どちらも使え、キーも料金も同じです。既存のコードや多くのサードパーティ製ツールは Chat Completions を使い、Codex CLI は Responses だけを使います。新しく書くプログラムはどちらでも構いません。ストリーミングは、どちらも stream を true にします。
本当に GPT が応答しているか、どう確認できますか?
全モデルに毎日同じチェック用プロンプトを送り、過去の応答と比較した結果を https://api.relayswitch.io/v1/proof で公開しています。さらにリクエストごとに署名付きレシート(GET https://api.relayswitch.io/v1/requests/:id/receipt)があり、モデル、課金トークン数、料金が記載されます。
429 が返ってきたときはどうすればよいですか?
そのキーの 1 分あたりのリクエスト数またはトークン数が上限を超えています。retry-after ヘッダーが示す秒数だけ待つか、コンソールでそのキーの上限を引き上げます。上限はキーごとの設定なので、アカウントのほかのキーには影響しません。

Base URL とキーを変えて、GPT を呼び出す

Base URL は https://api.relayswitch.io/v1。GPT モデルはカタログの単価どおりに、トークン単位で課金されます。