# Claude Code and Cowork usage by person, by model or by product

> Usage is what Claude Code and Cowork reported about themselves, valued at API list price. It is not what the organization is billed, and it includes the current day. Rows are ordered by usage value, largest first. share is a row's part of the whole range, whatever search narrows the rows to. Grouped by person the answer names people, so it is sent with Cache-Control: no-store.

Source: https://docs.levelfour.ai/api-reference/anthropic/get-providers-anthropic-usage-breakdown


## GET /api/v1/providers/anthropic/usage/breakdown

Usage is what Claude Code and Cowork reported about themselves, valued at API list price. It is not what the organization is billed, and it includes the current day. Rows are ordered by usage value, largest first. share is a row's part of the whole range, whatever search narrows the rows to. Grouped by person the answer names people, so it is sent with Cache-Control: no-store.

### Authentication

Send `Authorization: Bearer <token>`.

### Parameters

- `group_by` (query, one of `person`, `model`, `product`, default `person`): What each row is
- `page` (query, integer, default `1`)
- `page_size` (query, integer, default `10`)
- `search` (query, string, default ``): Keep the rows whose name contains this
- `start` (query, string, required): First day, ISO 8601 (YYYY-MM-DD or a datetime)
- `end` (query, string, required): Last day, ISO 8601 (YYYY-MM-DD or a datetime), included

### Responses

#### 200: Successful Response

- `success` (boolean, default `true`)
- `data` (object, required)
  - `items` (array of object, required)
    - `name` (string, required): The person, the model, or the product: claude_code or cowork
    - `usage_value` (number, required)
    - `requests` (integer, required)
    - `tokens` (integer, required): The four kinds of token added up
    - `input_tokens` (integer, required)
    - `output_tokens` (integer, required)
    - `cache_read_tokens` (integer, required): Input tokens read from the prompt cache
    - `cache_creation_tokens` (integer, required): Input tokens written to the prompt cache
    - `share` (number, required)
  - `pagination` (object, required): Pagination metadata
    - `total_items` (integer, required): Total number of items across all pages
    - `total_pages` (integer, required): Total number of pages
    - `current_page` (integer, required): Current page number (1-indexed)
    - `page_size` (integer, required): Number of items per page
    - `has_next` (boolean, required): Whether there is a next page
    - `has_previous` (boolean, required): Whether there is a previous page
- `timestamp` (string, required)

#### Errors

- `400`: Bad Request
- `401`: Authentication Error
- `403`: Authorization Error
- `404`: Not Found
- `409`: Conflict
- `422`: Validation Error
- `429`: Rate Limit Exceeded
- `500`: Internal Server Error

Body of `400`, `401`, `403`, `404`, `409`, `422`, `429`, `500`:

- `success` (`false`, required)
- `error` (object, required)
  - `code` (string, required)
  - `message` (string, required)
  - `details` (any)
- `timestamp` (date-time string, required)
