Billing status endpoint
GET /openai/v1/balance returns billing status for the authenticated key. For customer-organization keys, the organization balance is the only money account. Project budgets are reporting targets and are never returned as spendable balance.
A valid key returns 200 OK:
{
"object": "balance",
"currency": "USD",
"billing_subject": "organization_shared_balance",
"mode": "organization_balance",
"balance": 54.75,
"remaining": 54.75,
"organization_balance": 60,
"reserved": 5.25,
"unlimited": false
}
For organization-funded keys, organization_balance is the book balance, reserved is the amount held for admitted requests that have not settled, and balance / remaining are the currently available amount. A missing or unreconciled organization wallet returns 503 balance_unavailable; it is never reported as a fabricated zero.
An optional key_spend_limit describes a key-level restriction when one is explicitly configured. It does not create or reserve money. Subscription, contract-invoice, and external billing contexts keep their corresponding public modes.