Last verified: 2026-09-19

Setting thinking on Opus 5 or Opus 5.5 returns HTTP 400

A Claude Cowork error and how to fix it. The exact message, why it happens, and the steps that resolve it.

Claude Cowork
POST /v1/messages
{ "model": "claude-opus-5-5", "thinking": { "type": "disabled" } }

→ HTTP 400 (invalid_request_error)
Fix:

Opus 5.5 (claude-opus-5-5): thinking is always on. thinking: {"type": "disabled"} and thinking: {"type": "enabled", ...} both return 400 — remove the thinking field entirely and set depth with effort. Two more 400s on the same model: tool_choice types any and tool (use auto with strict tool use), and on the Claude API and Google Cloud the older computer_20251124 tool (use computer_toolset_20260801; Bedrock still accepts the old one).

Opus 5 (claude-opus-5): disabling thinking is only accepted at effort high or below. Drop to high/medium/low, or keep xhigh/max and remove the thinking block (Opus 5 thinks by default).

Both changed from earlier Opus models, where these requests were legal — swapping the model string alone can break a working request · Opus 5.5 changelog · Opus 5 changelog

Still stuck?

See the full cross-platform troubleshooting index, the Claude Cowork hub, or the command reference. Paste your error into the search box on the index to find related fixes.