Automatic failover
Retry transient failures, respect rate-limit cooldowns, open circuits around unhealthy providers, and continue through the next eligible model.
Route OpenAI, Claude Code, Codex, and compatible SDKs through one stable gateway. Automatically fail over when models, quotas, or providers let you down.
req_9e1109
Connect the providers you already use
Plus Hugging Face, SambaNova, SiliconFlow, ModelScope, GitHub Models, Kilo Code, Aion Labs, and Z.ai.
Built for unreliable upstreams
Keep provider-specific complexity inside the gateway. Your application calls one model alias while the router handles availability, compatibility, and recovery.
Retry transient failures, respect rate-limit cooldowns, open circuits around unhealthy providers, and continue through the next eligible model.
Route tools, JSON mode, structured output, vision, reasoning, streaming, and embeddings only to compatible active models.
Create aliases such as free-router or vision-router with their own provider
order and routing strategy.
See every eligibility check, provider attempt, failover decision, response timing, token count, and returned routing header.
Track daily and monthly requests or tokens per provider. Stop routing before a free tier is exhausted and see exactly when capacity resets.
Your provider credentials stay on your deployment. The dashboard never displays a saved provider key again.
Understand every decision
General API logs tell you that a request failed. LLM router shows which providers were considered, why they were skipped, what was retried, and where the response came from.
Three steps, one endpoint
Use the provider keys and models you already have. No application-specific adapters and no provider SDK lock-in.
Connect one or more providers and select an active model for each.
Use priority, round-robin, weighted, random, or lowest-latency routing.
Keep your existing OpenAI, Codex, or Claude Code client.
import OpenAI from "openai";
const client = new OpenAI({
baseURL: "https://llmrouter.dpdns.org/v1",
apiKey: flm_YOUR_KEY_HERE,
});
const response = await client.chat.completions.create({
model: "free-router", // Your Model alias
messages: [{ role: "user", content: "Hello!" }],
});
export OPENAI_BASE_URL="https://llmrouter.dpdns.org/v1"
export OPENAI_API_KEY="flm_YOUR_KEY_HERE"
codex
export ANTHROPIC_BASE_URL="https://llmrouter.dpdns.org/v1"
export ANTHROPIC_AUTH_TOKEN="flm_YOUR_KEY_HERE"
claude
Stop hardcoding provider failures
Deploy the gateway, connect your keys, and keep one stable endpoint as providers and models change.