Anthropic APIキーは、Claude APIへのすべてのリクエストで送信する認証情報です。sk-ant-で始まり、Claude Consoleで作成し、組織のプリペイドクレジットに対して使用量が請求されます。扱ったことがない場合は、「APIキーとは何か」に関する私たちの入門記事で一般的な考え方を説明しています。このガイドでは、Consoleアカウントの作成、クレジットのチャージ、適切なスコープを持つキーの生成、curlとPython SDKを使用した最初のMessagesリクエストの送信、そしてその後のキーのトラブル回避について具体的に説明します。
Anthropicの公式「APIキーの取得」ページには、ボタンの場所が記載されています。しかし、なぜ最初のリクエストが401を返すのか、どのモデルIDが現在有効なのか、またはシェル履歴に貼り付けることなくキーをテストする方法については書かれていません。このガイドの残りの部分では、それらについて説明します。
始める前に必要なもの
- platform.claude.com (console.anthropic.com は現在こちらにリダイレクトされます) での Claude Console 用のメールアドレス。

- 支払いカード。APIはプリペイド制であり、管理者または請求担当者のみがクレジットを購入できます。
- SDKの例を使用する場合は、curlまたはPython 3.10+。
- キーをローカル変数として保存し、リクエストを繰り返し可能なテストとして保存するためのApidog。無料プランは最大4人までのチームをカバーします。

ステップ1: Claude Consoleアカウントを作成する
platform.claude.comでサインアップしてください。これにより、デフォルトワークスペースを持つ組織が作成され、キー、クレジット、レート制限はすべてその組織に紐付けられます。チームメイトがすでに作成している場合は、2つ目の組織を作成するのではなく、招待を依頼してください。クレジットと利用ティアは移行できません。
ステップ2: 最初の呼び出しの前にクレジットを追加する
はい、クレジットが優先されます。Anthropicの請求ドキュメントは明確です。APIを使用する前にクレジットを購入し、残高がゼロの場合、APIもプレイグラウンドも機能しません。新規ユーザーにはテスト用の少額の無料クレジットが付与されるため、購入前に残高を確認してください。ただし、これは計画ではなくボーナスとして扱ってください。
設定 > 請求を開き、クレジットを購入をクリックします。無人で何かを実行する場合は、自動リロードをオンにしてください。現在の手順については、「Claude APIのクレジットを購入する方法」を参照してください。組織はまた、月間の利用上限がある利用ティアに属し、これについてはレート制限のセクションで説明します。
ステップ3: APIキーを作成する
設定 > APIキーに移動し、キーを作成をクリックします。重要な選択肢は4つあります。
- 名前: 個人ではなく、アプリの名前を付けます。
orders-service-stagingの方がmy keyよりも適切です。 - 有効期限: 3時間から30日、カスタム、または「なし」。テストには短い有効期限を選択してください。後で変更することはできません。
- リンクされたアカウント: 個人のキーの場合は自分自身、共有されるものの場合はサービスアカウント。個人キーは組織を離れると無効になります。
- ワークスペース: 1つのワークスペースにスコープを設定すると、
anthropic-workspace-idヘッダーをスキップできます。複数ワークスペースのキーは、すべてのリクエストでこれを送信する必要があります。さもないと400エラーが発生します。

コンソールにはフルキーが一度だけ表示されるため、すぐにシークレットマネージャーにコピーしてください。表示ボタンはありません。キーを作成がグレー表示されている場合、あなたの役割ではキーを作成できません。管理者に依頼してください。
ステップ4: すべてのリクエストに必要な3つのヘッダー
POST https://api.anthropic.com/v1/messagesへのすべての呼び出しは、3つのヘッダーを伴います。
| ヘッダー | 値 | 備考 |
|---|---|---|
x-api-key |
あなたの sk-ant-... キー |
Authorization: Bearer も機能し、現在は主要な形式としてドキュメント化されています。x-api-key はレガシーなフォールバックであり、引き続きサポートされています。 |
anthropic-version |
2023-06-01 |
必須。応答フォーマットを固定します。この日付は安定しており、モデルのリリースには関連付けられていません。 |
content-type |
application/json |
JSONボディに必須。 |
公式SDKはこれら3つを自動的に送信します。生のHTTPクライアントやAPIクライアントではこれらを明示的に記述する必要があり、ほとんどの最初のリクエスト失敗はここから発生します。完全なリファレンス: Claude API概要。
ステップ5: 最初のMessagesリクエストを送信する
ボディにはmodel、max_tokens、およびmessagesが必要です。現在のモデルIDを使用してください。2026年9月現在、それはclaude-opus-5 (推奨されるデフォルト)、claude-fable-5-1 (最も高性能)、claude-sonnet-5、およびclaude-haiku-4-5です。古い3.xおよび4.xのIDは404を返すか、廃止されたモデルを指し、現在のIDには日付サフィックスはありません。Claude Opus 5 APIウォークスルーでは、思考、労力、ストリーミングについてさらに詳しく説明しています。
curl
export ANTHROPIC_API_KEY="sk-ant-api03-..."
curl https://api.anthropic.com/v1/messages \
-H "x-api-key: $ANTHROPIC_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-H "content-type: application/json" \
-d '{
"model": "claude-opus-5",
"max_tokens": 1024,
"messages": [
{"role": "user", "content": "Write a one-sentence OpenAPI description for POST /orders, which creates an order and returns 201."}
]
}'
成功した応答 (一部抜粋):
{
"id": "msg_01...",
"role": "assistant",
"model": "claude-opus-5",
"content": [{"type": "text", "text": "Creates a new order and returns it with a 201 status."}],
"stop_reason": "end_turn",
"usage": {"input_tokens": 31, "output_tokens": 24}
}
content[].textからテキストを読み取り、stop_reasonがend_turnであることを確認し、コスト追跡のためにusageを保持してください。request-id応答ヘッダーは、何かが失敗した場合にサポートが要求するものです。
Python SDK
pip install anthropic
import anthropic
client = anthropic.Anthropic() # reads ANTHROPIC_API_KEY from the environment
message = client.messages.create(
model="claude-opus-5",
max_tokens=1024,
messages=[{
"role": "user",
"content": "Write a one-sentence OpenAPI description for POST /orders, which creates an order and returns 201.",
}],
)
for block in message.content:
if block.type == "text":
print(block.text)
SDKはANTHROPIC_API_KEYを読み取り、バージョンおよびContent-Typeヘッダーを追加し、429および5xxエラーに対してバックオフ付きで2回再試行します。キーを文字列リテラルとして渡さないでください。環境変数が最も重要な点です。
ステップ6: Apidogでキーを保存・テストする
シェルに貼り付けられたキーは履歴ファイルに残ります。共有リクエストに保存されたキーはチームメイトと同期されます。Apidogはこの2つを分離します。リクエスト構造は共有されますが、シークレットはあなたのマシンに残ります。
キーをローカル変数として保存する。環境管理を開き、Anthropicという環境を作成し、変数ANTHROPIC_API_KEYを追加します。共有値はSET_LOCALLYのままにし、実際のキーをローカル値に貼り付けます。これはクライアントのキャッシュに残り、決して同期されません。Apidogの環境と秘密変数に関する私たちのガイドでは、スコープ規則について説明しています。
ヘッダーを一度設定する。同じパネルで、ヘッダーの下に2つのグローバルパラメータを追加します: x-api-key を {{ANTHROPIC_API_KEY}} に、anthropic-version を 2023-06-01 に設定します。これらはプロジェクト内のすべてのリクエストに適用され、ApidogはJSONボディに対してcontent-typeを自動的に追加します。
最初のリクエストを送信する。新規リクエストを作成し、https://api.anthropic.com/v1/messages にPOSTします。curlの例からJSONボディを貼り付け、送信します。実際の要求タブを開き、変数が解決された状態で両方のヘッダーが送信されたことを確認します。このタブは、401エラーがキーの問題ではなくヘッダーの問題であることを証明する最も速い方法です。
テストとして保存する。リクエストをエンドポイントケースとして保存し、次の3つのアサーションを追加します。ステータスが200であること、stop_reasonがend_turnであること、およびusage.output_tokensが0より大きいこと。Apidog CLIから実行し、CIシークレットストアから実行時にキーを注入します。これは、キー、ヘッダー、モデルIDのワンクリック簡易テストです。手順に従うにはApidogをダウンロードしてください。無料プランには4シートが含まれています。
レート制限とリクエスト費用
制限は組織ごと、モデルごとに設定されています。1分あたりのリクエスト数 (RPM)、1分あたりの入力トークン数 (ITPM)、1分あたりの出力トークン数 (OTPM) です。キャッシュされていない入力のみがITPMにカウントされるため、プロンプトのキャッシュはティアを変更することなくスループットを向上させます。レート制限のドキュメントより:
| ティア | 月間利用上限額 | Claude Opus 5 (RPM / ITPM / OTPM) | Claude Fable 5.x (RPM / ITPM / OTPM) |
|---|---|---|---|
| Start | $500 | 1,000 / 2M / 400K | 1,000 / 500K / 100K |
| Build | $1,000 | 5,000 / 5M / 1M | 2,000 / 1.5M / 300K |
| Scale | $200,000 | 10,000 / 10M / 2M | 4,000 / 4M / 800K |
| Custom | なし | 要交渉 | 要交渉 |
Sonnet 5とHaiku 4.5は、各ティアでOpus 5の数値と同じです。すべての応答にはanthropic-ratelimit-*-remainingおよび-resetヘッダーが含まれるため、Consoleをポーリングすることなく利用可能枠を確認できます。
料金ページによると、100万トークンあたり: Opus 5は入力$5 / 出力$25、Sonnet 5は入力$2 / 出力$10、Fable 5.1は入力$10 / 出力$50、Haiku 4.5は入力$1 / 出力$5です。キャッシュ読み取りは入力の10% (Fable 5.1では2.5%) の費用がかかり、Batch APIは両側を半減させます。最初のcurlリクエストは1セント未満の費用です。
一般的なエラーとその修正方法
エラーはerror.typeとrequest_idを含むJSONとして返されます。エラーリファレンスにはすべてのコードが記載されていますが、ここでは最初に遭遇する可能性のあるものを示します。
| ステータスとタイプ | 一般的な原因 | 修正方法 |
|---|---|---|
401 authentication_error |
キーが不正、失効、期限切れ、または環境変数が空 | echo $ANTHROPIC_API_KEYを実行し、末尾の空白をチェックします。期限切れの場合は新しいキーを作成します。 |
400 invalid_request_error |
max_tokensがない、JSONが不正、anthropic-workspace-idなしの複数ワークスペースキー、4.7+モデルでのthinking.type: enabled、または設定した利用上限に達した |
error.messageを読みます。フィールドまたは制限を特定します。 |
404 not_found_error |
モデルIDの入力ミス、日付接尾辞付きの推測、廃止されたモデル、または誤ったパス | 現在のモデルテーブルからIDを使用し、パスが/v1/messagesであることを確認します。 |
402 billing_error |
支払いまたはクレジットの問題 | 設定 > 請求を確認します。 |
429 rate_limit_error |
RPM、ITPM、OTPMを超過した | retry-afterヘッダーに示された秒数待ってから再試行します。retry-afterヘッダーがない場合は、そのティアの月間利用上限に達したことを意味します (error_code: enforced_spend_limit_reached)。 |
500 api_error / 529 overloaded_error |
Anthropic側のエラーまたは高トラフィック | バックオフ付きで再試行します。request_idを控えておきます。 |
キーの衛生管理: ローテーション、スコープ、クライアントコードでの非使用
キーをブラウザやモバイルアプリに含めて配布しないでください。JavaScriptバンドルやAPKに含まれるものは、数分で公開されてしまいます。呼び出しは独自のバックエンド経由で行ってください。Claudeを直接呼び出す必要があるAppleアプリの場合、App Attestは静的キーの代わりに検証済みビルドに短期間有効なトークンを発行します。
アプリおよび環境ごとに1つのキー。異なるワークスペースでステージング用と本番用のキーを分けることで、ステージングの費用を制限し、もう一方に影響を与えることなく一方を失効させることができます。
定期的にローテーションする。新しいキーを作成し、デプロイして、動作することを確認してから、古いキーを削除します。無効化は元に戻せますが、削除は永続的です。漏洩が疑われる場合は、まず無効化し、次に調査してください。リポジトリ内のシークレットスキャナーは、誰かが気づく前にコミットされたキーを検出します。
本番環境では短期間有効な認証情報を優先する。ワークロードIDフェデレーションは、クラウドプロバイダーのIDトークンを短期間有効なClaudeトークンと交換するため、sk-ant-文字列が漏洩する心配は全くありません。
よくある質問
Anthropic APIキーはClaude APIキーと同じですか?
はい、同じです。Console、SDK、およびドキュメントでは現在「Claude API」と表記されており、キーのフォーマットとヘッダーは同じです。「Anthropic APIキー」と記載されている古いチュートリアルも、同じ認証情報を指しています。
Anthropic APIキーを無料で入手できますか?
キーの作成は無料です。使用するにはプリペイドクレジットから消費され、Anthropicの料金ページには、新規ユーザーがテスト用の少額の無料クレジットを受け取ることが記載されています。費用を支払わずに実際のワークロードを実行しようとしている場合は、それを構築する前に、「無料のClaude APIアクセス」に関する私たちの正直な解説をお読みください。
Claude ProまたはMaxのサブスクリプションにはAPIアクセスが含まれますか?
いいえ、含まれません。Claude.aiのサブスクリプションとConsole APIクレジットは別々に請求されます。Claude.aiの料金をすでに支払っている場合でも、クレジットを持つConsole組織が必要です。
キーの有効期限が切れるとどうなりますか?
リクエストは401 authentication_errorを返します。有効期限が切れたキーは再アクティブ化できないため、新しいキーを作成し、環境変数を更新してください。Anthropicは、十分な有効期限を持つキーの場合、有効期限の7日前と1日前にキーの作成者にメールで通知します。
次のステップ
7日間の有効期限でキーを作成し、それをApidogのローカル変数に入れ、簡易テストを実行し、その後コードに組み込んでください。もしそれが成功すれば、認証情報、ヘッダー、モデルIDはすべて正しく、それ以降のすべての401エラーはタイプミスではなく、実際の問題です。
