Claude Analytics APIの使い分け — CodeとEnterpriseの違い
Claude Code Analytics APIとEnterprise Analytics APIは別のAPIです。対象組織・キー種別・データの届く早さの違いから、自社に合う方を選ぶ基準を示します。
名前が似た2つのAPIは、契約している製品で分かれる
Anthropicの分析用APIは2本あります。名前は似ていますが、対象の組織もキーの種類も別物です。どちらを使うかは、自社が管理している製品で決まります。
Claude Code Analytics APIはConsoleのAdmin APIキーで呼びます。Enterprise Analytics APIはclaude.aiで作るAnalytics APIキーで呼びます。Team組織のキー取得経路は案内されていません(後述)。
2つのAnalytics API
Claude Code Analytics API
Claude Codeの日次の生産性指標を、ユーザー単位で返します。Admin APIの一部で、Admin APIキーで呼びます。
Claude Enterprise Analytics API
chat・projects・Claude Codeなど製品をまたいだエンゲージメント、アダプション、コストを返します。claude.aiで作る専用のAnalytics APIキーで呼びます。
キーの作成場所と作成できる人も違います。
| API | キー種別 | 作成場所 | 作成できる人 |
|---|---|---|---|
| Claude Code Analytics API | キー種別Admin APIキー(sk-ant-admin01-...) | 作成場所Console > Settings > Admin keys | 作成できる人組織のadmin |
| Claude Enterprise Analytics API | キー種別Analytics APIキー | 作成場所claude.ai > Organization settings > API | 作成できる人primary owner |
2つのキーに互換性はありません。Admin APIキーでEnterprise側は呼べません。逆方向も、read:analyticsだけのキーではAdmin APIを呼べません。Enterprise側のキーでも、スコープを付ければメンバー・招待・グループのユーザー管理系エンドポイントは呼べます。どちらもAdmin APIリファレンスの配下に載っていますが、実体は別のAPIです。ConsoleとEnterpriseの両方を使う組織は、両方のキーを作って使い分けます。Admin APIキー自体の取得手順とスコープ設計はClaude Admin APIキーの取得方法にあります。
取りたいものから逆引きする
「Analytics API」という名前に引きずられて、そもそも別のAPIが正解という場面もあります。迷ったときは、次の順で当てはめると外しにくくなります。
自分の状況から選ぶ
- 1
見たいのは製品の利用状況か、APIのトークン使用量か
APIのトークン使用量とコストを見たいなら、Console組織はUsage and Cost API、Enterprise組織はEnterprise Analytics APIのコスト・利用状況エンドポイントです。Enterpriseの親組織はConsoleに現れずAdmin APIキーを持たないため、Analytics APIキーが唯一の経路になります。
- 2
プログラムで取る必要があるか
claude.aiのAnalyticsダッシュボードで足りるなら、APIを組む必要はありません。個々のユーザー操作や会話内容を監査したい場合は、Compliance APIの領分です。
- 3
ユーザーはPlatform組織かEnterprise組織か
Platform組織ならClaude Code Analytics APIです。Enterprise組織なら製品横断のEnterprise Analytics APIを使います。ConsoleとEnterpriseの両方を使う組織なら、両方のキーを作り、それぞれのデータを各APIで取ります。
Admin APIキーで呼べる範囲には条件がある
Claude Code Analytics APIは、Admin APIにアクセスできる組織なら無料で使えます。呼び出しは、キーをx-api-keyヘッダーに渡して/v1/organizations/usage_report/claude_codeを叩くだけです。
curl "https://api.anthropic.com/v1/organizations/usage_report/claude_code?starting_at=2025-09-08&limit=20" \
--header "anthropic-version: 2023-06-01" \
--header "x-api-key: $ANTHROPIC_ADMIN_KEY"starting_atはUTCのYYYY-MM-DD形式で、その1日分だけを返します。期間をまたいで取りたいときは、日付を変えて繰り返し呼びます。limitの既定は20、上限は1000です。続きがあれば、レスポンスのnext_pageの値をpageに渡します。
Admin APIの認証条件は、Admin APIキーを持っていない人には意外な形です。ページには、Admin APIキーのほかにorg:adminスコープのOAuthトークンが使えると書かれています。ワークスペースに紐づけていない個人キーやサービスアカウントのキーも使えます。使えないのはワークスペース用のAPIキーです。個人アカウントではAdmin API自体が使えないため、チームを組む場合はConsoleで組織を作る必要があります。
もうひとつ、Claude Platform on AWSでは、このAPIは今のところ提供されていません。代わりにConsoleの「Usage」ページで見ます。
取得できる指標の詳細はClaude Code Analytics APIの使い方で扱います。ここでは、Enterprise側と取り違えやすい点だけ挙げます。
- ユーザーの特定方法: レコードの
actorは、OAuth認証のユーザーならuser_actorでメールアドレスが入ります。APIキーで使っている場合はapi_actorでキー名が入ります - 顧客の種別:
customer_typeは、従量課金のAPI利用ならapi、Pro・Teamのようなサブスクリプションならsubscriptionです - 端末の種別:
terminal_typeにvscodeやiTerm.app、tmuxのような値が入るので、利用環境で切れます - 受入率は自分で計算する: レスポンスにあるのは
acceptedとrejectedの件数です。受入率はaccepted / (accepted + rejected)で、編集ツールが45件受け入れ・5件拒否なら90%になります - 推定コストの単位:
estimated_cost.amountはセント単位のUSDです。サンプルの113は1.13ドルを指します
Enterprise組織の開発チームは、どちらのAPIにも出ない場面がある
組織の所属で決まるという原則は、境界で少し曖昧になります。
Claude Code Analytics APIのページに注記があります。Enterprise組織のclaude.aiユーザーのClaude Code活動は、Enterprise Analytics API側で報告されるというものです。つまり、Admin APIキーでClaude Code Analytics APIを叩いても、Enterprise組織のユーザー分が返ってくるとは読めません。取りたいデータの所在は、「Claude Codeを使っているか」ではなく「ユーザーがどちらの組織に属しているか」で決まります。
一方、customer_typeのsubscriptionはPro・Teamのサブスクリプション顧客と定義されています。Team経由のClaude Code利用も、このAPIのレコードに現れうると読めます。ただし、キーを作れる組織として案内されているのはConsole組織とEnterprise組織だけです。Team組織の管理者がどちらのキーを作れるかは書かれていません。Team組織で使う場合は、少量のデータを試しに取得して、自社のユーザーが返るかを先に確かめるのが確実です。
もうひとつ見落としやすいのが、クラウド経由の利用です。Claude Code Analytics APIが追跡するのは、Claude API上の利用だけです。Claude in Amazon Bedrock、Claude in Microsoft Foundry、Claude on Google Cloud、Claude Platform on AWSの利用は含まれません。Enterprise Analytics API側も、Amazon Bedrock経由のClaude Code活動は返しません。Bedrock経由の利用をClaude側のどちらのAPIでも把握できないため、その分は別の手段で見る前提になります。
Enterprise Analytics APIの入口
Enterprise Analytics APIは、Claude Enterprise組織向けです。エンゲージメント・アダプションのデータはすべてのEnterpriseプランで使えます。コスト・利用状況のエンドポイントは従量課金型のEnterpriseプランが対象で、シート課金型では利用クレジット分だけが反映されます。
primary ownerだけがAPIアクセスを有効化し、キーを作れます。claude.aiのOrganization settings内のAPI画面で公開APIアクセスを有効にしてから、Analytics APIキーを作ります。キーにはread:analyticsスコープが付き、表示された秘密鍵はその場でシークレット管理に保存します。エンドポイントはhttps://api.anthropic.com/v1/organizations/analytics/の配下で、ヘッダーにx-api-keyとanthropic-versionを付けます。
取得できるデータは4種類です。
- ユーザー活動: chat(会話・メッセージ・プロジェクト・ファイル・アーティファクト)、Claude Code(セッション・コミット・PR・コード行数・ツール操作)など、製品をまたいだユーザー単位の日次指標
- 活動サマリー: 組織単位の日次・週次・月次のアクティブユーザー数、シート数、招待保留数
- プロジェクト・スキル・コネクタの利用状況: chatのプロジェクト、スキル、コネクタごとのアダプション内訳
- コスト・利用状況レポート: 従量課金型プランでの、ユーザー単位・組織単位のトークン使用量とコストの時系列
コネクタ・プラグイン・スキル・アーティファクトの各エンドポイントの中身は、Enterprise Analytics APIでコネクタ・スキル・プラグインの利用を取るにあります。
データはいつ届くか: 1時間、翌日、4〜24時間、月末から約7日
2つのAPIは、データの鮮度の考え方がまったく違います。ダッシュボードに「今日の数字」を出したいのか、月次で請求と突き合わせたいのかで、使えるAPIとタイミングが変わります。
データが使えるようになるまで
Claude Code Analytics API
約1時間
活動の完了から。1時間より新しいデータは返らない
Enterprise: エンゲージメント系
翌日UTC 13:00〜13:30頃
1日遅れのスナップショット
Enterprise: コスト・利用状況系
4〜24時間
使用後に反映
Enterprise: コストの確定
月末+約7日
暦月の終了後、その頃まで値が修正されうる
Claude Code Analytics APIは、1時間より新しいデータを返しません。ページネーションの途中で結果が変わらないようにするための仕様です。それでもリアルタイムには使えません。1日単位の集計だけを返す設計なので、即時の監視にはOpenTelemetry連携を使うと書かれています。
Enterpriseのエンゲージメント・アダプション系は、指定した日の1日分のスナップショットを返します。その日のデータは翌日のUTC 13:00〜13:30頃に使えるようになり、それまでは現在のUTC日から2日前が最新の取得可能日になるのが一般的です。パイプラインが遅れる日もあるため、固定時刻を前提にしないでください。まだ使えない日付を指定すると400エラーが返り、利用可能な最新の日付が示されます。この返答を見て日付を決める実装が確実です。遅延が長引く場合は、Anthropic側のデータパイプライン障害が疑われるので、サポートに連絡します。Enterpriseのデータそのものは2026年1月1日以降の日付から取れます。
コスト・利用状況系は別の鮮度モデルです。通常は4時間以内、遅くとも24時間以内に使えるようになります。ただし、値は後から届くイベントの反映と照合処理で、その暦月の終了からおよそ7日間は変わりえます。たとえば10月1日の値は、11月7日頃まで動きます。確定値が必要なら、終わって7日以上たった月だけを取ってください。
レスポンスにはdata_refreshed_atが含まれます。ending_atを省くと現在時刻が使われ、data_refreshed_atより後の未確定な末尾が結果に混ざります。何度呼んでも同じ結果にしたいなら、過去のレスポンスで返ったdata_refreshed_at以前の値をending_atに指定します。
Enterprise側の実装で踏みやすい制約
Enterprise Analytics APIには、実装してから気づきやすい仕様があります。
- ページネーションカーソルはクエリに紐づく: コスト・利用状況系で
products[]・group_by[]・order_by・日付範囲・各種フィルターを変えたまま古いカーソルを渡すと、400エラーになります。パラメータを変えるときは、カーソルなしで1ページ目からやり直します - リストパラメータはブラケット記法: 値ごとにパラメータを繰り返します。たとえば
products[]=chat&products[]=claude_codeです - 金額はセント単位の10進文字列:
"41280.000000"は412.80ドルを表します。ドルにするには10進数として読んで100で割ります。数百万ドルを超えうる値を2進の浮動小数点で読むと誤差が出ます - Chat and Cowork unified(ベータ)は製品値に注意:
chat_cowork_unifiedという製品値があります。製品で絞り込むときは、products[]に含めないとこの分が外れます。絞り込まない総額には含まれます。詳細はchat_cowork_unifiedの扱いにあります - レート制限は組織単位: キー単位ではなく組織単位で、このAPI全体のエンドポイントを合わせて既定60リクエスト/分です。足りなければAnthropicのアカウントチームに調整を相談します
anthropic-versionヘッダーは、すべてのリクエストで必須です。
アクティブユーザーの数え方に注意する
Enterprise Analytics APIのアクティブユーザーは、ログインしただけでは数えません。ある日にアクティブとみなされるのは、次のどれかを満たしたユーザーです。
- Claudeでチャットメッセージを1件以上送った
- 組織に紐づくClaude Codeセッション(ローカル・リモート問わず)で、ツール使用かgit活動を伴うものを1件以上行った
- ツール使用かメッセージ活動を伴うCoworkセッションを1件以上行った
アクティブユーザー数が思ったより少ないときは、画面を眺めるだけでツールを使わないユーザーが数えられていない可能性があります。ダッシュボードの数字を読むときの前提になる定義です。
製品ごとの指標ブロックにも癖があります。Office AgentやCoworkなどのブロックは、その製品を使っていない組織でも全レコードに必ず存在し、未使用ならnullではなく全項目ゼロで埋まります。集計スクリプトでnullかどうかを判定すると、未使用の組織を除外し損ねます。ゼロかどうかで判定してください。
コネクタ利用状況では、接続元の表記ゆれが正規化されます。Atlassian MCP server、mcp-atlassian、atlassian_MCPは、すべてatlassianとして出ます。複数のMCPサーバー実装を並行して使っていても、名寄せを自前で書く必要はありません。
一方、Claude Code Analytics API側の「ユーザー」は、actorのメールアドレスまたはAPIキー名です。1日1行は「1ユーザーのその日の活動」で、Enterprise側の「アクティブ」の条件(メッセージ送信やツール使用などの有無)で絞った数ではありません。2つのAPIの人数を同じ表で足し合わせる前に、定義の違いを頭に置いてください。
両方を組み合わせる運用
Claude PlatformとClaude Enterpriseを両方契約している組織では、どちらか一方だけでは全体像が揃いません。典型的なのは、開発チームがPlatform経由でClaude Codeを使い、営業やサポートがEnterprise経由でchatやprojectsを使う構成です。この場合は、開発チームの生産性をClaude Code Analytics API、非開発チームのアダプションをEnterprise Analytics APIと、報告の対象を分けて両方を運用します。
そのとき決めておくとよいのは、日次バッチを走らせる時刻です。Claude Code Analytics APIは1時間遅れで足ります。Enterpriseのエンゲージメント系は翌日のUTC 13:30以降を待ち、コスト系は月末から7日たってから月単位で取り直す、という3本の取得スケジュールになります。
まとめ
名前ではなく、ユーザーが属する組織で選びます。Platform組織のClaude Code指標ならAdmin APIキー、Enterprise組織の製品横断データならAnalytics APIキーです。Team組織はキーの取得経路が案内されておらず、クラウド経由(Bedrockなど)の利用はどちらのAPIにも含まれないので、本番に組み込む前に自社のデータが実際に返るかを一度確かめます。