API Documentation
OpenAI-compatible and Anthropic-compatible API endpoints. Drop in your API key and start making requests — zero config changes needed.
11+
AI Models
Including Claude, DeepSeek, Qwen
2
API Formats
OpenAI & Anthropic compatible
SSE
Streaming
Real-time token streaming
Quick Start
Get up and running in under a minute.
Make your first request
Use the example below to send your first API call.
curl -X POST https://api.unlimitedclaude.com/api/v1/chat/completions \
-H "Content-Type: application/json" \
-H "x-api-key: YOUR_API_KEY" \
-d '{
"model": "claude-sonnet-4.6",
"messages": [{"role": "user", "content": "Hello!"}]
}'Authentication
All API requests require an API key passed via the x-api-key header. You can find your key in the Dashboard.
curl https://api.unlimitedclaude.com/api/v1/chat/completions \
-H "Content-Type: application/json" \
-H "x-api-key: YOUR_API_KEY" \
-d '{"model": "claude-sonnet-4.6", "messages": [...]}'Base URL
All endpoints are relative to this base URL.
https://api.unlimitedclaude.com/api/v1/api/v1/chat/completions.Chat Completions
/api/v1/chat/completions—OpenAI-compatible endpointWorks with any SDK or tool that supports the OpenAI chat format.
Request Body
| Parameter | Type | Required | Description |
|---|---|---|---|
| model | string | Required | Model ID to use |
| messages | array | Required | Array of message objects with role and content |
| stream | boolean | Optional | Enable SSE streaming (default: false) |
| max_tokens | integer | Optional | Maximum tokens to generate |
| temperature | number | Optional | Sampling temperature (0-1) |
Example
curl -X POST https://api.unlimitedclaude.com/api/v1/chat/completions \
-H "Content-Type: application/json" \
-H "x-api-key: YOUR_API_KEY" \
-d '{
"model": "claude-sonnet-4.6",
"messages": [
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "What is the capital of France?"}
],
"max_tokens": 256
}'Response
{
"id": "chatcmpl-abc123",
"object": "chat.completion",
"model": "claude-sonnet-4.6",
"choices": [
{
"index": 0,
"message": {
"role": "assistant",
"content": "The capital of France is Paris."
},
"finish_reason": "stop"
}
],
"usage": {
"prompt_tokens": 25,
"completion_tokens": 8,
"total_tokens": 33
}
}Messages API
/api/v1/messages—Anthropic-compatible endpointUse this if your tooling expects the native Anthropic format.
Headers
| Header | Required | Description |
|---|---|---|
| x-api-key | Required | Your API key |
| anthropic-version | Optional | API version (format: YYYY-MM-DD, e.g. 2023-06-01) |
Example
curl -X POST https://api.unlimitedclaude.com/api/v1/messages \
-H "Content-Type: application/json" \
-H "x-api-key: YOUR_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-d '{
"model": "claude-sonnet-4.6",
"max_tokens": 1024,
"messages": [
{"role": "user", "content": "Explain quantum computing in simple terms."}
]
}'Response
{
"id": "msg_abc123",
"type": "message",
"role": "assistant",
"model": "claude-sonnet-4.6",
"content": [
{
"type": "text",
"text": "Quantum computing uses quantum bits (qubits) that can exist in multiple states simultaneously..."
}
],
"stop_reason": "end_turn",
"usage": {
"input_tokens": 15,
"output_tokens": 64
}
}Streaming
Set "stream": true in your request body to receive Server-Sent Events (SSE). The response streams token-by-token instead of waiting for the full completion.
curl -X POST https://api.unlimitedclaude.com/api/v1/chat/completions \
-H "Content-Type: application/json" \
-H "x-api-key: YOUR_API_KEY" \
-d '{
"model": "claude-sonnet-4.6",
"stream": true,
"messages": [{"role": "user", "content": "Write a haiku about coding."}]
}'Content-Type: text/event-stream and follow the standard SSE format. Each chunk is prefixed with data:.Response
data: {"id":"chatcmpl-abc123","object":"chat.completion.chunk","choices":[{"delta":{"content":"Silent"},"index":0}]}
data: {"id":"chatcmpl-abc123","object":"chat.completion.chunk","choices":[{"delta":{"content":" keys"},"index":0}]}
data: {"id":"chatcmpl-abc123","object":"chat.completion.chunk","choices":[{"delta":{},"index":0,"finish_reason":"stop"}]}
data: [DONE]Models
Available models depend on your plan. All models are accessed through the same endpoints.
free Plan4 models
claude-haiku-4.5claude-sonnet-4.6deepseek-3.2minimax-m2.1starter Plan9 models
auto-kiroclaude-3.7-sonnetclaude-haiku-4.5claude-sonnet-4claude-sonnet-4.5claude-sonnet-4.6deepseek-3.2minimax-m2.1qwen3-coder-nextpro Plan11 models
auto-kiroclaude-3.7-sonnetclaude-haiku-4.5claude-opus-4.5claude-opus-4.6claude-sonnet-4claude-sonnet-4.5claude-sonnet-4.6deepseek-3.2minimax-m2.1qwen3-coder-nextRate Limits
Limits are applied per-user based on your plan. Exceeding limits returns a 429 status.
| Plan | Daily Requests | Concurrent Requests |
|---|---|---|
| free | 5,000 | 1 |
| starter | 20,000 | 3 |
| pro | 50,000 | 10 |
X-RateLimit-Remaining and X-RateLimit-Reset.Error Codes
Standard HTTP status codes indicate success or failure.
| Status | Meaning | Resolution |
|---|---|---|
| 200 | Success | Request completed successfully |
| 400 | Bad Request | Check your request body and parameters |
| 401 | Unauthorized | Verify your API key is correct |
| 403 | Forbidden | Model not on your plan, or email not verified |
| 429 | Rate Limited | Wait or upgrade your plan for higher limits |
| 502 | Upstream Error | Model provider issue — retry after a moment |
Error Response Format
{
"error": "Daily request limit reached. Upgrade your plan for more requests."
}Claude Code Setup
Use UnlimitedClaude as the backend for Claude Code across CLI, VS Code, and other editors.
1. Terminal (CLI)
Set these environment variables to route Claude Code CLI requests through UnlimitedClaude.
export ANTHROPIC_BASE_URL=https://api.unlimitedclaude.com/api/v1
export ANTHROPIC_API_KEY=YOUR_API_KEY
# To persist, add to your shell profile:
echo 'export ANTHROPIC_BASE_URL=https://api.unlimitedclaude.com/api/v1' >> ~/.bashrc
echo 'export ANTHROPIC_API_KEY=YOUR_API_KEY' >> ~/.bashrc
source ~/.bashrc2. VS Code Extension
If you use the Claude Code VS Code extension, configure it through VS Code settings.
Open VS Code Settings
Press Ctrl + , (Windows/Linux) or Cmd + , (macOS) to open Settings.
Search for Claude Code
Type claude code in the search bar, then find the Environment Variables setting.
Add environment variables
Click Edit in settings.json and add the configuration below.
// settings.json
{
"claude-code.environmentVariables": {
"ANTHROPIC_BASE_URL": "https://api.unlimitedclaude.com/api/v1",
"ANTHROPIC_API_KEY": "YOUR_API_KEY"
}
}3. Cursor / Other Editors
For Cursor or any editor that supports Claude, set the same environment variables in your system or shell profile. Most editors pick them up automatically.
// Cursor: Settings > Models > Claude
// Set the API Base URL to:
https://api.unlimitedclaude.com/api/v1
// Set the API Key to:
YOUR_API_KEYSDK Integration
Use your preferred SDK — just point it at the UnlimitedClaude base URL.
Python (OpenAI SDK)
from openai import OpenAI
client = OpenAI(
base_url="https://api.unlimitedclaude.com/api/v1",
api_key="YOUR_API_KEY",
default_headers={"x-api-key": "YOUR_API_KEY"},
)
response = client.chat.completions.create(
model="claude-sonnet-4.6",
messages=[{"role": "user", "content": "Hello!"}],
)
print(response.choices[0].message.content)Python (Anthropic SDK)
import anthropic
client = anthropic.Anthropic(
base_url="https://api.unlimitedclaude.com/api/v1",
api_key="YOUR_API_KEY",
)
message = client.messages.create(
model="claude-sonnet-4.6",
max_tokens=1024,
messages=[{"role": "user", "content": "Hello!"}],
)
print(message.content[0].text)JavaScript / TypeScript
const response = await fetch("https://api.unlimitedclaude.com/api/v1/chat/completions", {
method: "POST",
headers: {
"Content-Type": "application/json",
"x-api-key": "YOUR_API_KEY",
},
body: JSON.stringify({
model: "claude-sonnet-4.6",
messages: [{ role: "user", content: "Hello!" }],
}),
});
const data = await response.json();
console.log(data);Ready to get started?
Create a free account and get your API key in seconds. No credit card required.