Login
Back to Blog
CrazyRouter API Quick Start Guide

CrazyRouter API Quick Start Guide

C
Crazyrouter Team
January 22, 2026
680 viewsEnglish
Share:

Welcome to Crazyrouter! This guide will help you integrate the API within 5 minutes and start using world-class AI models.

Why choose Crazyrouter?#

  • Unified interface: Access 300+ AI models with a single API Key
  • OpenAI compatible: No code changes needed, just replace the base_url
  • Lower cost: More affordable than official pricing, pay-as-you-go with no subscription
  • High availability: Intelligent routing with automatic failover

1. Get your API Key#

  1. Visit the Crazyrouter official site
  2. Register an account and log in to the console
  3. Go to the “Token Management” page
  4. Click “Create Token”
  5. Copy the generated API Key (starting with sk-)

Tip: Keep your API Key safe and do not expose it in public.

2. Make your first request#

Using curl#

bash
curl https://crazyrouter.com/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer sk-your-api-key" \
  -H "User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36" \
  -d '{
    "model": "gpt-5.2",
    "messages": [{"role": "user", "content": "Hello, how are you?"}],
    "temperature": 0.7
  }'
python
from openai import OpenAI

client = OpenAI(
    api_key="sk-your-api-key",
    base_url="https://crazyrouter.com/v1"
,
    default_headers={
        "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36"
    }
)

response = client.chat.completions.create(
    model="gpt-5.2",
    messages=[
        {"role": "system", "content": "You are a helpful assistant."},
        {"role": "user", "content": "Hello, how are you?"}
    ],
    temperature=0.7,
    max_tokens=1000
)

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

Using Node.js#

javascript
import OpenAI from 'openai';

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

async function main() {
  const response = await client.chat.completions.create({
    model: 'gpt-5.2',
    messages: [
      { role: 'system', content: 'You are a helpful assistant.' },
      { role: 'user', content: 'Hello,Please introduce yourself' }
    ],
    temperature: 0.7
  });

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

main();

Streaming output#

python
from openai import OpenAI

client = OpenAI(
    api_key="sk-your-api-key",
    base_url="https://crazyrouter.com/v1"
,
    default_headers={
        "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36"
    }
)

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

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

3. Supported models#

Crazyrouter supports 300+ AI models. Here are some popular ones:

VendorModel examplesFeatures
OpenAIgpt-5.2, gpt-5, gpt-4o, o3-pro, o3-miniStrong overall capability, supports multimodality
Anthropicclaude-opus-4.5, claude-4, claude-sonnet-4Long context, strong coding ability
Googlegemini-3.0-pro, gemini-3-flash, gemini-2.5-proMultimodal with strong reasoning capability
xAIgrok-3, grok-3-mini, grok-3-visionReal-time information and deep search
DeepSeekdeepseek-r1, deepseek-v3High cost-performance, excellent Chinese support

View the full model list: Model Marketplace

4. Common parameter descriptions#

ParameterTypeDescription
modelstringModel name, e.g. gpt-5.2
messagesarrayList of conversation messages
temperaturenumberRandomness, 0–2, default 1
max_tokensintegerMaximum number of output tokens
streambooleanWhether to use streaming output
top_pnumberNucleus sampling parameter, 0–1

5. Error handling#

python
from openai import OpenAI, APIError, RateLimitError

client = OpenAI(
    api_key="sk-your-api-key",
    base_url="https://crazyrouter.com/v1"
,
    default_headers={
        "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36"
    }
)

try:
    response = client.chat.completions.create(
        model="gpt-5.2",
        messages=[{"role": "user", "content": "Hello!"}]
    )
except RateLimitError:
    print("Too many requests. Please try again later.")
except APIError as e:
    print(f"API error: {e}")

6. Next steps#


Implementation Guides

Related Posts

Gemini CLI Complete Guide 2026: Repo Automation, CI Agents, and API RoutingGuide

Gemini CLI Complete Guide 2026: Repo Automation, CI Agents, and API Routing

A developer-focused June 2026 guide to Gemini CLI, alternatives, implementation patterns, pricing tradeoffs, and when to use Crazyrouter for unified AI API access.

Jun 4
09|Claude Code with Crazyrouter Series 09: Chapter 6: Data Processing and AnalysisClaude Code

09|Claude Code with Crazyrouter Series 09: Chapter 6: Data Processing and Analysis

09|Claude Code with Crazyrouter Series 09: Chapter 6: Data Processing and Analysis. This article covers unified integration, configuration checks, and practical workflows for Claude Code and Crazyrouter, helping readers build reusable development workflows based on the site documentation.

Jun 10
GPT-6 Release Date: What We Know, What Is Rumored, and What to Use NowNews

GPT-6 Release Date: What We Know, What Is Rumored, and What to Use Now

What is the GPT-6 release date? Here's what OpenAI has confirmed, what remains speculation, and which frontier models developers can use right now instead of waiting.

Apr 18
01|Quick Start: Connecting Claude Code to CrazyrouterClaude Code

01|Quick Start: Connecting Claude Code to Crazyrouter

01|Quick Start: Connecting Claude Code to Crazyrouter. This article covers unified access, configuration checks, and practical workflows for using Claude Code with Crazyrouter, helping readers follow the site documentation to build a reusable development workflow.

Jun 10
04|Claude Code with Crazyrouter Series 04: Chapter 1: Quick StartClaude Code

04|Claude Code with Crazyrouter Series 04: Chapter 1: Quick Start

04|Claude Code with Crazyrouter Series 04: Chapter 1: Quick Start. This article covers unified integration, configuration checks, and a practical workflow for Claude Code and Crazyrouter, helping readers follow the site documentation to build a reusable development workflow.

Jun 10
05|Use Crazyrouter to Access Chinese Models in Claude CodeClaude Code

05|Use Crazyrouter to Access Chinese Models in Claude Code

05|Use Crazyrouter to access Chinese models in Claude Code. This article walks through unified integration, configuration checks, and a hands-on workflow for Claude Code and Crazyrouter, helping you build a reusable development workflow based on the site documentation.

Jun 10