Claude API の利用量と請求額を、コンソールの画面ではなくプログラムから取得したい。組織全体のトークン消費をワークスペースごとに配賦したい。こうした要求に応えるのが Usage & Cost Admin API です。この記事では公式ドキュメントの内容を日本語で整理します。
概要
Usage & Cost Admin API は、組織の 過去の API 利用量と費用データにプログラムから細かくアクセスするための API です。取得できる情報は、Claude Console の Usage ページと Cost ページに表示されるものと同等です。
公式ドキュメントは、この API を使う目的として次の5つを挙げています。
- 正確な利用量の把握 … レスポンスのトークン数を自分で数え上げるのではなく、正確なトークン数と利用パターンを取得できます
- 費用の突合 … 経理・財務が、社内の記録と Anthropic の請求を突き合わせられます
- プロダクトの性能監視と改善 … 変更が実際に改善につながったかを測ったり、アラートを設定したりできます
- レート制限の最適化 … プロンプトキャッシュや個別のプロンプトを最適化し、割り当てられた容量を使い切れるようにします
- 踏み込んだ分析 … コンソールの画面では行えない分析ができます
Admin API キーが必要です
ここが最初の関門です。これらのエンドポイントには Admin API キーが必要で、通常の Claude API キーでは呼べません。 Admin API キーは sk-ant-admin01- で始まる別種のキーです。
加えて、Admin API は個人アカウントでは使えません。チームで使うには Console の Settings → Organization で組織を設定する必要があります。
どちらの API を使うのか
Anthropic は、組織が管理している Claude 製品によって2つの API を用意しています。ここを取り違えると、キーの種類から間違えることになります。
| 組織の種別 | 使う API | キーの種類 |
|---|---|---|
| Claude Console(Claude Platform) | この記事で扱う Usage and Cost Admin API | Admin API キー(sk-ant-admin01-...) |
| Claude Enterprise(claude.ai) | Claude Enterprise Analytics API の費用・利用量エンドポイント | Analytics API キー |
Claude Enterprise の親組織は Claude Console に現れず、Admin API キーを持ちません。そのため、これらの組織にとっては Analytics API キーが唯一の経路になります。
もう1つ注意点があります。AWS 上の Claude Platform では、この Usage / Cost API のエンドポイントは現在利用できません。 その場合は Claude Console の Usage ページと Cost ページで確認します。
基本概念
Usage API — トークン消費を追う
エンドポイントは /v1/organizations/usage_report/messages です。モデル別・ワークスペース別・サービスティア別の内訳つきで、組織全体のトークン消費を追えます。
押さえるべき概念は4つです。
- 時間バケット … 固定の間隔(
1m/1h/1d)で利用量を集計します - トークンの種別 … キャッシュされていない入力・キャッシュされた入力・キャッシュ作成・出力の4種類を個別に計測します
- 絞り込みとグルーピング … API キー、ワークスペース、モデル、サービスティア、コンテキストウィンドウ、データレジデンシー、速度(ベータ)で絞り込み、同じ軸でグルーピングできます
- サーバーツールの利用量 … ウェブ検索などのサーバー側ツールの利用も追えます
トークン種別が分かれているのは、費用の内訳を理解するうえで重要です。プロンプトキャッシュを使っている場合、キャッシュ作成時と読み出し時で単価が違うため、まとめて「入力トークン」として数えると最適化の効果が見えません。
Cost API — 費用を追う
エンドポイントは /v1/organizations/cost_report です。サービス単位の費用内訳を USD で取得します。
- 通貨 … すべて USD で、最小単位(セント)の10進文字列として返ります
- 費用の種別 … トークン利用、ウェブ検索、コード実行の費用を追えます
- グルーピング … ワークスペースまたは description で内訳を出せます。
descriptionでグルーピングすると、レスポンスにmodelやinference_geoといった解析済みのフィールドが含まれます - 時間バケット … 日次(
1d)のみです
Priority Tier の費用はこのエンドポイントに含まれません。 課金モデルが異なるためで、Priority Tier の利用は Usage 側のエンドポイントで追います。
時間粒度の上限
Usage API の粒度には、既定値と最大値が決められています。ここを知らないと「1分粒度で1か月ぶん取りたい」といった要求が通らない理由が分かりません。
| 粒度 | 既定の上限 | 最大の上限 | 想定用途 |
|---|---|---|---|
1m | 60 バケット | 1,440 バケット | リアルタイム監視 |
1h | 24 バケット | 168 バケット | 1日の傾向 |
1d | 7 バケット | 31 バケット | 週次・月次のレポート |
最大値を見ると、1m なら24時間ぶん、1h なら7日ぶん、1d なら31日ぶんが1回で取れる範囲だと分かります。それより長い期間は、期間を分けて複数回呼ぶことになります。
使い方
最短の例
直近7日ぶんの日次利用量を取得します。
curl "https://api.anthropic.com/v1/organizations/usage_report/messages?\
starting_at=2025-01-08T00:00:00Z&\
ending_at=2025-01-15T00:00:00Z&\
bucket_width=1d" \
-H "anthropic-version: 2023-06-01" \
-H "x-api-key: $ANTHROPIC_ADMIN_KEY"
連携(インテグレーション)を作る場合は、User-Agent ヘッダを設定することが推奨されています。利用パターンの把握に使われます。
User-Agent: YourApp/1.0.0 (https://yourapp.com)
モデル別の日次利用量
curl "https://api.anthropic.com/v1/organizations/usage_report/messages?\
starting_at=2025-01-01T00:00:00Z&\
ending_at=2025-01-08T00:00:00Z&\
group_by[]=model&\
bucket_width=1d" \
-H "anthropic-version: 2023-06-01" \
-H "x-api-key: $ANTHROPIC_ADMIN_KEY"
絞り込みを効かせた時間別の利用量
モデル・サービスティア・コンテキストウィンドウで絞り込む例です。
curl "https://api.anthropic.com/v1/organizations/usage_report/messages?\
starting_at=2025-01-15T00:00:00Z&\
ending_at=2025-01-15T23:59:59Z&\
models[]=claude-opus-5&\
service_tiers[]=batch&\
context_window[]=0-200k&\
bucket_width=1h" \
-H "anthropic-version: 2023-06-01" \
-H "x-api-key: $ANTHROPIC_ADMIN_KEY"
API キー・ワークスペースで絞り込む
curl "https://api.anthropic.com/v1/organizations/usage_report/messages?\
starting_at=2025-01-01T00:00:00Z&\
ending_at=2025-01-08T00:00:00Z&\
api_key_ids[]=apikey_01Rj2N8SVvo6BePZj99NhmiT&\
workspace_ids[]=wrkspc_01JwQvzr7rXLA5AGx3HKfFUJ&\
bucket_width=1d" \
-H "anthropic-version: 2023-06-01" \
-H "x-api-key: $ANTHROPIC_ADMIN_KEY"
API キーの ID は List API Keys エンドポイントで、ワークスペースの ID は List Workspaces エンドポイント(または Claude Console)で確認できます。
データレジデンシー(inference_geo)
inference_geo の軸でグルーピング・絞り込みを行うと、地理的なルーティングが組織全体で意図どおりかを確認できます。有効な値は global、us、not_available の3つです。
curl "https://api.anthropic.com/v1/organizations/usage_report/messages?\
starting_at=2026-02-01T00:00:00Z&\
ending_at=2026-02-08T00:00:00Z&\
group_by[]=inference_geo&\
group_by[]=model&\
bucket_width=1d" \
-H "anthropic-version: 2023-06-01" \
-H "x-api-key: $ANTHROPIC_ADMIN_KEY"
注意点があります。2026年2月より前にリリースされたモデル(Claude Opus 4.6 と Claude Sonnet 4.6 より前)は inference_geo リクエストパラメータに対応していません。 それらの利用量レポートはこの軸で "not_available" を返します。逆に言えば、inference_geos[]=not_available を指定すると、そうした古いモデルの利用だけを取り出せます。
Fast mode(リサーチプレビュー)
speed の軸で、通常モードと fast mode の利用を分けて追えます。有効な値は standard と fast です。
curl "https://api.anthropic.com/v1/organizations/usage_report/messages?\
starting_at=2026-02-01T00:00:00Z&\
ending_at=2026-02-08T00:00:00Z&\
group_by[]=speed&\
group_by[]=model&\
bucket_width=1d" \
-H "anthropic-version: 2023-06-01" \
-H "anthropic-beta: fast-mode-2026-02-01" \
-H "x-api-key: $ANTHROPIC_ADMIN_KEY"
speeds[] の絞り込みも speed のグルーピングも、fast-mode-2026-02-01 ベータヘッダが必要です。 付け忘れると使えません。
費用の取得
ワークスペースと description でグルーピングした費用レポートの例です。
curl "https://api.anthropic.com/v1/organizations/cost_report?\
starting_at=2025-01-01T00:00:00Z&\
ending_at=2025-01-31T00:00:00Z&\
group_by[]=workspace_id&\
group_by[]=description" \
-H "anthropic-version: 2023-06-01" \
-H "x-api-key: $ANTHROPIC_ADMIN_KEY"
ページネーション
どちらのエンドポイントも、大きなデータセットに対してページネーションに対応しています。手順は3段階です。
- 最初のリクエストを送る
- レスポンスの
has_moreがtrueなら、next_pageの値を次のリクエストのpageパラメータに渡す has_moreがfalseになるまで繰り返す
# 1回目
curl "https://api.anthropic.com/v1/organizations/usage_report/messages?\
starting_at=2025-01-01T00:00:00Z&\
ending_at=2025-01-31T00:00:00Z&\
limit=7" \
-H "anthropic-version: 2023-06-01" \
-H "x-api-key: $ANTHROPIC_ADMIN_KEY"
# レスポンスに "has_more": true, "next_page": "page_xyz..." が含まれる
# 2回目
curl "https://api.anthropic.com/v1/organizations/usage_report/messages?\
starting_at=2025-01-01T00:00:00Z&\
ending_at=2025-01-31T00:00:00Z&\
limit=7&\
page=page_xyz..." \
-H "anthropic-version: 2023-06-01" \
-H "x-api-key: $ANTHROPIC_ADMIN_KEY"
よくある質問
公式ドキュメントの FAQ から、実装時に効くものを挙げます。
- データはどれくらい新しいか … 利用量と費用のデータは通常、API リクエスト完了から5分以内に現れます。ただし、それ以上遅れることもあります
- 推奨のポーリング頻度 … 継続的な利用では1分に1回まで。ページ分割されたデータをまとめて取得するような短時間のバーストであれば、より高頻度でも問題ありません。頻繁に更新するダッシュボードでは結果をキャッシュします
- コード実行の利用を追うには … コード実行の費用は Cost 側で
descriptionフィールドのCode Execution Usageにまとまって現れます。Usage 側には含まれません - Priority Tier を追うには … Usage 側で
service_tierを絞り込むかグルーピングしてpriorityの値を見ます。Cost 側では取得できません - Workbench からの利用は … Workbench の API 利用は API キーに紐づかないため、
api_key_idでグルーピングしても値はnullになります - 既定のワークスペースは … 既定のワークスペースに紐づく利用量と費用は、
workspace_idがnullになります - Claude Code のユーザー別費用は … Claude Code Analytics API を使います。多数の API キーで内訳を出すときの性能上の制約なしに、ユーザーごとの推定費用と生産性の指標が得られます
パートナーの監視ツール
自前でコードを書かずに済ませたい場合、主要な可観測性プラットフォームが既製の連携を提供しています。ダッシュボード・アラート・分析が用意されています。
- CloudZero … 費用の追跡と予測を行うクラウドインテリジェンス基盤
- Datadog … 自動トレースと監視を備えた LLM の可観測性
- Grafana Cloud … エージェント不要の連携。ダッシュボードとアラートが標準で付属
- Honeycomb … OpenTelemetry を通じた高度なクエリと可視化
- Vantage … LLM の費用と利用量に対する FinOps プラットフォーム
まとめ
この API を使い始めるときに、順番に確認すべき点を整理します。
- 組織の種別を確認する … Claude Console(Claude Platform)なら Admin API キー、Claude Enterprise なら Analytics API キーです。ここを取り違えると認証で止まります
- Admin API キーを用意する … 通常の API キーでは呼べません。個人アカウントでは使えません
- 取りたい粒度と期間を決める …
1mは最大24時間ぶん、1hは最大7日ぶん、1dは最大31日ぶんです。これを超える期間は分割して呼びます - 利用量と費用を使い分ける … コード実行は Cost 側にしか出ず、Priority Tier は Usage 側にしか出ません。両方を突き合わせないと全体像になりません
- ポーリングは1分に1回まで … データの反映も通常5分以内なので、それより短い間隔で叩いても新しい値は返りません
プロンプトキャッシュやバッチ処理でコストを下げたい場合は、まずこの API で現状のトークン内訳(キャッシュ作成・キャッシュ読み出し・非キャッシュ入力・出力)を測るところから始めるのが確実です。推測ではなく実測から入れます。
本記事は Anthropic の公式ドキュメント「Usage and Cost API」に基づく非公式の日本語解説です。仕様は変更される場合があります。最新の内容は公式ドキュメントをご確認ください。