Claude Code Analytics API

Claude Code Analytics API

Claude Code Analytics Admin API는 Claude Code 사용자의 일별 집계 사용 지표에 프로그래밍 방식으로 접근할 수 있게 해 주는 API예요. 이를 통해 조직이 개발자 생산성을 분석하고 커스텀 대시보드를 만들 수 있어요. 이 API는 기본 Analytics 대시보드보다 더 자세한 정보를, OpenTelemetry 통합의 복잡함 없이 제공해요.

이 API로 Claude Code 도입을 더 잘 모니터링·분석·최적화할 수 있어요:

  • 개발자 생산성 분석: Claude Code로 만든 세션, 추가·제거된 코드 줄, 커밋, 풀 리퀘스트 추적
  • 도구 사용 지표: 다양한 Claude Code 도구(Edit, MultiEdit, Write, NotebookEdit)의 수락·거부율 모니터링
  • 비용 분석: Claude 모델별로 구분된 예상 비용과 토큰 사용량 보기
  • 커스텀 보고: 관리 팀용 임원 대시보드와 보고서 구축을 위해 데이터 내보내기
  • 사용 근거: 내부적으로 Claude Code 도입을 정당화·확장하는 데 쓸 지표 제공

Admin API 자격 증명이 필요해요. 이 엔드포인트들은 Admin API의 일부예요. Admin API 키, org:admin 범위의 OAuth 토큰, 또는 워크스페이스에 바인딩되지 않은 개인 키나 서비스 계정 키로 접근할 수 있어요. 워크스페이스 API 키는 작동하지 않아요. 자세한 내용은 인증 참고.

AWS의 Claude Platform: Claude Code Analytics API는 현재 사용할 수 없어요. 대신 Claude Console의 Usage 페이지에서 Claude Code 사용량을 확인하세요.

Claude Enterprise 조직: claude.ai 사용자의 Claude Code 활동은 Admin API 키 대신 Analytics API 키를 사용하는 Claude Enterprise Analytics API로 보고돼요. 조직에 필요한 API와 키 유형을 찾으려면 Analytics APIs를 참고하세요.

출처: 문서

본문

빠른 시작

특정 날짜의 조직 Claude Code 분석을 가져오세요:

curl "https://api.anthropic.com/v1/organizations/usage_report/claude_code?\
starting_at=2025-09-08&\
limit=20" \
  -H "anthropic-version: 2023-06-01" \
  -H "x-api-key: $ANTHROPIC_API_KEY"

통합 시에는 User-Agent 헤더를 설정하세요

통합을 구축 중이라면 User-Agent 헤더를 설정해 Anthropic이 사용 패턴을 이해하도록 도와주세요:

User-Agent: YourApp/1.0.0 (https://yourapp.com)

Claude Code Analytics API

/v1/organizations/usage_report/claude_code 엔드포인트로 조직 전반의 Claude Code 사용량, 생산성 지표, 개발자 활동을 추적하세요.

핵심 개념

  • 일별 집계: starting_at 매개변수가 지정한 단일 날짜에 대한 지표를 반환해요
  • 사용자 수준 데이터: 각 기록은 지정된 날짜의 한 사용자 활동을 나타내요
  • 생산성 지표: 세션, 코드 줄, 커밋, 풀 리퀘스트, 도구 사용 추적
  • 토큰·비용 데이터: Claude 모델별로 구분된 사용량과 예상 비용 모니터링
  • 커서 기반 페이지네이션: 불투명 커서로 대용량 데이터셋을 안정적으로 처리
  • 데이터 신선도: 일관성을 위해 최대 1시간 지연으로 지표 제공

완전한 매개변수 상세와 응답 스키마는 Claude Code Analytics API 참조를 참고하세요.

기본 예시

특정 날짜의 분석 가져오기
curl "https://api.anthropic.com/v1/organizations/usage_report/claude_code?\
starting_at=2025-09-08" \
  -H "anthropic-version: 2023-06-01" \
  -H "x-api-key: $ANTHROPIC_API_KEY"
페이지네이션으로 분석 가져오기
# First request
curl "https://api.anthropic.com/v1/organizations/usage_report/claude_code?\
starting_at=2025-09-08&\
limit=20" \
  -H "anthropic-version: 2023-06-01" \
  -H "x-api-key: $ANTHROPIC_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=" \
  -H "anthropic-version: 2023-06-01" \
  -H "x-api-key: $ANTHROPIC_API_KEY"

요청 매개변수

매개변수 유형 필수 설명
starting_at string YYYY-MM-DD 형식의 UTC 날짜; 이 단일 날짜의 지표만 반환함
limit integer 아니요 페이지당 기록 수 (기본값: 20, 최대: 1000)
page string 아니요 이전 응답의 next_page 필드에서 가져온 불투명 커서 토큰

사용 가능한 지표

각 응답 기록은 단일 사용자의 단일 날짜에 대한 다음 지표를 포함해요:

차원(Dimensions)
  • date: RFC 3339 형식의 날짜(UTC 타임스탬프)
  • actor: Claude Code 작업을 수행한 사용자 또는 API 키(email_address가 있는 user_actor 또는 api_key_name이 있는 api_actor)
  • organization_id: 조직 UUID
  • customer_type: 고객 계정 유형(API 고객은 api, Pro/Team 고객은 subscription)
  • terminal_type: Claude Code가 사용된 터미널 또는 환경 유형(예: vscode, iTerm.app, tmux)
핵심 지표
  • num_sessions: 이 actor가 시작한 고유 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-5)
  • tokens.input/output: 이 모델의 입력·출력 토큰 수
  • tokens.cache_read/cache_creation: 이 모델의 캐시 관련 토큰 사용량
  • estimated_cost.amount: 이 모델의 예상 비용(미국 달러 센트)
  • estimated_cost.currency: 비용 금액의 통화 코드(현재 항상 USD)

응답 구조

API는 다음 형식으로 데이터를 반환해요:

{
  "data": [
    {
      "date": "2025-09-08T00:00:00Z",
      "actor": {
        "type": "user_actor",
        "email_address": "[email protected]"
      },
      "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-5-5",
          "tokens": {
            "input": 100000,
            "output": 35000,
            "cache_read": 10000,
            "cache_creation": 5000
          },
          "estimated_cost": {
            "currency": "USD",
            "amount": 113
          }
        }
      ]
    }
  ],
  "has_more": false,
  "next_page": null
}

페이지네이션

대규모 사용자 조직을 위해 API는 커서 기반 페이지네이션을 지원해요:

  1. 선택적 limit 매개변수로 초기 요청을 보내세요.
  2. 응답에서 has_moretrue이면 다음 요청에 next_page 값을 사용하세요.
  3. has_morefalse가 될 때까지 계속하세요.

커서는 마지막 기록의 위치를 인코딩하고, 새 데이터가 도착해도 안정적인 페이지네이션을 보장해요. 각 페이지네이션 세션은 일관된 데이터 경계를 유지해 기록을 놓치거나 중복하지 않게 해줘요.

일반적인 사용 사례

  • 임원 대시보드: 개발 속도에 대한 Claude Code 영향력을 보여주는 고수준 보고서 만들기
  • AI 도구 비교: Copilot, Cursor 같은 다른 AI 코딩 도구와 Claude Code를 비교하기 위한 지표 내보내기
  • 개발자 생산성 분석: 시간 경과에 따른 개인·팀 생산성 지표 추적
  • 비용 추적·배분: 지출 패턴 모니터링과 팀·프로젝트별 비용 배분
  • 도입 모니터링: 어느 팀과 사용자가 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 사용량만 추적해요. Amazon Bedrock의 Claude, Microsoft Foundry의 Claude, Google Cloud의 Claude, AWS의 Claude Platform을 통한 사용량은 포함되지 않아요.

이 API를 쓰는 데 비용이 드나요?

Claude Code Analytics API는 Admin API에 접근할 수 있는 모든 조직에서 무료로 사용할 수 있어요.

도구 수락율은 어떻게 계산하나요?

도구 수락율 = 각 도구 유형에 대해 accepted / (accepted + rejected). 예를 들어 edit 도구가 45 수락, 5 거부를 보여주면 수락율은 90%예요.

날짜 매개변수에 사용되는 시간대는 무엇인가요?

모든 날짜는 UTC예요. starting_at 매개변수는 YYYY-MM-DD 형식이어야 하며 그날의 UTC 자정을 나타내요.

함께 보기

더 알아보기 (Learn more)