Claude APIのバージョン「2026-10-21」は、Anthropicが2026年10月21日に公開したAPIバージョンで、2023年の初版以来となる初の正式バージョンリリースです。リクエストヘッダーのanthropic-versionで指定する仕様の区切りで、SDK利用時は自動送信されます。
室谷代表取締役Claude APIの「2026-10-21」なんですけど、これ地味に見えてかなり大きいリリースなんですよね。2023年以来、初の正式バージョンリリースなんですよ。
テキトー教師DotAI 認定講師そこが一番大事なポイントですよね。これまで実質的に2023-06-01が唯一の基準で、SDKのメジャーバージョンもそこに固定されていた。
単に数字が変わったという話じゃないんですよ。
単に数字が変わったという話じゃないんですよ。
室谷代表取締役そうですよね。Anthropicは今後、バージョン更新を高頻度化する方針を示していて、新しいモデルが破壊的変更を要求する前に、利用者側が処理できるようにする狙いだと。
テキトー教師DotAI 認定講師発表内容を整理すると、2026-10-21ではtemperature・top_p・top_kがMessages APIから削除され、assistantターン内のdocumentブロックとuserターン内のcitationsが400エラーになり、Admin APIとEnterprise Analytics APIの一部フィールドが置き換わる、という3点が主な変更です。
室谷代表取締役しかも同日にAnthropic SDKの新メジャーバージョンとant CLIも出ていて、そちらはデフォルトで2026-10-21を送るようになっているんですよね。
テキトー教師DotAI 認定講師はい。Python SDK 2.0.0、TypeScript SDK 1.0.0、C# SDK 13.0.0、Go SDK 2.0.0、Java SDK 3.0.0、PHP SDK 1.0.0、Ruby SDK 2.0.0、ant CLI 2.0.0です。
ここまで一気に来ると、影響範囲を先に把握したいところです。
ここまで一気に来ると、影響範囲を先に把握したいところです。
Claude API「2026-10-21」とは? 初の正式バージョンリリースの位置づけ
APIバージョン 2026-10-21 と 2023-06-01 の位置づけ
2026-10-21
- 2023-06-01以来の初の正式バージョン
- Anthropicは「APIは大きく進化したが、2023年以来の初の公式バージョンリリース」と説明
- 今後はもっと頻繁にバージョンを出す方針
2023-06-01
- 旧バージョン
- 非推奨化されていない
- 新バージョンと併存するため、すぐに全部移行しなくてもよい設計
室谷代表取締役まず前提を揃えておくと、APIバージョンってリクエストヘッダーの
anthropic-versionで指定する仕様の区切りなんですよね。SDKを使っていれば自動で送られるので、普段は意識しない人も多いと思います。
テキトー教師DotAI 認定講師そうなんですよ。で、今回が2023-06-01以来の初の正式バージョン。
Anthropicは「APIは大きく進化したが、2023年以来の初の公式バージョンリリースだ」と説明していて、今後はもっと頻繁にバージョンを出す方針を示しています。
Anthropicは「APIは大きく進化したが、2023年以来の初の公式バージョンリリースだ」と説明していて、今後はもっと頻繁にバージョンを出す方針を示しています。
室谷代表取締役なるほど、新モデルが出るたびにパラメータが非対応になっていく、みたいな状況があったわけじゃないですか。バージョンという区切りを作ることで、破壊的変更を事前に把握して移行できる枠組みを用意した、と。
テキトー教師DotAI 認定講師まさにそこです。あと見逃せないのが、旧バージョンの2023-06-01は非推奨化されていないという点。
併存するので、すぐに全部移行しなくてもいい設計になっています。
併存するので、すぐに全部移行しなくてもいい設計になっています。
室谷代表取締役これはありがたいですよね。うちみたいに複数のプロダクトでClaude APIを叩いていると、一斉移行は現実的じゃないので。
テキトー教師DotAI 認定講師ちなみにバージョニングの考え方として、Anthropicは特定のAPIバージョンについて既存の入力パラメータと出力パラメータを保持すると明記しています。一方で、任意の入力の追加や出力値の追加、特定エラータイプの条件変更、enum的な出力値への新バリアント追加はあり得ると。
室谷代表取締役つまり、ドキュメント通りに使っていれば基本壊れない、というスタンスなんですね。そこは安心材料です。
2026-10-21で何が壊れる? 破壊的変更の全一覧
破壊的変更の性質比較
Messages API
- assistantメッセージ内のdocumentブロックが400エラー
- userメッセージ内の非空citations配列(search_resultブロック内を含む)が400エラー
- temperature・top_p・top_kの削除。送ると全モデルで400エラー
- リクエストの組み立て方そのものが変わる
Admin API
- RBAC groupsのroles→role_ids
- RBAC group membersのgroup_id→rbac_group_id
- RBAC rolesのname→display_name
- rate-limitエントリのgroup_type→group.type
- APIキーのworkspace_id→scope.workspace_id
- レスポンスを読むコードのフィールド名を変える
テキトー教師DotAI 認定講師ここからが本題です。破壊的変更を整理しておきますね。
室谷代表取締役お願いします。まずは全体像を見たいです。
テキトー教師DotAI 認定講師公式の移行ガイドに沿って並べるとこうです。
- Messages API: assistantメッセージ内のdocumentブロックが400エラー
- Messages API: userメッセージ内の非空citations配列(search_resultブロック内を含む)が400エラー
- Messages API: temperature・top_p・top_kの削除。送ると全モデルで400エラー
- Admin API: RBAC groupsの
rolesが廃止されrole_idsに - Admin API: RBAC group membersの
group_idが廃止されrbac_group_idに - Admin API: RBAC rolesの
nameが廃止されdisplay_nameに - Admin API: rate-limitエントリの
group_typeが廃止されgroup.typeに - Admin API: APIキーの
workspace_idが廃止されscope.workspace_idに - Enterprise Analytics API:
actor.emailが廃止されactor.email_addressに - Enterprise Analytics API: activity summariesの
summariesが廃止されdataに
室谷代表取締役こうして並べると、Messages APIの変更とAdmin系のフィールド名変更で性質が全然違いますね。
テキトー教師DotAI 認定講師そうなんですよ。Messages API側はリクエストの組み立て方そのものが変わる。
Admin系はレスポンスを読むコードのフィールド名を変える。講座でも「まず自分のコードがどっちを触っているかで読み方が変わる」と伝えています。
Admin系はレスポンスを読むコードのフィールド名を変える。講座でも「まず自分のコードがどっちを触っているかで読み方が変わる」と伝えています。
室谷代表取締役documentブロックの制限も地味に効いてきそうですね。assistantメッセージに直接documentを入れているケースって、RAG的な組み方をしているところで出てきそうで。
テキトー教師DotAI 認定講師そこは公式に補足があって、別のブロックに入れ子になっているdocument、たとえばClaudeが返したweb fetchツールの結果の中にあるものは引き続き受け付けられるんですよ。あくまでassistantメッセージ直下に置いた場合がエラーになります。
室谷代表取締役じゃあ、documentはuserメッセージ側で送るように寄せればいい、と。citationsも同じで、userメッセージのtextブロックに非空のcitationsを付けている場合が対象で、assistantメッセージ側のcitations、たとえばClaudeの過去の返答を送り返すときのものは引き続き受け付けられるんですよね。
テキトー教師DotAI 認定講師はい。あと
ここを混同すると不要な改修をしてしまうので注意ですね。
"citations": {"enabled": true}という設定もdocumentやsearch resultでは引き続き有効です。ここを混同すると不要な改修をしてしまうので注意ですね。
temperature・top_p・top_kが削除——影響を受けるのはどんな使い方か
temperature等の削除による影響の分岐
リクエストでtemperature・top_p・top_kを送っているか?
YES / 送っている
- デフォルト値でも400エラー
- パラメータ自体が受け付けられない
- コードベース検索で洗い出す
- 送るのをやめる or そのリクエストだけ2023-06-01に留める
NO / 送っていない
- デフォルトでサンプリング(temperature 1.0)
- 2023-06-01で省略した場合と同じ挙動
- 実質影響なし
室谷代表取締役ここが一番インパクトあるところですよね。temperature、top_p、top_kがMessages APIから消えると。
テキトー教師DotAI 認定講師しかも重要なのが、デフォルト値であっても送れば400エラーになるという点です。パラメータ自体を受け付けなくなるので、値がどうこうではなく、送ること自体がダメなんですよ。
室谷代表取締役これはコードベースの検索で一気に洗い出したいやつですね。うちでもテンプレート的にtemperatureを渡している箇所がありそうで怖いです。
テキトー教師DotAI 認定講師影響の出方には差があります。パラメータを送らなければ、リクエストはデフォルトでサンプリングされる。
temperature 1.0を含むデフォルトで、これは2023-06-01でパラメータを省略したリクエストと同じ挙動です。
temperature 1.0を含むデフォルトで、これは2023-06-01でパラメータを省略したリクエストと同じ挙動です。
室谷代表取締役つまり、もともとデフォルト任せだった人は実質影響なし、と。
テキトー教師DotAI 認定講師そうですね。Claude 4.7以降のモデルのように、すでにデフォルト値しか受け付けないモデルは従来通りサンプリングされます。
一方で、Claude Sonnet 4.6のように他の値を受け付けるモデルで、出力を安定させるためにtemperatureを下げていた場合は、その効果を失います。
一方で、Claude Sonnet 4.6のように他の値を受け付けるモデルで、出力を安定させるためにtemperatureを下げていた場合は、その効果を失います。
室谷代表取締役代替の設定はあるんですか。
テキトー教師DotAI 認定講師公式には「No other setting replaces it」、つまり他の設定で置き換えるものはないと明記されています。だから、非デフォルト値に依存しているリクエストは、パラメータを送るのをやめるか、そのリクエストだけ2023-06-01に留めるかの二択になります。
室谷代表取締役なるほど。ここは「とりあえず消せばいい」で済ませずに、そのリクエストが温度調整に何を期待していたかを一度見直す必要がありますね。
テキトー教師DotAI 認定講師そうなんですよ。講座でも受講生さんに「temperatureを下げていた理由を説明できますか」と聞くようにしています。
再現性のためなのか、フォーマットの安定のためなのかで、代替の設計が変わってきますから。
再現性のためなのか、フォーマットの安定のためなのかで、代替の設計が変わってきますから。
室谷代表取締役あと、SDKとCLIの最新メジャーバージョンでは、この3つのパラメータ自体がなくなっているんですよね。型として存在しないので、TypeScriptなんかだとコンパイル時点で気づける。
テキトー教師DotAI 認定講師そこは助かりますよね。逆に言うと、SDKを上げた瞬間に型エラーがどっと出る可能性があるので、まとめて対応する覚悟が要ります。
SDK新メジャーとant CLIのアップグレード方法
室谷代表取締役SDKの新メジャー、バージョン番号を整理するとこうですよね。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、ant CLI 2.0.0。
テキトー教師DotAI 認定講師はい。これらはデフォルトで2026-10-21を送ります。
Amazon BedrockやGoogle Cloudのクライアントも含めてです。
Amazon BedrockやGoogle Cloudのクライアントも含めてです。
室谷代表取締役で、ここが要注意なんですけど、APIバージョンに依存しない破壊的変更も同時に入っているんですよね。
テキトー教師DotAI 認定講師そうなんですよ。まずライセンスがMITからApache 2.0に変わっています。
あと認証ヘッダーが
あと認証ヘッダーが
X-Api-KeyからAuthorization: Bearerに変わる。プロキシやゲートウェイでX-Api-Keyを読んだり設定したりしている場合は影響が出ます。
室谷代表取締役Claude API自体はどちらのヘッダーでもキーを受け付けるから、APIに直接話すプログラムは変更不要なんですよね。間に何かを挟んでいる場合がポイントだと。
テキトー教師DotAI 認定講師そこです。あと型の変更も見逃せません。
Pythonでは
Pythonでは
MessageParamが単一のTypedDictから、UserMessageParam・AssistantMessageParam・SystemMessageParamのユニオンになりました。MessageParam(role="user", content="Hello")のように呼び出すとTypeErrorになります。
室谷代表取締役辞書リテラルで書いていれば変更不要、と。
{"role": "user", "content": "Hello"}みたいに書いている分には影響なしなんですね。
テキトー教師DotAI 認定講師はい。ただし、roleが変数で複数の値を取り得る辞書はユニオン内のどの型にもマッチしないので、roleごとに辞書を組み立てる形に直す必要があります。
室谷代表取締役他にも、C#・Go・Java・PHP・Rubyで単一値のenumが定数になったり、TypeScriptとRubyでツールランナーのクライアント側コンパクションが削除されたり。
テキトー教師DotAI 認定講師クライアント側コンパクションは、サーバー側コンパクションに置き換わった形ですね。TypeScriptだと
トリガーのしきい値は最低50,000トークンです。
compactionControlオプションと@anthropic-ai/sdk/lib/tools/CompactionControlモジュールがなくなって、betas: ["compact-2026-01-12"]とcontext_managementのeditsで指定する形になります。トリガーのしきい値は最低50,000トークンです。
室谷代表取締役あと、レガシーのText Completions APIがTypeScript・Go・Java・RubyのSDKとCLIから削除されているんですよね。新しいモデルや機能が対応していないので、Messages APIに移れと。
テキトー教師DotAI 認定講師はい。CLIだと
返答テキストの場所も
ant completions createがなくなり、ant messages createに置き換わります。返答テキストの場所も
completionからcontent.0.textに移るので、--transformを使っているスクリプトは書き換えが要ります。
室谷代表取締役地味に効くのが、非ベータのModelsメソッドから
betasが消えたことですよね。client.models.list(betas=[beta])がTypeErrorになって、client.beta.models.list(betas=[beta])に移る必要がある。
テキトー教師DotAI 認定講師ベータヘッダーを送りたいならベータ側のメソッドを呼ぶ、という整理ですね。CLIなら
ant beta:modelsです。
室谷代表取締役アップグレード作業そのものは、Claude Codeの
/claude-apiスキルを使うか、移行ガイドを1項目ずつ辿るかの二択だと。Claude Codeの運用についてはClaude Codeのアップデート方法完全ガイドでも整理しているので、普段の更新フローに組み込むとよさそうです。2026-10-21への移行手順——モデル要件とバージョン指定の仕組み
テキトー教師DotAI 認定講師公式の移行ガイドは3ステップで構成されています。まず2026-10-21に切り替える、次に破壊的変更に合わせてコードを直す、最後に2026-10-21に対してテストする。
室谷代表取締役シンプルですけど、順番が大事ですよね。切り替えてから直すのか、直してから切り替えるのかで事故り方が変わる。
テキトー教師DotAI 認定講師ガイドでは、SDKを使っている場合、リクエストはそのSDKのメジャーバージョンがリリースされた時点のAPIバージョンを使う、と説明されています。だから2026-10-21を送る最初のバージョンに上げる、と。
SDKを使わずAPIを直接叩くなら、
SDKを使わずAPIを直接叩くなら、
anthropic-versionヘッダーに2026-10-21を設定します。
室谷代表取締役で、ここにAmazon Bedrockのモデル要件が絡んでくるんですよね。
テキトー教師DotAI 認定講師はい。Amazon Bedrockでは2026-10-21はClaude 4.7以降のモデルでのみ利用可能です。
Opus 4.6以前のような古いモデルをBedrockで呼んでいる場合は、今使っているSDKバージョンに留まるか、自分でAPIバージョンを設定しているなら今送っているバージョンを送り続けます。
Opus 4.6以前のような古いモデルをBedrockで呼んでいる場合は、今使っているSDKバージョンに留まるか、自分でAPIバージョンを設定しているなら今送っているバージョンを送り続けます。
室谷代表取締役その呼び出しを2026-10-21に移したいなら、先にClaude 4.7以降のモデルに切り替える必要がある、と。
テキトー教師DotAI 認定講師そうです。ガイドでも「まずそれらの呼び出しをClaude 4.7以降のモデルに切り替える」と書かれています。
モデルの移行についてはClaude 4移行ガイドが参照先として示されています。
モデルの移行についてはClaude 4移行ガイドが参照先として示されています。
室谷代表取締役あと、ガイドには「次のステップの修正と一緒にアップグレードをリリースする」という指示もありますよね。切り替えだけ先に本番へ出さないように、と。
テキトー教師DotAI 認定講師そこは実務的に大事なところです。SDKを上げただけでデフォルト送信バージョンが変わるので、コード修正と切り離してリリースすると、意図しないタイミングで破壊的変更を踏みますから。
室谷代表取締役テストについても「リリース前に2026-10-21に対して統合をテストする」と明記されていますね。
テキトー教師DotAI 認定講師はい。あと見落としがちなのが、これらの変更がMessages APIへのリクエストだけでなく、トークンカウントや、2026-10-21で作成したMessage Batch内の各リクエストにも適用されるという点です。
バッチ処理を多用しているところは特に確認が要ります。
バッチ処理を多用しているところは特に確認が要ります。
室谷代表取締役バッチは個別のリクエストが見えにくいので、テストで拾いきれない可能性がありますよね。
テキトー教師DotAI 認定講師そうなんですよ。受講生さんでもバッチを使っている方は、リクエスト生成部分を共通化しているかどうかをまず確認するように伝えています。
対応プラットフォームと旧バージョン2023-06-01の扱い
室谷代表取締役対応プラットフォームを整理しておくと、Claude API、Claude Platform on AWS、Microsoft Foundry、Google Cloudで利用可能。Amazon BedrockはClaude 4.7以降のモデルに限られる、と。
テキトー教師DotAI 認定講師はい。Bedrockの旧モデルは現行のSDK/バージョンに留める必要があります。
ここは環境ごとに方針が分かれるところですね。
ここは環境ごとに方針が分かれるところですね。
室谷代表取締役で、旧バージョンの2023-06-01は非推奨化されていないんですよね。
テキトー教師DotAI 認定講師されていません。Anthropicの発表でも「2023-06-01 is not deprecated」と明言されています。
だから、temperatureを下げて出力を安定させているリクエストのように、2026-10-21では代替手段がない使い方は、そのリクエストだけ旧バージョンに残すという選択肢が公式に示されています。
だから、temperatureを下げて出力を安定させているリクエストのように、2026-10-21では代替手段がない使い方は、そのリクエストだけ旧バージョンに残すという選択肢が公式に示されています。
室谷代表取締役全部を一気に移行する必要はない、と。これはプロダクトを複数抱えている側としてはかなり助かります。
テキトー教師DotAI 認定講師ただし、SDKの新メジャーはデフォルトで2026-10-21を送るので、旧バージョンに留めたいリクエストは明示的にバージョンを指定する必要が出てきます。何もしないと新しいバージョン側に寄っていく点は意識しておきたいですね。
室谷代表取締役あと、レート制限など運用面への影響については、今回の資料では言及されていません。現時点では明らかにされていない、という扱いでいいと思います。
テキトー教師DotAI 認定講師そうですね。ソースに書かれていない以上、憶測で「レート制限も変わる」とは書けません。
室谷代表取締役ちなみに、Claude Max・Teamプランに月次APIクレジットが付く話はClaude Max・Teamに月次APIクレジット、最大500ドル付与で扱っています。APIのバージョン移行と合わせて、利用枠の見直しをしておくのも手ですね。
テキトー教師DotAI 認定講師よくある質問
室谷代表取締役ここからは、移行を判断するときに聞かれそうな点を整理していきましょう。
テキトー教師DotAI 認定講師まず「既存のコードは必ず対応が必要ですか」という点。これは使っている機能次第です。
temperature・top_p・top_kを送っている、assistantメッセージにdocumentブロックを置いている、userメッセージに非空citationsを付けている、Admin APIやEnterprise Analytics APIの旧フィールド名を読んでいる。どれかに当てはまれば対応が要ります。
temperature・top_p・top_kを送っている、assistantメッセージにdocumentブロックを置いている、userメッセージに非空citationsを付けている、Admin APIやEnterprise Analytics APIの旧フィールド名を読んでいる。どれかに当てはまれば対応が要ります。
室谷代表取締役逆に、デフォルト値のままパラメータを送っていない、documentやcitationsも該当しない、管理系APIも触っていない、という場合は、SDKを上げても実質的な変更は少ない、と。
テキトー教師DotAI 認定講師そうですね。ただしSDK新メジャー側の変更、認証ヘッダーや型の変更はAPIバージョンと関係なく効いてくるので、そこは別枠で確認が必要です。
室谷代表取締役次に「期限はあるのか」という点。2023-06-01は非推奨化されていないので、公式に示されている範囲では切迫した期限はありません。
ただしAnthropicはバージョン更新を高頻度化する方針を示しているので、早めに移行の目処を立てておいたほうがいい、というのが実感です。
ただしAnthropicはバージョン更新を高頻度化する方針を示しているので、早めに移行の目処を立てておいたほうがいい、というのが実感です。
テキトー教師DotAI 認定講師同感です。あと「temperatureの代わりに何を使えばいいか」ですが、公式には代替となる設定はないと明記されています。
パラメータを送らないか、そのリクエストを2023-06-01に留めるかの二択です。
パラメータを送らないか、そのリクエストを2023-06-01に留めるかの二択です。
室谷代表取締役「バージョンはどう指定するのか」については、SDKなら自動、SDKなしなら
anthropic-versionヘッダーに2026-10-21を設定、と。
テキトー教師DotAI 認定講師はい。そして「どのモデルで使えるのか」は、Claude API・Claude Platform on AWS・Microsoft Foundry・Google Cloudでは利用可能、Amazon BedrockではClaude 4.7以降のモデルに限られます。
室谷代表取締役最後に「移行作業を効率化する方法はあるのか」。公式にはClaude Codeの
/claude-apiスキルで更新するか、移行ガイドを1項目ずつ辿る方法が示されています。
テキトー教師DotAI 認定講師まずはコードベースでtemperature・top_p・top_kを検索して、送信箇所を洗い出すところから始めるのが現実的ですね。そこで出てきた箇所について、デフォルト値しか使っていないのか、意図的に下げているのかを1つずつ見ていく。
室谷代表取締役そのうえで、意図的に下げているものは旧バージョンに残すか、出力の設計自体を見直すか。ここが今回の移行で一番頭を使うところだと思います。
テキトー教師DotAI 認定講師そうですね。バージョン番号の切り替え自体は機械的にできますが、temperatureを外したときに品質がどう変わるかは、実際にテストしないと分かりませんから。
室谷代表取締役公式ガイドでも「リリース前に2026-10-21に対してテストする」とされているので、そこは素直に従うのがよさそうです。今日はありがとうございました。
