Claude Sonnet 5.5 is Anthropic's successor to Claude Sonnet 5 in the Sonnet line. On Jantaris it has a 1,000,000-token context window and up to 128K output tokens, like its predecessor, and the per-token rate here is lower than for Sonnet 5. It is the model for everyday coding, tool-using agents and business tasks where Opus would be overkill. Adaptive thinking is on by default, and you set reasoning depth with reasoning_effort (default high).
Best for
- The default model in Claude Code, Cursor or Cline
- Agents that call tools and APIs over many steps
- Code review, tests and fixes in large repositories
- Long documents in a single request thanks to the 1M window
How to call it
Swap the base URL in the OpenAI SDK and use the id claude-sonnet-5.5:
from openai import OpenAI
client = OpenAI(base_url="https://jantaris.com/v1", api_key="sk-jt-...")
resp = client.chat.completions.create(
model="claude-sonnet-5.5",
reasoning_effort="medium",
messages=[{"role": "user", "content": "Find the root cause in this log and propose a fix."}],
)
print(resp.choices[0].message.content)It also works with the Anthropic SDK and Claude Code through /v1/messages, see the Claude Code guide.
FAQ
How much does Claude Sonnet 5.5 cost per 1M tokens?
On Jantaris: $1.89 / $9.45 per 1M tokens. Thinking is billed as output tokens, so for simple tasks lower reasoning_effort to low or medium.
Can I turn thinking off on Sonnet 5.5?
Not with thinking: {"type": "disabled"} - Sonnet 5.5 returns a 400 error for it. Anthropic recommends a lower effort instead. Through /v1/messages you can also send thinking: {"type": "between_tools"} at high effort or below.
What changes when moving from Sonnet 5?
Forced tool choice (tool_choice of type any or a named tool) returns a 400 error - use auto and name the tool in the instruction. Non-default temperature, top_p and top_k are rejected, as on Sonnet 5. Anthropic also recalibrated the effort levels, so re-check which one is enough. Both versions side by side: Sonnet 5.5 vs Sonnet 5.
How to call Claude Sonnet 5.5 via API
from openai import OpenAI
client = OpenAI(base_url="https://jantaris.com/v1", api_key="sk-jt-...")
resp = client.chat.completions.create(
model="claude-sonnet-5.5",
messages=[{"role": "user", "content": "Write a haiku about Baltic amber."}],
)
print(resp.choices[0].message.content)curl https://jantaris.com/v1/chat/completions \
-H "Authorization: Bearer $JANTARIS_API_KEY" \
-H "Content-Type: application/json" \
-d '{"model": "claude-sonnet-5.5", "messages": [{"role": "user", "content": "Write a haiku about Baltic amber."}]}'import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://jantaris.com/v1", apiKey: process.env.JANTARIS_API_KEY });
const resp = await client.chat.completions.create({
model: "claude-sonnet-5.5",
messages: [{ role: "user", content: "Write a haiku about Baltic amber." }],
});
console.log(resp.choices[0].message.content);export ANTHROPIC_BASE_URL=https://jantaris.com
export ANTHROPIC_AUTH_TOKEN=sk-jt-...
export ANTHROPIC_MODEL=claude-sonnet-5.5
claude









