user.id, so Alice’s key only authenticates as Alice. The gateway SHA-256s the Bearer token and asks chat to resolve the hash. Google identity never enters the gateway.
There is no per-key quota yet. Token counts from verified receipts are posted to chat /usage as request and token totals, with no dollar amounts.
Missing or invalid key
HTTP 401 uses the same envelope whether the header is missing, the secret is wrong, or the key was revoked:directory_unavailable with mifr_action: wait. That is a directory outage, not a bad key; retry later.
What this page does not cover
Operator keys
Operator keys
MIFR_GATEWAY_KEYS and ~/.mifr/gateway-keys are for ops, listings, and local curl. Completions on those keys have no user.id, and they are not minted from Settings.CLI login
CLI login
mifrcli_… in ~/.mifr/account.json links a Mac to an account. It cannot call POST /v1/chat/completions.Browser CORS
Browser CORS
The production website origin is allowlisted. Unknown origins get no
Access-Control-Allow-Origin. Completions still need a Bearer token on POST. Preflight OPTIONS is answered with 204 before the key check.CORS origins default to https://mifr-website-production.up.railway.app (override with MIFR_CORS_ORIGINS). Verdict headers are listed in Access-Control-Expose-Headers.