AI Inference Gateway
One endpoint, every model, prepaid.
OpenAI-compatible API that routes to 40+ models from Anthropic, OpenAI, Meta, and others. Pay up front, know your cap, never get an invoice.
import OpenAI from 'openai';
const client = new OpenAI({
baseURL: 'https://api.rhodes.ai/v1',
apiKey: process.env.RHODES_KEY,
});
const completion = await client.chat.completions.create({
model: 'rhodes/llama-3.1-70b',
messages: [{ role: 'user', content: 'Hello' }],
}); Same SDK, same request format. Two lines to switch from OpenAI direct to Rhodes routing.
Routes to
How it works
Swap the base URL
Point existing OpenAI SDK code at Rhodes with one environment variable.
import OpenAI from 'openai';
const client = new OpenAI({
baseURL: 'https://api.rhodes.ai/v1',
apiKey: process.env.RHODES_KEY,
}); Set a fallback chain
Route requests through cheaper models first, frontier as backup.
POST /v1/chat/completions
{
"model": "rhodes/llama-3.1-70b",
"fallbacks": [
"rhodes/claude-sonnet-4"
],
"messages": [...]
} Hard spend cap
When credits run out, the gateway stops serving. No surprise bills.
Four steps to production
Sign up
Create an account in 30 seconds. No credit card until you want to add credits.
Add credits
Top up via Stripe. $10 minimum, credits never expire.
Get a key
Generate an API key. Shown once, treat it like a password.
Route traffic
Point your OpenAI client at api.rhodes.ai. Same request shape, same SDK.
baseURL: "https://api.rhodes.ai/v1" Everything included
OpenAI-compatible
Same request shape, response format, and SDK. Only the host and key change.
Prepaid credits
Top up before you spend. When the balance hits zero, requests stop.
Model fallbacks
Set backup models per request. Automatic retry on rate limit or error.
Per-key budgets
Cap spend per credential. Useful for dev keys, demos, or untrusted use.
Usage dashboard
Token counts, cost per model, spend by day. Exportable as CSV.
Streaming responses
Server-sent events work the same as OpenAI. No client changes needed.
Function calling
Tool use passes through for models that support it (Claude, GPT, Gemini).
Webhook logs
POST usage events to your endpoint for internal billing or alerting.
BYOK mode
Bring your own upstream keys. Rhodes routes, you pay providers directly.
Sub-accounts
Partition one account into isolated tenants. Separate balances, keys.
Rate limits
Enforce requests per minute per key. Protects your balance from runaway loops.
Model catalog
GET /v1/models returns every routable model and its current price.
Compared to alternatives
How is pricing different from OpenRouter?
OpenRouter charges per request with dynamic markup. Rhodes charges a flat per-million-token rate set in advance, and the markup is baked into that published price. You know the cost before you call.
Do I need separate keys per provider?
No. One Rhodes key routes to every model we support. We manage upstream credentials, you manage one key and one balance.
What happens when credits run out?
The gateway returns a 402 Payment Required and stops serving. No requests go through until you top up. This is the hard cap — no invoice arrives later.
Can I use my own upstream API keys?
Yes, BYOK mode. You provide Anthropic/OpenAI/etc keys, Rhodes routes traffic, and you pay providers directly. Useful if you have negotiated rates or need to stay on existing billing.
Do credits expire?
No. Top up once, spend down over months or years. The balance stays until you use it.
Is there a free tier?
No. Rhodes is prepaid: $10 minimum, and that $10 becomes tokens. The product costs what the inference costs, no margin on small amounts.
No invoices, no surprises.
Top up $10, route 200,000 tokens through Llama 3.1 70B. When it runs out, we tell you. That is the contract.