Bring your own keys
Route requests on your own provider keys and pay only the platform fee.
Save your own provider API key under Dashboard → Integrations and every request routed to that provider runs on your key: the tokens bill your account with the provider directly, at whatever rate you have negotiated with them. Instead of the token price, we charge the regular platform fee (5%) on what the usage would have cost at the route's normal price, debited from your credits. A response served this way carries "byok": true, and usage.cost is that fee.
Verification
A key is checked against the provider with one real call before it is saved; a key the provider rejects is not stored. Saved keys are encrypted at rest and never returned by the API - the dashboard shows only the last four characters.
While you have a key saved for a provider, requests to that provider are never silently served on our key. If the provider answers 401/403 (key revoked) or 402 (your provider account is out of balance), the request fails with byok_key_rejected or byok_no_balance naming your key, nothing is billed, and the key is marked in the dashboard. The error persists until you update or remove the key; after removal, requests route on our keys at normal prices again. Ordinary provider hiccups (429, 5xx) fail over between providers as usual.
{
"object": "chat.completion",
"model": "google/gemini-3.6-flash",
"provider": "google",
"byok": true,
"choices": [ ... ],
"usage": { ..., "cost": 0.0000021 }
}
# cost = the platform fee on the route's normal price for these tokens.
# The tokens themselves billed your own Google account.