EZRouter gives you one API key to access Claude, GPT, and Gemini models through native API-compatible endpoints. Pay once, get 2x credits, with automatic failover across providers.
Dashboard: https://openrouter.ezsite.ai
cr_)
| Provider | Base URL | Use With |
|----------|----------|----------|
| Claude / Anthropic | https://openrouter.ezsite.ai/api/claude | Claude Code, Anthropic SDK |
| OpenAI | https://openrouter.ezsite.ai/api/openai/v1 | Cursor, OpenAI SDK, ChatGPT-compatible tools |
| Gemini | https://openrouter.ezsite.ai/api/gemini | Gemini SDK, Google AI tools |
# Set environment variables
export ANTHROPIC_BASE_URL=https://openrouter.ezsite.ai/api/claude
export ANTHROPIC_API_KEY=your_cr_key_here
# Run Claude Code as usual
claude
// openclaw.json
{
"models": {
"providers": {
"ezrouter": {
"baseUrl": "https://openrouter.ezsite.ai/api/claude",
"apiKey": "${EZROUTER_API_KEY}",
"api": "anthropic-messages",
"models": [
{
"id": "claude-sonnet-4-6-20250627",
"name": "Claude Sonnet 4.6",
"reasoning": false,
"input": ["text"],
"contextWindow": 200000,
"maxTokens": 64000
}
]
}
}
},
"agents": {
"defaults": {
"model": "ezrouter/claude-sonnet-4-6-20250627"
}
}
}
export EZROUTER_API_KEY=your_cr_key_here
API Base URL: https://openrouter.ezsite.ai/api/openai/v1
API Key: your_cr_key_here
curl https://openrouter.ezsite.ai/api/claude/v1/messages \
-H "Authorization: Bearer your_cr_key_here" \
-H "Content-Type: application/json" \
-H "anthropic-version: 2023-06-01" \
-d '{
"model": "claude-sonnet-4-20250514",
"max_tokens": 1024,
"messages": [{"role": "user", "content": "Hello"}]
}'
curl https://openrouter.ezsite.ai/api/openai/v1/responses \
-H "Authorization: Bearer your_cr_key_here" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-5",
"input": [
{
"type": "message",
"role": "user",
"content": [{"type": "input_text", "text": "Hello"}]
}
]
}'
curl https://openrouter.ezsite.ai/api/openai/v1/chat/completions \
-H "Authorization: Bearer your_cr_key_here" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-4.1",
"messages": [{"role": "user", "content": "Hello"}]
}'
curl https://openrouter.ezsite.ai/api/gemini/v1beta/models/gemini-2.5-flash:generateContent \
-H "Authorization: Bearer your_cr_key_here" \
-H "Content-Type: application/json" \
-d '{
"contents": [{"role": "user", "parts": [{"text": "Hello"}]}]
}'
from openai import OpenAI
client = OpenAI(
api_key="your_cr_key_here",
base_url="https://openrouter.ezsite.ai/api/openai/v1"
)
response = client.chat.completions.create(
model="gpt-4.1",
messages=[{"role": "user", "content": "Hello!"}]
)
print(response.choices[0].message.content)
import anthropic
client = anthropic.Anthropic(
api_key="your_cr_key_here",
base_url="https://openrouter.ezsite.ai/api/claude"
)
message = client.messages.create(
model="claude-sonnet-4-6",
max_tokens=1024,
messages=[{"role": "user", "content": "Hello!"}]
)
print(message.content[0].text)
import OpenAI from "openai";
const client = new OpenAI({
apiKey: "your_cr_key_here",
baseURL: "https://openrouter.ezsite.ai/api/openai/v1",
});
const response = await client.chat.completions.create({
model: "gpt-5",
messages: [{ role: "user", content: "Hello!" }],
});
console.log(response.choices[0].message.content);
Models are updated dynamically. Query the models endpoint for each provider to get the current list:
# EZRouter format (no auth required) — includes pricing info
curl https://openrouter.ezsite.ai/api/model/list
# OpenAI format
curl https://openrouter.ezsite.ai/api/openai/v1/models \
-H "Authorization: Bearer your_cr_key_here"
# Claude / Anthropic format
curl https://openrouter.ezsite.ai/api/claude/v1/models \
-H "Authorization: Bearer your_cr_key_here"
# Gemini format
curl https://openrouter.ezsite.ai/api/gemini/v1beta/models \
-H "Authorization: Bearer your_cr_key_here"
Supported providers: Claude (Opus, Sonnet, Haiku), OpenAI (GPT-5.x, GPT-4.1, GPT-4o, o3/o4, Codex), Google Gemini (Pro, Flash, Flash-Lite).
共 1 个版本