Codes are what let an account into the closed beta. Each code carries a number of seats, and an account can spend exactly one — ever.
The catalog is what the data plane sells, and the console owns it: prices, which upstream model each name maps to, and whether it is on sale. The gateway re-reads this every 30 seconds — a change here needs no deploy.
Prices are credits per million tokens. A model starts off sale: putting it in front of users is a deliberate second step.
The console is the only place a provider key comes from, and the only thing that is ever shown back is a masked hint. The gateway picks a rotation up on its next 30-second poll, so a new key needs no deploy.
A provider whose role authenticates the call (Bedrock) takes no stored key. Storing one for it is refused — there is nothing that would read it.
Every inference request, newest first, with what it was billed. A cancelled stream is charged too — its output is estimated from the content that reached the client, which is why those rows are marked.
Leave the code blank to generate an unambiguous one.