List usage events
Usage events newest first, one opaque-cursor page at a time, each with its cost and settlement state; the transactions that paid an event live on the single-event lookup.
/organization/v1/events● SupportedRequest parameters
starting_atstring必填query: Window start (inclusive), UTC ISO 8601, e.g. 2026-09-26T00:00:00Z
ending_atstring必填query: Window end (exclusive), UTC ISO 8601; at most 93 days after starting_at (the charges export has no such cap)
limitinteger可选query: Page size, 1–100, defaults to 25
pagestring可选query: The opaque cursor from the previous page's next_page — pass it back unchanged
Returns
200 page
Errors follow the problem+json format — see error codes
Response
HTTP 200
Event page
application/json
| Name | Type | Description |
|---|---|---|
| object | string | Object type; always `page`. |
| data | array<object> | Usage events, newest first. |
| data[].object | string | Object type; always `usage.event`. |
| data[].id | string | Id of the usage event; pass it to getOrganizationEvent. |
| data[].occurred_at | string | Time at which the usage happened, UTC. |
| data[].ServiceName | string | Name of the platform service that produced the usage (the source service of the usage event). |
| data[].ServiceCategory | string | Category of the service; a service without a registered category reports its own name. |
| data[].ResourceId | string | Id of the resource that the usage belongs to. |
| data[].ResourceName | string | Display name of the resource; falls back to ResourceId when no name is known. |
| data[].BilledCost | string | Amount billed in USD as an exact decimal string; unsettled usage counts as 0 until it settles. |
| data[].BillingCurrency | string | Currency of BilledCost; always `USD`. |
| data[].ChargeClass | string | null | `Correction` for an event that corrects an earlier charge (its BilledCost is negative); null for ordinary usage. |
| data[].request_id | string | null | X-Request-Id of the API call that produced the usage; null for usage that does not come from a request. |
| data[].settlement | object | How the usage was charged: settlement state, any shortfall, and why nothing was charged. |
| data[].lines | array<object> | Metering lines mapped from the billing measurements; the priced split (ListUnitPrice, PricingUnit, BilledCost) rides only GET /events/{id}. |
| has_more | boolean | Whether more results exist beyond this page; request again with `page` set to `next_page` to read them. |
| next_page | string | null | Opaque cursor for the next page; null on the last page. Pass it unchanged as `page`. |
Response fields
| Field | Description |
|---|---|
object | always "page" |
data[].object | always "usage.event" |
data[].id | The event id — use it for the single-event lookup and reconciliation |
data[].occurred_at | When the usage happened (UTC) |
data[].ServiceName / ServiceCategory / ResourceId / ResourceName | FOCUS service and resource columns |
data[].BilledCost / BillingCurrency | The event's cost (decimal string) and the currency charged (CNY or USD) |
data[].ChargeClass | "Correction" for correction events (negative cost), null otherwise |
data[].request_id | The X-Request-Id of the API call that produced this usage — look it up in your call logs |
data[].settlement.status | settled (charged) / no_charge (recorded, nothing charged) / rejected (billing refused the charge) |
data[].settlement.shortfall / data[].settlement.zero_reason | Currently always null; reserved for later settlement detail |
has_more / next_page | Newest first, one cursor page at a time; pages never duplicate or skip an event |
For the transactions behind one event see Get a usage event.
List usage
Consumed quantity per time bucket, groupable by FOCUS columns; quantities of different units stay on separate rows and are never added together.
Get a usage event
One usage event in full: usage, cost, settlement status and the transactions that paid it (x_Charges); a nonexistent id and another organization's id are indistinguishable — both answer 404.