xujfcn's picture
Switch to utm_source/medium/campaign tracking for GA4
22f55d9
metadata
license: mit
tags:
  - tutorial
  - crazyrouter
  - openai
  - api-gateway
  - getting-started
  - llm
language:
  - en
  - zh

πŸš€ Crazyrouter Getting Started Guide

One API key. 624+ AI models. OpenAI-compatible. Get started in 60 seconds.

What is Crazyrouter?

Crazyrouter is an AI API gateway. Instead of managing separate API keys for OpenAI, Anthropic, Google, DeepSeek, and dozens of other providers, you use one key to access them all.

It's fully OpenAI SDK compatible β€” just change the base_url and you're done.


Step 1: Get Your API Key

  1. Go to crazyrouter.com
  2. Sign up (free tier available)
  3. Copy your API key (sk-...)

Step 2: Install the OpenAI SDK

pip install openai

That's it. No special SDK needed.


Step 3: Make Your First API Call

Python

from openai import OpenAI

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

# Use any model β€” GPT-4o, Claude, Gemini, DeepSeek...
response = client.chat.completions.create(
    model="gpt-4o-mini",
    messages=[
        {"role": "user", "content": "What is an API gateway?"}
    ]
)

print(response.choices[0].message.content)

cURL

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

JavaScript / Node.js

import OpenAI from "openai";

const client = new OpenAI({
  baseURL: "https://crazyrouter.com/v1",
  apiKey: "sk-your-crazyrouter-key",
});

const response = await client.chat.completions.create({
  model: "gpt-4o-mini",
  messages: [{ role: "user", content: "Hello from Node.js!" }],
});

console.log(response.choices[0].message.content);

Step 4: Switch Models Instantly

The magic of Crazyrouter β€” switch between any model by changing one string:

# OpenAI
response = client.chat.completions.create(model="gpt-4o", messages=messages)

# Anthropic Claude
response = client.chat.completions.create(model="claude-sonnet-4-20250514", messages=messages)

# Google Gemini
response = client.chat.completions.create(model="gemini-2.0-flash", messages=messages)

# DeepSeek
response = client.chat.completions.create(model="deepseek-chat", messages=messages)

# DeepSeek R1 (reasoning)
response = client.chat.completions.create(model="deepseek-reasoner", messages=messages)

No SDK changes. No config changes. Just the model name.


Step 5: Streaming Responses

stream = client.chat.completions.create(
    model="gpt-4o",
    messages=[{"role": "user", "content": "Write a short poem about coding"}],
    stream=True
)

for chunk in stream:
    content = chunk.choices[0].delta.content
    if content:
        print(content, end="", flush=True)

Step 6: List Available Models

models = client.models.list()
for model in models.data:
    print(model.id)

Or via cURL:

curl https://crazyrouter.com/v1/models \
  -H "Authorization: Bearer sk-your-crazyrouter-key"

Popular Models

Model Provider Best For
gpt-4o OpenAI General purpose, vision
gpt-4o-mini OpenAI Fast, cheap, good enough
claude-sonnet-4-20250514 Anthropic Coding, analysis
claude-haiku-3.5 Anthropic Fast, affordable
gemini-2.0-flash Google Speed, long context
deepseek-chat DeepSeek Cheap, strong coding
deepseek-reasoner DeepSeek Complex reasoning (R1)
o3-mini OpenAI Reasoning tasks

Environment Variables (Recommended)

export OPENAI_API_KEY="sk-your-crazyrouter-key"
export OPENAI_BASE_URL="https://crazyrouter.com/v1"

Then your code simplifies to:

from openai import OpenAI
client = OpenAI()  # Reads from env vars automatically

FAQ

Q: Is it really OpenAI-compatible? A: Yes. Any tool that works with the OpenAI API works with Crazyrouter. Just change the base URL.

Q: Is there a free tier? A: Yes. Sign up at crazyrouter.com to get started.

Q: How many models are available? A: 624+ models from 20+ providers, and growing.

Q: Can I use it with LangChain / LlamaIndex / AutoGen? A: Absolutely. See our LangChain guide.


Links