Claude Sonnet 5.5 thinks by default when thinking is omitted
Behavior change
Applies to claude-sonnet-5-5 on the Anthropic Messages API.
Anthropic's docs describe this behavior change but don't quote the exact message, so we don't either.
How to fix it
Read content blocks by type (not content[0].text), pass thinking blocks back unchanged in tool loops, and revisit max_tokens, which covers thinking plus text. To keep running without up-front thinking, send thinking: {"type": "between_tools"}.
{
"max_tokens": 1024,
"messages": [
{
"content": "Summarize this ticket.",
"role": "user"
}
],
"model": "claude-sonnet-4-5-20250929"
}{
"max_tokens": 1024,
"messages": [
{
"content": "Summarize this ticket.",
"role": "user"
}
],
"model": "claude-sonnet-5-5",
"thinking": {
"type": "adaptive"
}
}Official source
On Claude Sonnet 5.5, a request with no thinking field runs with adaptive thinkinghttps://platform.claude.com/docs/en/models/sonnet-5-5/migration-guide#thinking-on-by-default (last checked 2026-11-02)
Other changes for the same models
- temperature, top_p and top_k return an error on Claude Sonnet 5.5
- Assistant message prefill returns a 400 on Claude Sonnet 5.5
- tool_choice any or tool returns a 400 on Claude Sonnet 5.5
- thinking type enabled with budget_tokens returns a 400 on Claude Sonnet 5.5
- thinking type disabled returns a 400 on Claude Sonnet 5.5
- Top-level output_format returns a 400 on Claude Sonnet 5.5
- computer_20250124 isn’t accepted by Claude Sonnet 5.5 or Haiku 5.5
- fine-grained-tool-streaming-2025-05-14 with a toolset returns a 400
- Beta headers to remove when moving to Claude Sonnet 5.5
FAQ
How do I fix this when moving to claude-sonnet-5-5?
Read content blocks by type (not content[0].text), pass thinking blocks back unchanged in tool loops, and revisit max_tokens, which covers thinking plus text. To keep running without up-front thinking, send thinking: {"type": "between_tools"}.
Where is this documented?
In Anthropic’s official docs: https://platform.claude.com/docs/en/models/sonnet-5-5/migration-guide#thinking-on-by-default, last checked 2026-11-02.