Call any provider through api.nemu.cc.
api.nemu.cc speaks chat completions, the Responses API and Anthropic Messages, and serves any of them from any provider you connect. The console decides which model answers, what it may spend, and keeps a record of every call.
Free to start. Bring a key from a provider you already use.
- Chat completions
POST /v1/chat/completions - Responses
POST /v1/responses - Anthropic Messages
POST /anthropic/v1/messages
Eight stops between your code and your provider.
Every call to api.nemu.cc takes the same path, in this order. Each stop is something you set in the console. Pick one to jump to it.
- 01KeyThe gateway key names one workspace. Nothing outside it can be reached.
sk_ab12c-de34f. → production - 02PlanRequests a minute, a day and a month, then burst, concurrency and body size.
Pro · 14 of 1,000 this minute - 03WorkflowA graph in the console may swap the requested model for another.
cost check · failure → keep - 04ModelMappings rewrite the name, then it resolves to one provider and one model.
gpt-4o → anthropic/fable-5.1 - 05PromptsSystem, user and assistant prompts you set centrally are prepended.
+1 system prompt - 06QuotasYour own rules are counted and the workspace budget is reserved.
ci_runner_daily · room left - 07ForwardTranslated into the provider's protocol and sent with your sealed key.
chat → messages · anthropic - 08RecordOne row in Metrics, and the reservation settled against the real cost.
200 · 1.8 s · $0.0124
The gateway translates protocols in both directions.
The URL picks the protocol you speak. The provider's compatibility setting picks the one spoken upstream. System blocks, tool calls, streaming events, thinking and cache breakpoints are converted in both directions.
Hosted tools such as web search and code execution pass through only from an Anthropic client to an Anthropic provider.
Your provider bills the tokens at the rates you already pay.
Every call runs on the provider key you added in the console, so OpenAI, Anthropic or whichever provider you connected bills the tokens directly. nemu adds no markup. Credits pay only for the Computer, web search, page reads and deep search.
Any provider, or your own server
Pick a service from the catalog, or point at your own https endpoint: a local server, a private deployment, a proxy.
Metrics show the cost of each call
Each row records what the call cost at your provider's price, so you can check the bill before it arrives.
Provider errors are labeled
When your provider account runs out of funds, the 402 response says it came from the provider. Top up with the provider; nemu credits are not involved.
The gateway works on Free
The Free plan has no credit balance, and the gateway still serves 3,000 requests a month on it.
Change which model answers without a deploy.
Your code keeps sending the same name. The console decides what that name means today, and Metrics records the model that actually answered.
Rename the model a client asks for before anything else runs, so code with a hardcoded model name uses the model you chose.
gpt-4oanthropic/fable-5.1
A small graph that picks the model at call time from your own usage, the time of day or whether the request carries an image.
openai/gpt-4oopenai/gpt-4o-mini
Spend on openai/gpt-4o, last 7 days
model: openai/gpt-4ocost > 50 · window 7 daysopenai/gpt-4o-miniopenai/gpt-4oThe client asked for openai/gpt-4o. It runs on openai/gpt-4o, and Metrics records the model that actually answered.
Prompts, quotas and budgets apply to every call in a workspace.
You set them once in the console instead of rebuilding them in each application.
- PromptsWrite a system prompt once and it is put ahead of every matching request, for all models or for one. (opens the documentation in a new tab)
- Quota rulesCap one model, one key, one member or one provider, so a single busy client cannot use everything. (opens the documentation in a new tab)
- Workspace budgetA monthly spend cap checked before the call. A request that would cross it is refused, never run and billed. (opens the documentation in a new tab)
- MetricsOne row per request, refused ones too, with the model that answered, the latency and the cost. Message bodies are never stored. (opens the documentation in a new tab)
- Clear refusalsEvery error says whether the gateway or your provider refused, and a 429 says when to try again. (opens the documentation in a new tab)
- WorkspacesProduction and staging stay apart. A key reaches only the providers, models and rules of its own workspace. (opens the documentation in a new tab)
Run Claude Code and Codex on any model you enable.
Claude Code speaks Anthropic Messages and Codex speaks the Responses API. Both are served for every model you enable, so an agent built for one provider runs on another. Point either one at the gateway with a base URL and a key.
{
"env": {
"ANTHROPIC_BASE_URL": "https://api.nemu.cc/anthropic",
"ANTHROPIC_AUTH_TOKEN": "YOUR_NEMU_GATEWAY_KEY",
"CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY": "1"
}
}Mappings and workflows are on every plan, including Free.
On the Free plan
- 3providers
- 5models
- 3mappings
- 5prompts
- 2quota rules
- 3workflows
- 2workspaces
- 3,000requests a month
- Limits count per account. Ten keys share one allowance rather than getting ten.
- When a plan lapses nothing is deleted. Anything above the new limits stops taking new work until you are back under them.
Send one request, then open Metrics.
Connect a provider, enable a model and create a key. The quickstart takes about five minutes, and your first request shows up in Metrics as soon as it completes.
$ curl https://api.nemu.cc/v1/models -H "Authorization: Bearer $NEMU_KEY"