Skip to main content

API Overview

Korad.AI provides a fully Anthropic-compatible API — if your code works with Anthropic's API, it works with Korad.AI.

Base URL

https://api.korad.ai/v1

Authentication

Include your API key in the x-api-key header:

curl https://api.korad.ai/v1/messages \
-H "x-api-key: sk-korad-YOUR-KEY" \
-H "anthropic-version: 2023-06-01" \
-H "content-type: application/json" \
-d '{"model": "claude-sonnet-4-20250514", "max_tokens": 1024, "messages": [{"role": "user", "content": "Hello!"}]}'

Or use the Authorization: Bearer header:

curl https://api.korad.ai/v1/messages \
-H "Authorization: Bearer sk-korad-YOUR-KEY" \
...

Available Endpoints

EndpointDescription
POST /v1/messagesCreate a message (chat completions)
POST /v1/messages/batchesCreate batched message requests
GET /v1/modelsList available models
POST /v1/messages/{message_id}/streamsStream responses

Supported Models

Korad.AI supports all Anthropic models plus cost-optimized alternatives:

ModelContextBest For
claude-sonnet-4-20250514200KGeneral tasks, coding
claude-sonnet-4-20250514-optim128KCost-optimized general tasks
claude-haiku-4-20250514128KFast responses, simple tasks
claude-opus-4-20250514200KComplex reasoning

Request Format

All requests follow Anthropic's format:

{
"model": "claude-sonnet-4-20250514",
"max_tokens": 1024,
"messages": [
{
"role": "user",
"content": "What is quantum computing?"
}
],
"temperature": 0.7,
"top_p": 0.9,
"stream": false
}

Response Format

{
"id": "msg_xxxxxxxxx",
"type": "message",
"role": "assistant",
"content": [
{
"type": "text",
"text": "Quantum computing is..."
}
],
"model": "claude-sonnet-4-20250514",
"stop_reason": "end_turn",
"usage": {
"input_tokens": 15,
"output_tokens": 150,
"total_tokens": 165
},
"korad_metrics": {
"savings_percent": 45,
"original_cost": 0.004,
"your_cost": 0.002
}
}

Korad.AI Extensions

We include additional metrics in every response:

FieldDescription
korad_metrics.savings_percentPercentage saved vs Anthropic direct
korad_metrics.original_costWhat this would cost via Anthropic
korad_metrics.your_costActual cost via Korad.AI

Rate Limits

TierRequests/MinuteTokens/Minute
Free6040,000
Basic ($50)300200,000
Pro ($100)10001,000,000
EnterpriseCustomCustom

Error Codes

CodeDescription
401Invalid API key
429Rate limit exceeded
500Internal server error
502Upstream API error

View all error codes →

Streaming

Enable streaming with "stream": true:

with client.messages.stream(
model="claude-sonnet-4-20250514",
max_tokens=1024,
messages=[{"role": "user", "content": "Tell me a story"}]
) as stream:
for text in stream.text_stream:
print(text, end="", flush=True)

Next Steps