Claude API 2026-10-21 版本變更及安全升級指南
Claude API Version 2026-10-21: Änderungen und sichere Upgrade-Anleitung
Anthropic 的 Claude API 2026-10-21 版本收緊 Messages API 規則,而新 SDK 主版本會預設切換至該版本。
Claude API Version 2026-10-21 ist der erste neue anthropic-version-Wert seit 2023-06-01. Sie nimmt drei Breaking Changes an der Messages API vor: temperature, top_p und top_k geben jetzt einen 400-Fehler zurück, document-Blöcke in assistant-Nachrichten geben einen 400 zurück, und citations bei text-Blöcken in user-Nachrichten geben einen 400 zurück. Außerdem werden mehrere Felder der Admin API und der Enterprise Analytics API umbenannt. Aktiviert wird die neue Version, indem Sie anthropic-version: 2026-10-21 senden oder auf die neuen SDK-Hauptversionen aktualisieren (Python 2.0.0, TypeScript 1.0.0, Go 2.0.0 und weitere).
Der Haken: Das SDK-Update ist der Weg, auf dem die meisten Teams „versehentlich“ auf die neue Version wechseln. Ein routinemäßiges pip install -U anthropic oder npm update, das eine Hauptversion überschreitet, schaltet jede Anfrage auf einmal auf 2026-10-21 um. Dieser Leitfaden listet jede von Anthropic dokumentierte Änderung auf, zeigt, welche im echten Code wirklich wehtun, und gibt eine sichere Reihenfolge für das Upgrade.
Was ist der anthropic-version-Header?
Der anthropic-version-Header ist ein erforderlicher Request-Header, der festlegt, welche Form der Claude API Sie zurückbekommen. Innerhalb einer Version hält Anthropic bestehende Eingabe- und Ausgabeparameter stabil, kann aber optionale Eingaben, neue Ausgabewerte, neue Enum-Varianten wie Streaming-Event-Typen und neue Fehlerbedingungen hinzufügen. Breaking Changes kommen nur mit einem neuen Versionsdatum.
Laut der Versioning-Seite existieren drei Versionen:
| Version | Was sie eingeführt hat |
|---|---|
2023-01-01 |
Erstveröffentlichung |
2023-06-01 |
Inkrementelle, benannte Server-Sent-Events für Streaming; entfernte das data: [DONE]-Event und die veralteten Werte exception und truncated
|
2026-10-21 |
Sampling-Parameter entfernt, strengere Regeln für Nachrichteninhalte, umbenannte Admin- und Analytics-Felder |
Mit einem offiziellen SDK setzen Sie den Header nie selbst: Jede SDK-Hauptversion sendet die API-Version, die zum Zeitpunkt der Veröffentlichung dieser Hauptversion aktuell war. Deshalb sind SDK-Upgrade und API-Versions-Upgrade für die meisten Codebasen dasselbe Ereignis.
Breaking Changes der Claude API 2026-10-21
Diese Änderungen gelten für POST /v1/messages, für das Token-Counting und für jede Anfrage innerhalb eines Message Batches, der mit 2026-10-21 erstellt wurde.
1. temperature, top_p und top_k wurden entfernt
Das ist die Änderung, auf die die meisten stoßen werden. Jede Anfrage, die temperature, top_p oder top_k sendet, gibt einen 400-Fehler zurück – bei jedem Modell, selbst wenn Sie nur den Standardwert senden. Ein übrig gebliebenes temperature: 1.0 in einer Konfigurationsdatei reicht aus, um den Aufruf zu brechen.
Was mit der Ausgabequalität passiert, hängt vom Modell ab:
- Claude 4.7 und später akzeptieren bereits nur die Standard-Sampling-Werte. Das Entfernen der Parameter ändert an ihrem Sampling-Verhalten nichts.
-
Ältere Modelle, die andere Werte akzeptieren, wie Claude Sonnet 4.6, verlieren jede Wirkung, die Sie über ein niedrigeres
temperatureerzielt haben. Der Migrationsleitfaden sagt es unverblümt: Keine andere Einstellung ersetzt sie.
Wenn eine Anfrage wirklich von einem Nicht-Standardwert abhängt, bleiben zwei Möglichkeiten: den Parameter nicht mehr senden oder genau diese Anfrage auf 2023-06-01 halten.
2. document-Blöcke in assistant-Nachrichten geben einen 400 zurück
Manche Apps spielen den Gesprächsverlauf mit einem document-Block direkt in einem assistant-Turn erneut ab. Unter 2026-10-21 wird das abgelehnt. Verschieben Sie Dokumente in user-Nachrichten. Ein Dokument, das in einen anderen Block eingebettet ist – etwa ein von Claude zurückgegebenes Web-Fetch-Tool-Ergebnis – wird weiterhin akzeptiert.
3. citations in user-Nachrichten geben einen 400 zurück
Ein text-Block mit einem nicht leeren citations-Array in einer user-Nachricht schlägt jetzt fehl; das schließt Text innerhalb von search_result-Blöcken ein. Entfernen Sie citations aus diesen Blöcken. Citations in Claudes eigenen assistant-Antworten, die Sie zurückschicken, sind weiterhin in Ordnung – ebenso wie "citations": {"enabled": true} bei Dokumenten und Suchergebnissen.
4. Umbenennungen von Feldern der Admin API und Enterprise Analytics
Antworten enthalten die alten Feldnamen nicht mehr:
| Endpunkt | Altes Feld | Neues Feld |
|---|---|---|
| RBAC-Gruppen | roles |
role_ids |
| RBAC-Gruppenmitglieder | group_id |
rbac_group_id |
| RBAC-Rollen | name |
display_name |
| Rate Limits für Organisation und Workspace | group_type |
group.type |
| API-Schlüssel | workspace_id |
scope.workspace_id |
| Analytics-Berichte zu Nutzung und Kosten pro Benutzer | actor.email |
actor.email_address |
| Analytics-Aktivitätszusammenfassungen | summaries |
data |
Die Änderung bei den API-Schlüsseln ist die subtilste. Unter 2023-06-01 war workspace_id sowohl für Schlüssel, die an den Default Workspace gebunden sind, als auch für All-Workspaces-Schlüssel null. Unter 2026-10-21 enthält scope.workspace_id die echte ID des Default Workspace; ein All-Workspaces-Schlüssel hat scope: {"type": "organization"} ohne workspace_id. Wenn Ihr Dashboard null als „Default Workspace“ interpretierte, beschriftet es Schlüssel nach dem Upgrade falsch.
SDK-Versionen, die 2026-10-21 senden
Anthropic hat am 21. Oktober 2026 neue SDK-Hauptversionen veröffentlicht. Jede davon sendet standardmäßig 2026-10-21, gemäß den Release Notes:
| SDK | Erste Version auf 2026-10-21 |
|---|---|
Python (anthropic) |
2.0.0 |
TypeScript (@anthropic-ai/sdk) |
1.0.0 |
Go (anthropic-sdk-go/v2) |
2.0.0 |
Java (anthropic-java) |
3.0.0 |
C# (Anthropic) |
13.0.0 |
PHP (anthropic-ai/sdk) |
1.0.0 |
Ruby (anthropic) |
2.0.0 |
ant CLI |
2.0.0 |
Die neuen Hauptversionen bringen außerdem Änderungen mit sich, die gar nicht von der API-Version abhängen:
-
API-Schlüssel gehen als
Authorization: Bearer <key>raus statt alsX-Api-Key. Die Claude API akzeptiert beides – aber ein Proxy, Gateway, Log-Filter oder Test-Stub, derX-Api-Keyliest, sieht den Schlüssel nicht mehr. - Text Completions wurde entfernt aus den TypeScript-, Go-, Java- und Ruby-SDKs und aus der CLI. Verwenden Sie die Messages API.
-
betasist aus den Nicht-Beta-Models-Methoden verschwunden. Rufen Sie stattdessenclient.beta.modelsauf. -
MessageParamist eine Union mit einem Typ pro Rolle in den typisierten SDKs, sodass einige Typannotationen aktualisiert werden müssen. -
Go braucht einen neuen Importpfad, der auf
/v2endet. TypeScript-Nutzer der Bedrock-, Vertex-, Foundry-, AWS- oder Google-Cloud-Pakete müssen diese im selben Upgrade auf v1 umstellen, sonst installiert der Paketmanager eine zweite, ältere Kopie des Core-SDKs. - Die Lizenz hat sich geändert – von MIT zu Apache 2.0.
Pinnen Sie Ihre aktuelle Hauptversion, bevor Sie irgendetwas anderes tun. Das hindert einen Dependency-Bot daran, Sie mitten im Sprint umzustellen.
Die Amazon-Bedrock-Ausnahme
Auf Amazon Bedrock funktioniert 2026-10-21 nur mit Claude 4.7 und späteren Modellen. Wenn Sie dort noch Opus 4.6 oder ein älteres Modell aufrufen, bleiben Sie bei Ihrer aktuellen SDK-Version bzw. senden weiterhin Ihren aktuellen Header – und wechseln zuerst das Modell.
So aktualisieren Sie sicher auf Claude API Version 2026-10-21
Die Reihenfolge des Migrationsleitfadens lautet: Version umschalten, Breaking Changes beheben, vor dem Release testen. So sieht das in der Praxis aus:
-
Pinnen Sie die alte SDK-Hauptversion. Zum Beispiel
anthropic<2in Python oder"@anthropic-ai/sdk": "^0"in npm. -
Durchsuchen Sie Code und Konfigurationen nach
temperature,top_p,top_k,X-Api-Key,completions.createund jedem Admin-API-Feld aus der Tabelle oben. - Entscheiden Sie sich beim Sampling. Bei Claude 4.7 und später löschen Sie die Parameter. Bei älteren Modellen akzeptieren Sie entweder das Standard-Sampling oder behalten diese Aufrufe auf 2023-06-01.
-
Korrigieren Sie die Nachrichtenkonstruktion. Verschieben Sie assistentenseitige Dokumente in User-Turns und entfernen Sie
citationsaus User-Text-Blöcken. - Testen Sie dieselben Payloads unter beiden Versionen und vergleichen Sie Statuscodes und Antwortformen.
- Aktualisieren Sie das SDK und liefern Sie die Code-Fixes gemeinsam aus. Anthropic sagt: Veröffentlichen Sie das Upgrade zusammen mit Ihren Fixes, nicht davor.
Ohne SDK ist der Wechsel ein einziger Header:
curl https://api.anthropic.com/v1/messages \
-H "x-[REDACTED CREDENTIAL] \
-H "anthropic-version: 2026-10-21" \
-H "content-type: application/json" \
-d '{
"model": "claude-opus-5-5",
"max_tokens": 1024,
"messages": [{"role": "user", "content": "Hello, Claude"}]
}'
Fügen Sie "temperature": 0.2 zu diesem Body hinzu, und Sie bekommen einen 400. Senden Sie denselben Body mit anthropic-version: 2023-06-01, gelingt er. Genau dieses Ergebnispaar sollte Schritt 5 für jede Payload abfangen, die Sie in Produktion senden.
Lassen Sie Claude Code beide Versionen mit Apidog CLI testen
Schritt 5 ist von Hand mühsam: Sie haben Dutzende von Payload-Formen, und jede muss zweimal laufen. Übergeben Sie das stattdessen Ihrem Coding-Agenten. Apidog CLI gibt Claude Code (oder Codex, Cursor und OpenCode) Befehle zum Erstellen und Ausführen von Testfällen – der Agent führt den Vergleich durch, Sie lesen die Zusammenfassung.
Richten Sie es einmal ein:
npm install -g apidog-cli@latest
apidog login --with-token <YOUR_TOKEN>
npx -y skills add https://apidog.com # pick Claude Code when prompted
Geben Sie dann Claude Code einen [REDACTED PROMPT]
In Apidog project , create an environment "claude-api" with base URL
https://api.anthropic.com. For each JSON payload in ./fixtures/claude/, add a
POST /v1/messages test case that sends the header anthropic-version: {{anthropic_version}}
and asserts status 200 and a non-empty content array. Run every case twice, once with
anthropic_version=2023-06-01 and once with 2026-10-21, and list each case that passes
on the old version but fails on the new one, with the error message.
Der Agent prüft jedes Payload-Schema, bevor er etwas schreibt, und führt dann die Fälle aus:
bash
apidog environment create claude-api --project --base-url https://api.anthropic.com
apidog cli-schema get test-case-create
apidog cli-schema validate test-case-create --file case.json
apidog test-case create --project --file case.json
apidog run --test-case --project -e --env-var "anthropic_version=2023-06-01" -r cli,json
apidog run --test-case --project -e --env-var "anthropic_version=2026-10-21" -r cli,json
Das `--env-var`-Flag tauscht den Header-Wert aus, ohne den Testfall anzufassen – der Diff besteht aus einer einzigen Variable. Fügen Sie `--upload-report` hinzu, um beide Läufe in der Apidog-App anzuzeigen, oder betten Sie den 2026-10-21-Lauf mit `-r junit` in CI ein, damit ein Dependency-Bump kein `temperature`-Feld in die Produktion ausliefern kann. Der [Leitfaden zu Apidog CLI in Claude Code](https://apidog.com/de/blog/apidog-cli-in-claude-code?utm_source=dev.to&utm_medium=wanda&utm_content=n8n-post-automation) behandelt die Einrichtung ausführlicher, und die [`apidog run`-Referenz](https://apidog.com/de/blog/apidog-run-command-reference?utm_source=dev.to&utm_medium=wanda&utm_content=n8n-post-automation) listet jedes Flag auf. Der Free-Plan von Apidog deckt bis zu 4 Benutzer ab.

## Ist 2023-06-01 veraltet?
Es wurde kein Abschaltdatum veröffentlicht. Die Versioning-Seite listet 2023-06-01 ohne Deprecation-Hinweis auf, und der Migrationsleitfaden selbst rät, Anfragen, die ein Nicht-Standard-`temperature` benötigen, auf 2023-06-01 zu belassen. Anthropic empfiehlt weiterhin die neueste Version „wann immer möglich“.
Das ist wichtig für die Planung. Das heutige Upgrade ist optional, aber 2026-10-21 ist die erste neue Version seit mehr als drei Jahren, und zukünftige Breaking Changes werden auf dieselbe Weise kommen. Versionstests schon jetzt als routinemäßigen CI-Job zu behandeln, ist also günstiger als eine überstürzte Migration später. Wenn Sie bereits rund um [Claude API Rate Limits](https://apidog.com/de/blog/claude-api-rate-limits?utm_source=dev.to&utm_medium=wanda&utm_content=n8n-post-automation) oder [Claude API Kosten](https://apidog.com/de/blog/claude-api-cost?utm_source=dev.to&utm_medium=wanda&utm_content=n8n-post-automation) optimieren, fügen Sie die Versionsprüfung derselben Pipeline hinzu. Unser Leitfaden zu [Best Practices für API-Versionierung](https://apidog.com/de/blog/api-versioning-best-practices?utm_source=dev.to&utm_medium=wanda&utm_content=n8n-post-automation) erklärt, warum datumsbasierte Versionen wie diese es einfacher machen.
## FAQ
### Muss ich jetzt auf Claude API Version 2026-10-21 aktualisieren?
Nein. 2023-06-01 funktioniert weiterhin und hat kein veröffentlichtes Abschaltdatum. Sie wechseln erst, wenn Sie den neuen Header senden oder eine SDK-Hauptversion installieren, die ihn standardmäßig verwendet.
### Warum gibt meine Anfrage nach einem SDK-Upgrade einen 400 zurück?
Die neuen SDK-Hauptversionen senden 2026-10-21 – und die lehnt `temperature`, `top_p` und `top_k`, assistentenseitige `document`-Blöcke und `citations` bei User-Text-Blöcken ab. Prüfen Sie zuerst Ihre Payload auf diese Punkte.
### Kann ich temperature bei einigen Anfragen behalten?
Ja, indem Sie genau diese Anfragen auf 2023-06-01 belassen. Unter 2026-10-21 gibt es keine Ersatzeinstellung, und Claude 4.7 und spätere Modelle samplen ohnehin nur mit den Standardwerten.
### Funktioniert 2026-10-21 auf Amazon Bedrock?
Nur für Claude 4.7 und spätere Modelle. Ältere Bedrock-Modelle benötigen Ihre aktuelle SDK-Version oder Ihren aktuellen Header, bis Sie das Modell wechseln.
### Wird mein Proxy meinen API-Schlüssel noch sehen?
Nicht, wenn er `X-Api-Key` liest. Die neuen SDKs senden den Schlüssel als `[REDACTED CREDENTIAL] Aktualisieren Sie den Proxy so, dass er `Authorization` liest, oder konfigurieren Sie das SDK so, dass es selbst `X-Api-Key` sendet.
### Ändert die neue Version die Streaming-Events?
Anthropic listet keine Änderung des Streaming-Formats für 2026-10-21 auf. Das Streaming-Format, das Sie heute verwenden, kam mit 2023-06-01.
來源:DEV Community · dev.to
