Get Cost Report
get /v1/organizations/cost_report
Get Cost Report
Query Parameters
-
starting_at: stringTime buckets that start on or after this RFC 3339 timestamp will be returned. Each time bucket will be snapped to the start of the minute/hour/day in UTC.
-
bucket_width: optional "1d"Time granularity of the response data.
"1d"
-
ending_at: optional stringTime buckets that end before this RFC 3339 timestamp will be returned.
-
group_by: optional array of "workspace_id" or "description"Group by any subset of the available options.
-
"workspace_id" -
"description"
-
-
limit: optional numberMaximum number of time buckets to return in the response.
-
page: optional stringOptionally set to the
next_pagetoken from the previous response.
Header Parameters
-
"anthropic-beta": optional array of stringOptional header to specify the beta version(s) you want to use.
To use multiple betas, use a comma separated list like
beta1,beta2or specify the header multiple times for each beta.
Returns
-
CostReport object { data, has_more, next_page }-
data: array of object { ending_at, results, starting_at }-
ending_at: stringEnd of the time bucket (exclusive) in RFC 3339 format.
-
results: array of object { amount, context_window, cost_type, 7 more }List of cost items for this time bucket. There may be multiple items if one or more
group_by[]parameters are specified.-
amount: stringCost amount in lowest currency units (e.g. cents) as a decimal string. For example,
"123.45"in"USD"represents$1.23. -
context_window: "0-200k" or "200k-1M"Input context window used.
nullif not grouping by description or for non-token costs.-
"0-200k" -
"200k-1M"
-
-
cost_type: "tokens" or "web_search" or "code_execution" or "session_usage"Type of cost.
nullif not grouping by description.-
"tokens" -
"web_search" -
"code_execution" -
"session_usage"
-
-
currency: stringCurrency code for the cost amount. Currently always
"USD". -
description: stringDescription of the cost item.
nullif not grouping by description. -
inference_geo: stringInference geo used matching requests'
inference_geoparameter if set, otherwise the workspace'sdefault_inference_geo. For models that do not support specifyinginference_geothe value is"not_available". Alwaysnullif not grouping by inference geo. -
model: stringModel name used.
nullif not grouping by description or for non-token costs. -
service_tier: "standard" or "batch"Service tier used.
nullif not grouping by description or for non-token costs.-
"standard" -
"batch"
-
-
token_type: "uncached_input_tokens" or "output_tokens" or "cache_read_input_tokens" or 2 moreType of token.
nullif not grouping by description or for non-token costs.-
"uncached_input_tokens" -
"output_tokens" -
"cache_read_input_tokens" -
"cache_creation.ephemeral_1h_input_tokens" -
"cache_creation.ephemeral_5m_input_tokens"
-
-
workspace_id: stringID of the Workspace this cost is associated with.
nullif not grouping by workspace or for the default workspace.
-
-
starting_at: stringStart of the time bucket (inclusive) in RFC 3339 format.
-
-
has_more: booleanIndicates if there are more results.
-
next_page: stringToken to provide in as
pagein the subsequent request to retrieve the next page of data.
-
Example
curl https://api.anthropic.com/v1/organizations/cost_report \
-H 'anthropic-version: 2023-06-01' \
-H "X-Api-Key: $ANTHROPIC_ADMIN_API_KEY"
Response
{
"data": [
{
"ending_at": "2025-08-02T00:00:00Z",
"results": [
{
"amount": "123.78912",
"context_window": "0-200k",
"cost_type": "tokens",
"currency": "USD",
"description": "Claude Sonnet 4 Usage - Input Tokens",
"inference_geo": "global",
"model": "claude-opus-4-6",
"service_tier": "standard",
"token_type": "uncached_input_tokens",
"workspace_id": "wrkspc_01JwQvzr7rXLA5AGx3HKfFUJ"
}
],
"starting_at": "2025-08-01T00:00:00Z"
}
],
"has_more": true,
"next_page": "2019-12-27T18:11:19.117Z"
}