APIリファレンス
apikey.sh は OpenAI プロトコルに対応しています。OpenAI で動作するSDK・フレームワーク・ツールは、base_url を変えるだけでそのまま使えます。クイックスタート
ダッシュボードでキーを作成し、環境変数に設定して、base URL を指定します。from openai import OpenAI
client = OpenAI(
api_key="sk-ak-...", # your key from apikey.sh
base_url="https://apikey.sh/v1", # change only this line
)
resp = client.chat.completions.create(
model="claude-sonnet-5",
messages=[{"role": "user", "content": "Hello!"}],
)
print(resp.choices[0].message.content)Base URL
以下のどのドメインでも同じAPIキーが使えます。好きなものをお選びください。Anthropic SDK では /v1 を付けない base URL を使います(例: https://apikey.sh)。
https://apikey.sh/v1稼働中https://api.onie.net/v1稼働中認証
キーをヘッダーで送信します。
Authorization: Bearer sk-ak-... # or, with the Anthropic SDK: x-api-key: sk-ak-...キーは作成時に一度だけ表示されます。紛失した場合は新しいキーを作成し、古いキーを失効させてください。失効は即座に反映されます。
Endpoints
| POST | /v1/chat/completions | テキスト生成(SSE streaming と tool calling に対応) |
| POST | /v1/embeddings | RAG やセマンティック検索向けの embeddings を生成 |
| POST | /v1/images/generations | 画像生成(gpt-image-* モデル) |
| GET | /v1/models | 現在のキーで利用できるモデルの一覧 |
Streaming
stream: true を指定すると、SSEでトークンをリアルタイムに受け取れます。
stream = client.chat.completions.create(
model="claude-sonnet-5",
messages=[{"role": "user", "content": "Write a short poem"}],
stream=True,
)
for chunk in stream:
print(chunk.choices[0].delta.content or "", end="")Prompt caching
対応モデル(GPT-5.x 系)では、プロンプトの繰り返し部分が自動でキャッシュされ、キャッシュ単価で課金されます。新規トークンより約90%安く、コードの変更は不要です。キャッシュされたトークン数はダッシュボードの「使用状況」で確認できます。レスポンスには usage.prompt_tokens_details.cached_tokens が含まれるため、ご自身でも照合できます。
キーごとの制限
キーごとに上限額と利用可能モデルを設定できます。プロジェクトやチームでキーを共有しても、誰かが予算を使い切る心配がありません。設定は「ダッシュボード → APIキー」から行えます。
エラーコード
401 | キーが無効・失効、またはアカウント停止中 |
402 | クレジット不足 — ダッシュボードでチャージしてください |
403 | このキーの許可モデルに含まれていません |
429 | キーのレート制限を超えました |
5xx | 上流プロバイダーのエラー — 数秒後に再試行してください |