Follow Discord
Sweep 22 Oct 2026 · 21:04Z Build v2.1.309 528 read Stable v2.1.308 Latest v2.1.309 Next v2.1.309 Feeds RSS JSON llms.txt llms-full.txt Unofficial
One change · api

migration-guide changedmodels/sonnet-5-5/migration-guide

Nearest release: v2.1.309, published 3 hours before this site recorded the change. Shown because the two are within 24 hours of each other. Nothing here says the release caused the edit.

Recorded here
Lines+8added
Lines−5removed
From line 26 where the diff opens
First seen 29 Sep 2026 this site's first read of the page
Recorded edits16to this page, all time

The whole hunk

from line 26, old and new numbered
/
lines
from line 26
2626 
2727## Send a request to Claude Sonnet 5.5
2828 
29This request works on Claude Sonnet 5.5 as written. The example sets an effort level and, in the SDK, reads the reply by block type. It leaves out five settings that return a 400 error: [thinking budgets](https://platform.claude.com/docs/en/models/sonnet-5-5/migration-guide#sonnet-46-breaking-changes), [sampling parameters](https://platform.claude.com/docs/en/models/sonnet-5-5/migration-guide#sonnet-46-breaking-changes), [assistant prefill](https://platform.claude.com/docs/en/models/sonnet-5-5/migration-guide#migrating-from-sonnet-45), [forced tool choice](https://platform.claude.com/docs/en/models/sonnet-5-5/migration-guide#forced-tool-use), and [`thinking: {"type": "disabled"}`](https://platform.claude.com/docs/en/models/sonnet-5-5/migration-guide#turn-off-up-front-thinking).
29This request works on Claude Sonnet 5.5 as written. It sets an effort level, and the SDK example reads the reply by block type. It leaves out five settings that return a 400 error: [thinking budgets](https://platform.claude.com/docs/en/models/sonnet-5-5/migration-guide#sonnet-46-breaking-changes), [sampling parameters](https://platform.claude.com/docs/en/models/sonnet-5-5/migration-guide#sonnet-46-breaking-changes), [assistant prefill](https://platform.claude.com/docs/en/models/sonnet-5-5/migration-guide#migrating-from-sonnet-45), [forced tool choice](https://platform.claude.com/docs/en/models/sonnet-5-5/migration-guide#forced-tool-use), and [`thinking: {"type": "disabled"}`](https://platform.claude.com/docs/en/models/sonnet-5-5/migration-guide#turn-off-up-front-thinking).
3030 
3131<CodeGroup>
3232 ```bash cURL
from line 106
106106 Model = Model.ClaudeSonnet5_5,
107107 MaxTokens = 4096,
108108 Messages = [
109 new UserMessageParam {
109 new UserMessageParam
110 {
110111 Content = "Analyze the trade-offs between microservices and monolithic architectures"
111112 }
112113 ],
from line 477
476477* Replace [forced tool use](https://platform.claude.com/docs/en/models/sonnet-5-5/migration-guide#forced-tool-use) with `auto` and strict tools.
477478* Keep conversations [append-only](https://platform.claude.com/docs/en/models/sonnet-5-5/migration-guide#thinking-blocks).
478479* On the Claude API and Claude Models on Google Cloud (Google managed), move computer use to the [toolset](https://platform.claude.com/docs/en/models/sonnet-5-5/migration-guide#computer-use-toolset), without the `fine-grained-tool-streaming-2025-05-14` beta header.
479* Pair the [advisor tool](https://platform.claude.com/docs/en/models/sonnet-5-5/migration-guide#advisor-tool) with a supported advisor, and expect encrypted advice.
480* [Pair the advisor tool](https://platform.claude.com/docs/en/models/sonnet-5-5/migration-guide#advisor-tool) with a supported advisor, and expect encrypted advice.
480481* Read [text between tool calls](https://platform.claude.com/docs/en/models/sonnet-5-5/migration-guide#text-between-tool-calls) from `thinking` blocks.
481482* [Handle refusals](https://platform.claude.com/docs/en/models/sonnet-5-5/migration-guide#safety-classifiers-and-fallback), and configure fallback.
482483* [Re-run your effort sweep](https://platform.claude.com/docs/en/models/sonnet-5-5/migration-guide#recommended-changes), and re-baseline cost.
from line 798
797798 // strict tool use: every call matches the tool's input_schema
798799 .tools(tools.stream()
799800 .map(tool -> tool.tool()
800 .map(customTool -> customTool.toBuilder().strict(true).build())
801 .map(customTool -> customTool.toBuilder()
802 .strict(true)
803 .build())
801804 .map(ToolUnion::ofTool)
802805 .orElse(tool))
803806 .toList())
from line 1167
11641167 $message = $client->messages->create(
11651168 maxTokens: 16000,
11661169 messages: [['role' => 'user', 'content' => '...']],
1167 model: 'claude-sonnet-5-5',
1170 model: Model::CLAUDE_SONNET_5_5,
11681171 thinking: ['type' => 'adaptive'],
11691172 outputConfig: ['effort' => 'high'], // or 'max', 'xhigh', 'medium', 'low'
11701173 );
Feedback