ClaudeRouter Docs

Unified AI API Gateway

clauderouter.app exposes one endpoint that speaks OpenAI, Anthropic (Claude), and Gemini formats. Create an account, generate a token, and plug it into Claude Code CLI, Codex CLI, or any SDK.

Quick Start

  1. Sign up / log in at clauderouter.app.
  2. Add quota: go to Top Up in the dashboard and pay with ABA KHQR — scan the QR with any KHQR-compatible banking app; your balance is credited automatically once the payment is approved.
  3. Open Tokens → Add new token, copy the key (sk-...).
  4. Use one of the setup guides below.

API Endpoints

FormatBase URLAuth header
OpenAI-compatiblehttps://clauderouter.app/v1Authorization: Bearer sk-...
Claude / Anthropichttps://clauderouter.appx-api-key: sk-...
Geminihttps://clauderouter.app/v1beta?key=sk-...
Model names must match the models enabled on your ClaudeRouter account. Check the Models page in the dashboard for the exact list.

Claude Code CLI Setup

Option A — environment variables

export ANTHROPIC_BASE_URL="https://clauderouter.app"
export ANTHROPIC_AUTH_TOKEN="sk-your-clauderouter-key"

claude

Option B — persistent (~/.claude/settings.json)

{
  "env": {
    "ANTHROPIC_BASE_URL": "https://clauderouter.app",
    "ANTHROPIC_AUTH_TOKEN": "sk-your-clauderouter-key"
  }
}

Claude Code will send all requests through your gateway using the /v1/messages (Anthropic Messages) format. Streaming is supported.

Windows PowerShell: $env:ANTHROPIC_BASE_URL="https://clauderouter.app"; $env:ANTHROPIC_AUTH_TOKEN="sk-..."; claude

Codex CLI Setup

1. Install

npm install -g @openai/codex

2. Configure ~/.codex/config.toml

model_provider = "clauderouter"
model = "gpt-5"

[model_providers.clauderouter]
name = "ClaudeRouter"
base_url = "https://clauderouter.app/v1"
wire_api = "chat"
env_key = "CODEX_API_KEY"

3. Provide the key and run

export CODEX_API_KEY="sk-your-clauderouter-key"

codex "explain this repo"

Test with cURL

OpenAI format (/v1/chat/completions)

curl https://clauderouter.app/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer sk-your-clauderouter-key" \
  -d '{
    "model": "gpt-5",
    "messages": [{"role": "user", "content": "Hello!"}]
  }'

Claude format (/v1/messages)

curl https://clauderouter.app/v1/messages \
  -H "Content-Type: application/json" \
  -H "x-api-key: sk-your-clauderouter-key" \
  -H "anthropic-version: 2023-06-01" \
  -d '{
    "model": "claude-sonnet-4-5",
    "max_tokens": 256,
    "messages": [{"role": "user", "content": "Hello!"}]
  }'

Python SDK Example

from openai import OpenAI

client = OpenAI(
    api_key="sk-your-clauderouter-key",
    base_url="https://clauderouter.app/v1",
)

resp = client.chat.completions.create(
    model="gpt-5",
    messages=[{"role": "user", "content": "Hello!"}],
)
print(resp.choices[0].message.content)

Troubleshooting