Bucketed usage metering
Account and platform
Bucketed usage metering
Return this org’s metered usage, bucketed over [startTime, endTime).
GET
Bucketed usage metering
Authorization
This route requires theusage:read scope. A key carrying admin also qualifies.
A missing or invalid credential returns 401 authentication_error. A valid credential without the scope returns 403 permission_denied, and the problem body names the exact scope required.
Headers
These are request conventions the contract does not declare as parameters, so they do not appear in the schema tables below.Success responses
Errors
Every error is an RFC 9457
application/problem+json body carrying a stable code, a requestId, and a suggestedAction where Exo has one. See Errors.
Notes
- Only non-empty buckets come back. No usage in the range is an empty
bucketslist with a 200, not a 404. - This is an organization-wide billing view, which is why it needs
usage:readrather than plainread.
Authorizations
An Exo API key (exo_...) sent as the X-Exo-API-Key header.
Query Parameters
Range start, RFC 3339 (inclusive). Naive timestamps are read as UTC.
Range end, RFC 3339 (exclusive). Defaults to now.
Bucket width: hour or day.
Available options:
hour, day Comma-separated subset of: subject, capability.
Response
Successful Response
GET /v1/usage: chronological non-empty buckets (empty list when none).