---
title: "Get Buckets"
method: GET
path: "/api/billing/usage/buckets"
tags: ["billing"]
---

# Get Buckets

`GET /api/billing/usage/buckets`

## Request

- Base URL: `https://app.thinqos.com` (the document declares no server; this is the origin it was published from)
- URL: `https://app.thinqos.com/api/billing/usage/buckets`
- Auth: none declared

Daily spend buckets for the calling identity (TOS-3280).

``date_from`` is caller-overridable with no cursor equivalent - this is a
continuous daily time series feeding a chart, not a row list with a
"next page" affordance. The genuine unbounded-response risk (a multi-year
request returning one row per day for years) is closed by clamping the
window to :data:`MAX_BUCKET_RANGE_DAYS` server-side, silently narrowing
rather than erroring, matching this contract's other ceiling
(``bounded_limit``).

## Query parameters

- `provider` string[], nullable
- `model` string, nullable
- `capability` string[], nullable
- `operation` string, nullable
- `funding_source` string[], nullable
- `cost_status` string[], nullable
- `provider_key_id` string, uuid, nullable
- `request_id` string, nullable
- `chat_id` string, uuid, nullable
- `message_id` string, uuid, nullable
- `date_from` string, date-time, nullable
- `date_to` string, date-time, nullable
- `tz` string, nullable
- `target_identity_id` string, uuid, nullable

## Headers

- `x-impersonate-identity-id` string, nullable

## Response `200`

Successful Response

- object[]

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/thinqos/apis/thinqos-api.md) · [All operations](https://skmtc.dev/thinqos/apis/thinqos-api/llms.txt) · [OpenAPI document](https://skmtc.dev/thinqos/apis/thinqos-api/revisions/5387b4ded614?raw)
