Developers
Documentation
A technical guide to integrating leading AI models through Oblion's unified API.
On this page
Using Claude Models
Claude models (claude-opus-4-8, claude-sonnet-4-6, claude-haiku-4-5-20251001, and other 4.x variants — see Supported Models) work through the same /v1/chat/completions endpoint as every other model. Just set model to a Claude model id — no separate SDK or endpoint needed.
Basic request
curl https://api.oblion.io/v1/chat/completions \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer YOUR_API_KEY' \
-d '{
"model": "claude-sonnet-4-6",
"messages": [{"role": "user", "content": "Explain quantum entanglement in one sentence."}]
}'
from openai import OpenAI
client = OpenAI(base_url="https://api.oblion.io/v1", api_key="YOUR_API_KEY")
response = client.chat.completions.create(
model="claude-sonnet-4-6",
messages=[{"role": "user", "content": "Explain quantum entanglement in one sentence."}],
)
print(response.choices[0].message.content)
System prompts
Claude follows the standard OpenAI system role message:
response = client.chat.completions.create(
model="claude-sonnet-4-6",
messages=[
{"role": "system", "content": "You are a terse assistant. Reply in one short sentence."},
{"role": "user", "content": "What causes rain?"},
],
)
Choosing a Claude model
| Model | Best for |
|---|---|
claude-haiku-4-5-20251001 | Fastest, cheapest — simple tasks, high-volume requests |
claude-sonnet-4-6 | Balanced speed/quality — the default choice for most apps |
claude-opus-4-8 | Highest quality — complex reasoning, long-form writing, coding |
See the full list of available Claude ids under Anthropic Claude in Supported Models.
Streaming
Set stream: true to receive the response as Server-Sent Events, exactly like OpenAI streaming:
stream = client.chat.completions.create(
model="claude-sonnet-4-6",
messages=[{"role": "user", "content": "Count from 1 to 5."}],
stream=True,
)
for chunk in stream:
delta = chunk.choices[0].delta.content
if delta:
print(delta, end="", flush=True)
Multi-turn conversations
Include prior assistant replies in messages to keep context, the same as any other model:
messages = [
{"role": "user", "content": "My favorite color is teal."},
{"role": "assistant", "content": "Got it — teal it is."},
{"role": "user", "content": "What's my favorite color?"},
]
response = client.chat.completions.create(model="claude-sonnet-4-6", messages=messages)
Notes
- Claude models here are 100% OpenAI-request-compatible — Anthropic-specific fields (e.g.
max_tokens_to_samplefrom the native Anthropic SDK) are not required; use standard OpenAI parameters likemax_tokens,temperature, andmessages. - Some Claude ids require specific groups (e.g. Official-Relay Claude, Direct Claude) for higher throughput — if a request fails with a "no available channel" error, check which group your token is on.