Organization
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.
GET
/organization/v1/events/{id}● SupportedRequest parameters
idstring必填path: The usage event id from the events list's data[].id
Returns
200 usage.event
Errors follow the problem+json format — see error codes
Response
HTTP 200
The usage event
application/json
| Name | Type | Description |
|---|---|---|
| object | string | Object type; always `usage.event`. |
| id | string | Id of the usage event; pass it to getOrganizationEvent. |
| occurred_at | string | Time at which the usage happened, UTC. |
| ServiceName | string | Name of the platform service that produced the usage (the source service of the usage event). |
| ServiceCategory | string | Category of the service; a service without a registered category reports its own name. |
| ResourceId | string | Id of the resource that the usage belongs to. |
| ResourceName | string | Display name of the resource; falls back to ResourceId when no name is known. |
| BilledCost | string | Amount billed in USD as an exact decimal string; unsettled usage counts as 0 until it settles. |
| BillingCurrency | string | Currency of BilledCost; always `USD`. |
| ChargeClass | string | null | `Correction` for an event that corrects an earlier charge (its BilledCost is negative); null for ordinary usage. |
| 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. |
| settlement | object | How the usage was charged: settlement state, any shortfall, and why nothing was charged. |
| settlement.status | string | Settlement state of the event. |
| settlement.shortfall | string | null | USD amount that could not be charged, as a decimal string, when status is settled_with_shortfall; null otherwise. |
| settlement.zero_reason | string | null | Why nothing was charged for the event: `byok` when the caller used its own provider key; null when a charge applies. |
| lines | array<object> | Priced lines of the event; their BilledCost values add up to the event's BilledCost. |
| lines[].meter | string | Key of the meter that measured the line. |
| lines[].display_name | string | English label of the meter; falls back to the meter key in list pages. |
| lines[].ConsumedQuantity | string | Quantity consumed, an exact decimal string in ConsumedUnit. |
| lines[].ConsumedUnit | string | Unit of ConsumedQuantity as reported by the metering line; quantities of different units are never added together. |
| lines[].ListUnitPrice | string | null | List price in USD per PricingUnit as a decimal string; null when the line is not priced. |
| lines[].PricingUnit | string | null | Unit that ListUnitPrice applies to; null when the line is not priced. |
| lines[].BilledCost | string | Amount billed for this line in USD as a decimal string. |
| x_Charges | array<object> | The transactions that paid this event; their BilledCost sums to the event's BilledCost. |
| x_Charges[].transaction_id | string | The id of the billing transaction that paid part of this event. |
| x_Charges[].BilledCost | string | Amount billed in USD as an exact decimal string; unsettled usage counts as 0 until it settles. |
| x_Charges[].BillingCurrency | string | Currency of BilledCost; always `USD`. |
| x_Charges[].sub_account | string | Which balance the transaction was taken from. |
Response fields
| Field | Description |
|---|---|
object / id / occurred_at | always "usage.event", the event id, when it happened (UTC) |
ServiceName / ServiceCategory / ResourceId / ResourceName / BilledCost / BillingCurrency / ChargeClass / request_id / settlement | Exactly the same fields the events list carries for this event |
lines[].meter / lines[].display_name | The meter's identifier and its English display name |
lines[].ConsumedQuantity / ConsumedUnit | The line's consumed quantity and unit |
lines[].ListUnitPrice / PricingUnit | Always null: an event is priced as a whole, so there is no per-line unit price |
lines[].BilledCost | The line's cost, equal to the event's BilledCost |
x_Charges[] | The transactions that paid this event: transaction_id, BilledCost, BillingCurrency and sub_account (promotional balance or cash; promotional is taken first). They add up to the event's BilledCost |
For the transactions behind one event see Get a usage event.
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.
Export charges
Stream one FOCUS 1.3 JSON record per usage event as JSONL; the server paginates day by day, so windows longer than 93 days belong here.