Console
Clients
Split spend by the client each call was for, cap it with a budget, and export a monthly statement.
A client tag is a short string on a request, such as acme, naming which of your clients the call was for. The Gateway records it on the request trace and on the priced ledger. /dashboard/clients sums this calendar month's spend per tag, and every tagged call's response carries the tag back in x-lobstack-client-tag.
Tagging a call
There are three ways to set a tag. When more than one is present, the first in this list wins.
| Source | How |
|---|---|
| The API key | Issue a key for one client (API keys, the optional Client field). Every call on it is tagged, and the caller cannot override it. |
| Header | x-lobstack-client-tag: acme |
| Request body | metadata.client, OpenAI's own field for caller-defined tags, so an unmodified SDK can set it. |
A tag is 1 to 64 characters of a–z, 0–9, ., _ or -, starting with a letter or digit. Upper case is folded to lower case. A tag that is present and malformed is a 400, not a silent drop: a call you meant to bill to a client and that was recorded untagged is money you cannot invoice.
Configured clients
Tagging is never limited: every plan records every tag. Configuring a tag gives it a name, a monthly budget, a hard stop and alert recipients. Owners and admins configure clients; everyone in the organization can see them. The plan sets how many may be configured at once, and archiving one frees its place.
| Plan | Configured clients |
|---|---|
| Free | 0 |
| Developer | 3 |
| Studio | 10 |
| Scale | Unlimited |
Budgets and alerts
A budget is in USD per calendar month, UTC. With hard stop on, once the month's spend reaches the budget the Gateway refuses that client's calls with a 402 and the code CLIENT_BUDGET_EXHAUSTED until the month turns or the budget is raised. Without it, the budget only alerts.
Alerts fire once per month at 80% and at 100% of the budget: an email to the client's alert recipients, and a budget.threshold event to your webhooks.
Statements
Every tag the ledger saw has a statement, configured or not: one calendar month (UTC), one line per model and per whose key ran it (Lobstack's or your own provider key), with requests, input and output tokens and cost. Download it as CSV, or open the printable page and save it as a PDF to attach to an invoice.
Statements are summed from the priced ledger, every row. A request the ledger could not price is counted and flagged, never guessed, and the total is then marked as a floor.