ExperientialDocs
Sign in

Billing & usage

Credits & billing

Every model is paid for through one of two lanes, and the gateway adds no markup on either. Platform-funded calls draw down your credits; bring-your-own-key calls are billed by the provider directly.

Two lanes

  • Platform-funded: our credits, priced from the public catalog. Each call draws down your balance and is metered as cost_micro_usd.
  • Pass-through (BYOK): your own provider key. The provider bills you directly, so these calls never draw credits; they are metered as estimated_cost_micro_usd for attribution only.

Which lane a model rides is decided per-provider by its waterfall: a deployment backed by one of your provider connections is pass-through; a platform-seeded deployment is platform-funded. Either way, zero markup.

Credits

A new organization starts with a welcome credit grant. Your balance is the credit granted minus your billable (platform-funded) spend; pass-through usage does not count against it. Balance, spend, adding credits, and auto-recharge live in the dashboard at Credits.

Balance and top-ups are dashboard (web-session) actions, not API-key actions. An agent tracks its own consumption through usage instead: read GET /api/gateway/usage/daily for spend by day, model, or member. See Telemetry.

Spend controls

Spend is bounded at three levels, all configured in the dashboard:

  • Per-key limits: a daily platform-funded spend cap, a requests-per-minute ceiling, and a tokens-per-minute ceiling on each API key.
  • Budgets: a spend ceiling scoped to the whole team, an API key, a model, an identity, or a routing pool, for a given month or as a recurring cap.
  • Spend alerts: an email when monthly org spend or a budget crosses a threshold.

A key can read its own effective limits over the API. GET /api/gateway/keys/<api_key_id>/limits returns the three ceilings with platform defaults folded in; a null value means uncapped, and source is explicit when set on the key or default otherwise. Setting limits is an admin dashboard action.

GET /api/gateway/keys/{api_key_id}/limits
curl "https://api-pr-668.preview.experientiallabs.ai/api/gateway/keys/$API_KEY_ID/limits" \
-H "Authorization: Bearer $EXPLABS_API_KEY"
fieldMeaning
daily_spend_cap_micro_usdMax platform-funded spend per day for this key (micro-USD).
requests_per_minuteRequest-rate ceiling for this key.
tokens_per_minuteToken-rate (TPM) ceiling for this key.

When you run out

When your credit balance or a spend limit is exhausted, calls fail with 429 insufficient_quota; the message says which — a daily org or per-model cap, a budget, or your credits. It is not transient: retrying does not clear it.

How to recover

  • Add credits or raise a limit in the dashboard (platform-funded lane).
  • Or move the model to the pass-through lane by connecting a provider key.

The full error contract is in Errors.