Give every user their own key and a prepaid credit balance. Each call deducts credits — at zero, the request is blocked before your model runs. No surprise bills, no free riders.
Chat, images, agents, video — Ava's same prepaid balance enforces all of them. Watch a month of her usage play out below.
Each chat message or render hits your OpenAI or Anthropic account. A free user in a retry loop is real spend — and bots find unprotected AI endpoints fast.
OpenAI and Anthropic cap your total spend, not each of your customers. There is no per-user switch to flip on their dashboards — that layer is yours to build.
In credit-priced AI products, a handful of heavy users typically drive the bulk of model spend. Without hard caps, they decide your margin — not you.
When someone signs up, one API call creates their consumer and key with a prepaid balance — 100 credits on your free tier, 5,000 on Pro. Refills run monthly on their plan.
You choose the exchange rate: 1 credit per chat message, 40 per image, 400 per video clip, 2 per agent step. One currency across every model and provider — reprice anytime without touching keys.
Before your model call, one request checks the key and deducts the price. Valid → run the call. 402 → show your paywall. The whole check takes under 5ms.
Keep your gateway — Vercel AI Gateway, Portkey, OpenRouter all stay exactly where they are. ReqKey answers a different question, one step earlier and inside your own API: is this user allowed to spend right now? One <5ms check before the model call, nothing during it — your prompts and streams never pass through us.
Plans with monthly, weekly, or daily refills — reset or accumulate. Trials and carryover included.
A runaway agent or a scripted free account can't hammer your model endpoints — limits hold per key.
A stream that finishes past zero lands in the overage allowance — nobody gets cut off mid-answer.
Shadow limits fire warnings before anyone hits zero, so your users top up instead of churning.
Who spends what, on which feature, at what latency — every validated request is logged and queryable.
Suspend, reroll, or revoke any key from the dashboard or one API call — no deploy, effective immediately.
Per-user limits, streaming, providers, and where billing fits.
Not from OpenAI — provider limits cap your whole account, not each of your customers. ReqKey adds the missing layer: every user's key carries its own prepaid balance and hard cap, enforced on each call.
Without ReqKey: a ledger table, race-condition handling, refill crons, and webhook glue. With ReqKey: create a key with a credit limit and call validate before each model call — the ledger, refills, and blocking are already done.
All of them. ReqKey never proxies your model call, so OpenAI, Anthropic, Gemini, Mistral, open-source, or your own GPUs all meter the same way — in your credits, at your prices.
Enable overage: the final settle lands in the overage allowance, the answer finishes, and the user tops up afterwards. You set the overage cap, so exposure stays bounded.
No — pair it with Stripe, Paddle, or your payment stack. They take the payment; your webhook recharges ReqKey credits; ReqKey enforces at request time. They invoice after the fact — we block at zero.
One <5ms check before the call, zero during it. We're not in the streaming path at all — a 20-second generation costs the same overhead as an instant one.
Issue your first key in five minutes — 100,000 requests/month free.
Start free