Claude Code Analytics API
通过 Claude Code Analytics Admin API 以编程方式访问您组织的 Claude Code 使用分析和生产力指标。
Admin API 不适用于个人账户。 要与团队成员协作并添加成员,请在 Console → Settings → Organization 中设置您的组织。
Claude Code Analytics Admin API 提供对 Claude Code 用户每日聚合使用指标的编程访问,使组织能够分析开发者生产力并构建自定义仪表板。该 API 弥补了基础 Analytics 仪表板 与复杂的 OpenTelemetry 集成之间的差距。
该 API 帮助您更好地监控、分析和优化 Claude Code 的采用:
- 开发者生产力分析: 跟踪使用 Claude Code 创建的会话、添加/删除的代码行数、提交和拉取请求
- 工具使用指标: 监控不同 Claude Code 工具(Edit、MultiEdit、Write、NotebookEdit)的接受和拒绝率
- 成本分析: 按 Claude 模型细分查看预估成本和 token 用量
- 自定义报告: 导出数据为管理层构建执行仪表板和报告
- 使用论证: 提供具体指标以论证和扩大 Claude Code 的内部采用
需要 Admin API 密钥
此 API 是 Admin API 的一部分。这些端点需要一个以 sk-ant-admin... 开头的 Admin API 密钥,与标准 API 密钥不同。只有具有管理员角色的组织成员才能通过 Claude Console 配置 Admin API 密钥。
Claude Platform on AWS: Claude Code Analytics API 目前不可用。请在 Claude Console 的 Usage 页面查看 Claude Code 使用情况。
快速开始
获取您组织特定日期的 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: $ADMIN_API_KEY"
为集成设置 User-Agent 头
如果您正在构建集成,请设置 User-Agent 头以帮助我们了解使用模式:
User-Agent: YourApp/1.0.0 (https://yourapp.com)
Claude Code Analytics API
通过 /v1/organizations/usage_report/claude_code 端点跟踪组织范围内的 Claude Code 使用情况、生产力指标和开发者活动。
核心概念
- 每日聚合:返回由
starting_at参数指定的单日指标 - 用户级数据:每条记录代表一个用户在指定日期的活动
- 生产力指标:跟踪会话、代码行数、提交、拉取请求和工具使用情况
- Token 和成本数据:按 Claude 模型细分监控使用量和预估成本
- 游标分页:使用不透明游标处理大型数据集,实现稳定分页
- 数据时效性:指标最多延迟 1 小时以确保一致性
有关完整的参数详情和响应架构,请参阅 Claude Code Analytics API 参考。
基本示例
获取特定日期的分析数据
curl "https://api.anthropic.com/v1/organizations/usage_report/claude_code?\
starting_at=2025-09-08" \
--header "anthropic-version: 2023-06-01" \
--header "x-api-key: $ADMIN_API_KEY"
使用分页获取分析数据
# First request
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: $ADMIN_API_KEY"
# Subsequent request using cursor from response
curl "https://api.anthropic.com/v1/organizations/usage_report/claude_code?\
starting_at=2025-09-08&\
page=page_MjAyNS0wNS0xNFQwMDowMDowMFo=" \
--header "anthropic-version: 2023-06-01" \
--header "x-api-key: $ADMIN_API_KEY"
请求参数
| 参数 | 类型 | 必填 | 描述 |
|---|---|---|---|
starting_at | string | 是 | UTC 日期,格式为 YYYY-MM-DD;仅返回该单日的指标 |
limit | integer | 否 | 每页记录数(默认:20,最大:1000) |
page | string | 否 | 来自上一次响应 next_page 字段的不透明游标令牌 |
可用指标
每条响应记录包含以下某个用户在某一天的指标:
维度
- date:RFC 3339 格式的日期(UTC 时间戳)
- actor:执行 Claude Code 操作的用户或 API 密钥(
user_actor包含email_address,或api_actor包含api_key_name) - organization_id:组织 UUID
- customer_type:客户账户类型(
api为 API 客户,subscription为 Pro/Team 客户) - terminal_type:使用 Claude Code 的终端或环境类型(例如
vscode、iTerm.app、tmux)
核心指标
- num_sessions:该参与者发起的不同 Claude Code 会话数
- lines_of_code.added:Claude Code 在所有文件中添加的代码总行数
- lines_of_code.removed:Claude Code 在所有文件中删除的代码总行数
- commits_by_claude_code:通过 Claude Code 提交功能创建的 git 提交数
- pull_requests_by_claude_code:通过 Claude Code PR 功能创建的拉取请求数
工具操作指标
按工具类型细分的工具操作接受和拒绝率:
- edit_tool.accepted/rejected: 用户接受/拒绝的 Edit 工具提案数
- multi_edit_tool.accepted/rejected: 用户接受/拒绝的 MultiEdit 工具提案数
- write_tool.accepted/rejected: 用户接受/拒绝的 Write 工具提案数
- notebook_edit_tool.accepted/rejected: 用户接受/拒绝的 NotebookEdit 工具提案数
模型细分
对于每个使用的 Claude 模型:
- model:Claude 模型标识符(例如
claude-opus-4-7) - tokens.input/output:该模型的输入和输出 token 计数
- tokens.cache_read/cache_creation:该模型的缓存相关 token 用量
- estimated_cost.amount:该模型的预估成本(单位:美分 USD)
- estimated_cost.currency:成本金额的货币代码(目前始终为
USD)
响应结构
API 返回以下格式的数据:
{
"data": [
{
"date": "2025-09-08T00:00:00Z",
"actor": {
"type": "user_actor",
"email_address": "developer@company.com"
},
"organization_id": "dc9f6c26-b22c-4831-8d01-0446bada88f1",
"customer_type": "api",
"terminal_type": "vscode",
"core_metrics": {
"num_sessions": 5,
"lines_of_code": {
"added": 1543,
"removed": 892
},
"commits_by_claude_code": 12,
"pull_requests_by_claude_code": 2
},
"tool_actions": {
"edit_tool": {
"accepted": 45,
"rejected": 5
},
"multi_edit_tool": {
"accepted": 12,
"rejected": 2
},
"write_tool": {
"accepted": 8,
"rejected": 1
},
"notebook_edit_tool": {
"accepted": 3,
"rejected": 0
}
},
"model_breakdown": [
{
"model": "claude-opus-4-7",
"tokens": {
"input": 100000,
"output": 35000,
"cache_read": 10000,
"cache_creation": 5000
},
"estimated_cost": {
"currency": "USD",
"amount": 1025
}
}
]
}
],
"has_more": false,
"next_page": null
}
分页
该 API 支持基于游标的分页,适用于拥有大量用户的组织:
- 使用可选的
limit参数发起初始请求 - 如果响应中
has_more为true,在下一次请求中使用next_page的值 - 持续请求直到
has_more为false
游标编码了最后一条记录的位置,即使有新数据到达也能确保稳定分页。每个分页会话维护一致的数据边界,确保您不会遗漏或重复记录。
常见用例
- 执行仪表板:创建展示 Claude Code 对开发速度影响的高层报告
- AI 工具对比:导出指标以将 Claude Code 与 Copilot 和 Cursor 等其他 AI 编码工具进行比较
- 开发者生产力分析:跟踪个人和团队随时间变化的生产力指标
- 成本跟踪和分配:监控支出模式并按团队或项目分配成本
- 采用监控:识别哪些团队和用户从 Claude Code 中获得了最大价值
- ROI 论证:提供具体指标以论证和扩大 Claude Code 的内部采用
常见问题
分析数据的时效性如何?
Claude Code 分析数据通常在用户活动完成后 1 小时内出现。为确保分页结果一致,响应中仅包含超过 1 小时的数据。
能否获取实时指标?
不能,此 API 仅提供每日聚合指标。如需实时监控,请考虑使用 OpenTelemetry 集成。
用户在数据中如何标识?
用户通过 actor 字段以两种方式标识:
user_actor: 包含通过 OAuth 认证的用户的email_address(最常见)api_actor: 包含使用 API 密钥认证的用户的api_key_name
customer_type 字段指示使用来自 api 客户(按量付费 API)还是 subscription 客户(Pro/Team 计划)。
数据保留期是多久?
历史 Claude Code 分析数据会被保留并通过 API 可访问。此数据没有指定的删除期限。
支持哪些 Claude Code 部署?
此 API 仅跟踪 Claude API 上的 Claude Code 使用情况。通过 Claude Platform on AWS、Claude in Microsoft Foundry、Claude in Amazon Bedrock 或 Claude on Vertex AI 的使用不包含在内。
使用此 API 的费用是多少?
Claude Code Analytics API 对所有有权访问 Admin API 的组织免费使用。
如何计算工具接受率?
工具接受率 = accepted / (accepted + rejected)(按每种工具类型计算)。例如,如果 Edit 工具显示 45 次接受和 5 次拒绝,则接受率为 90%。
date 参数使用什么时区?
所有日期均为 UTC。starting_at 参数应为 YYYY-MM-DD 格式,表示该天的 UTC 午夜。
另请参阅
Claude Code Analytics API 帮助您理解和优化团队的开发工作流。了解更多相关功能:
- Admin API
- Admin API 参考
- Claude Code Analytics 仪表板
- 用量和成本 API - 跟踪所有 Anthropic 服务的 API 用量
- 合规 API - 检索审计和活动数据
- 身份和访问管理
- 使用 OpenTelemetry 监控用量 用于自定义指标和告警