ACPpotamia

Features / Per-customer budgets

Per-customer LLM budgets, so one customer cannot sink the rest.

If you sell a product built on AI, your customers share your OpenAI or Anthropic account. One customer's stuck agent or a malicious prompt can use up the budget and the rate limit for everyone. ACPpotamia gives each of your customers their own monthly budget and requests-a-minute limit, checked before every call.

How it works.

One header

Send X-ControlPlane-Tenant-Id with each call to say which customer it is for. New customers appear automatically.

A default and exceptions

Set a default for every customer, then give larger customers their own limit. A budget of 0 blocks a customer at once.

Isolated, even under load

Each customer's budget is reserved before the call is sent, so many calls at once cannot overspend it, and a blocked customer does not slow anyone else.

Automate it

Set and read limits from your own code with the Tenant API, for example when a customer signs up or changes plan.

Per API key and per task too

Cap one key's monthly spend, or limit each task's requests a minute and total spend.

Set a customer's budget when they sign up

curl -X PUT https://acp.examopotamia.com/v1/controlplane/tenants/customer_4821 \
  -H "Authorization: Bearer acp_your_admin_key" \
  -d '{"monthlyBudgetUsd": 25, "requestsPerMinute": 60}'

Questions.

What is a tenant?

One of your own customers. You choose the id, for example your internal customer id, and send it in X-ControlPlane-Tenant-Id.

What does a customer see when they reach their budget?

Their calls get HTTP 402 with the code tenant_budget_exhausted, so your product can show its own message or offer an upgrade. Other customers are not affected.

Which plans include it?

Per-customer budgets are part of Pro and Enterprise. Per-key and per-session limits are on every plan.

Can I see what each customer spends?

Yes. The Tenants page and the Tenant API show each customer's spend, requests and tokens for the month.

Related features.