Anthropic shipped API version 2026-10-21 on October 21, together with new major releases of every client SDK and the ant CLI that send it by default: Python 2.0.0, TypeScript 1.0.0, C# 13.0.0, Go 2.0.0, Java 3.0.0, PHP 1.0.0, Ruby 2.0.0 and ant CLI 2.0.0.
The sampling parameters are removed outright
This is the change that touches the most code. Under 2026-10-21, a request carrying temperature, top_p or top_k gets a 400 — even when you send the default value. The three parameters don’t exist at all in the new SDK and CLI majors.
Without them a request samples at the defaults, temperature 1.0, exactly like a 2023-06-01 request that omits them. Models that only ever accepted the defaults, meaning Claude 4.7 and later, behave as before.
The other case is the one to watch. If you lowered temperature on a model like Claude Sonnet 4.6 to get more consistent output, that effect is gone and nothing replaces it. Anthropic offers two options: drop the parameters and live with the default, or keep that particular request on 2023-06-01.
Two more things that used to pass
A document block placed directly in an assistant message now returns 400. Documents belong in user messages. A document nested inside another block, such as a web fetch result Claude itself returned, is still fine.
Citations work the same way: a text block with a non-empty citations array in a user message returns 400, including inside search_result blocks. Citations on text blocks in assistant messages stay valid, and so does "citations": {"enabled": true} on documents and search results.
Renamed fields, now without the old names
The Admin API and the Claude Enterprise Analytics API no longer return the old names of renamed fields. Among them: roles becomes role_ids, group_id becomes rbac_group_id, RBAC roles’ name becomes display_name, group_type becomes group.type, and workspace_id on API keys becomes scope — with different values, not just a different name. In the Analytics API, actor.email becomes actor.email_address and summaries becomes data.
The group_type query parameter and the workspace_id filter are unchanged. Only the response fields moved.
Licence change and one Bedrock caveat
The new SDK and CLI versions also carry breaking changes that don’t depend on the API version, and they ship under Apache 2.0 instead of MIT.
On Amazon Bedrock, 2026-10-21 is available only for Claude 4.7 and later. For older models there you stay on the SDK version you run today, or keep sending the API version you send today.
Removing a knob is a decision about models, not about the API
A parameter disappearing with no replacement is rare in an API version. Anthropic’s reasoning is implicit: on current models temperature does nothing, so the parameter is a promise the models don’t keep. Consistent enough, but anyone still running Sonnet 4.6 with a lowered temperature isn’t offered a migration path, just a choice between default behaviour and an old API version. Together with user profiles the day before, that’s two weeks running where the platform tidies up more than it adds.