Claude APIを呼び出すときは、リクエストに「anthropic-version」というヘッダーを付けて、使う仕様の版を指定する。公式の移行ガイドによると、これまでの公式SDKとCLIは、すべてのリクエストに「2023-06-01」を付けて送っていた。今回の新版「2026-10-21」を送るのは、新しいメジャーバージョンのSDKとCLIからだ。
SDKを使っている場合は、新しいメジャー版に上げれば、自動的に新バージョンで送られる。SDKを使わずに直接APIを呼んでいる場合は、ヘッダーの値を「2026-10-21」に自分で書き換える。公式は、新版への切り替えと、後述の修正を同時にリリースするよう案内している。なお、Amazon Bedrockでは新版が使えるのはClaude 4.7以降のモデルのみで、それより古いモデルを呼んでいる場合は、今のSDKの版(またはヘッダーの値)のままにするよう注意書きがある。
| 項目 | 内容 | 確度 |
|---|---|---|
| 新バージョン | API version 2026-10-21(2026年10月21日付) | 公式の更新情報 |
| これまでの版 | 2023-06-01(旧SDKが送っていた版) | 移行ガイドの記載 |
| 切り替え方(SDK) | 新しいメジャー版へ上げると自動で新版を送る | 移行ガイドの記載 |
| 切り替え方(直接呼び出し) | anthropic-versionヘッダーを2026-10-21にする | 移行ガイドの記載 |
| Amazon Bedrockの対象 | Claude 4.7以降のモデルのみ。古いモデルは今の版のまま | 注意が必要 |
※ Anthropic公式の更新情報と移行ガイドにもとづく整理。
移行ガイドが挙げる、Messages API(会話の本体にあたるAPI)の破壊的変更は3つだ。いずれも、新版でそれを送ると400エラーが返る。
1つ目は、サンプリング設定の削除。「temperature」「top_p」「top_k」を送ると、値がデフォルトのままでもエラーになる。公式は「3つのパラメーターをリクエストから外す」よう案内している。外した場合は、これらの初期値で動く(temperatureは1.0)。Claude 4.7以降のモデルのように、もともと初期値しか受け付けないモデルでは動きは変わらない。一方、Claude Sonnet 4.6のように別の値を受け付けるモデルで、「出力を安定させたくてtemperatureを下げていた」場合は、その効果がなくなる。公式は「代わりになる設定はない」と説明している。どうしても必要なリクエストは、旧版(2023-06-01)のままにする手がある、とも書かれている。
2つ目は、assistantメッセージの中に直接documentブロックを置くこと。文書はuserメッセージで送る。ただし、Claudeが返したウェブ取得ツールの結果のように、別のブロックの中に入っている文書は引き続き受け付けられる。
3つ目は、userメッセージのtextブロックにcitations(引用情報)を付けること。空でない配列を付けるとエラーになる。assistant側のメッセージに付いた引用(Claudeの過去の返信を送り返す場合など)や、文書・検索結果の「citationsを有効にする」設定は、そのまま使える。
| 変更点 | 新版での扱い | 対処 |
|---|---|---|
| temperature / top_p / top_k | 送ると400エラー(初期値でも) | パラメーターを削除 |
| assistant内のdocumentブロック | 直接置くと400エラー | userメッセージで送る |
| userのtextブロックのcitations | 空でない配列だと400エラー | citationsを外す |
| どうしても変えられない | そのリクエストだけ旧版で送る手がある | 2023-06-01を継続 |
※ 公式の移行ガイドにもとづく整理。
公式のガイドが示す、2026-10-21を送る最初の版は次のとおりだ。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」は2.0.0。
注意点がいくつかある。まずGoは、新しいメジャー版ではモジュールのパスが「/v2」付きになるため、importの書き換えが必要だ。公式は、古いパスのままだと「最新のv1がエラーも警告もなく入り続ける」と書いている。気づかないうちに古い版のままになる可能性があるわけだ。
次にTypeScriptでは、Bedrock・Vertex・Foundry・AWS・Google Cloud向けの各SDKも、同じタイミングでv1に上げる必要がある。そうしないと、古い版の「@anthropic-ai/sdk」が別にもう1つ入ってしまう、と説明されている。
そのほか、SDK側の変更として、メッセージの型がuser・assistant・systemの役割ごとに分かれたこと、Text Completionsが削除されたこと、APIキーが「Authorization: Bearer」で送られるようになったこと、antのコマンドラインでAPIキーを直接渡す指定(--api-key)が廃止されたことなどが挙がっている。後者は、履歴やプロセス一覧に値が残るのを避けるためと説明されている。
| 言語・ツール | パッケージ | 最初の対応版 |
|---|---|---|
| Python | anthropic | 2.0.0 |
| TypeScript | @anthropic-ai/sdk | 1.0.0 |
| C# | Anthropic | 13.0.0 |
| Go | anthropic-sdk-go/v2 | 2.0.0(パスが/v2に) |
| Java | com.anthropic:anthropic-java | 3.0.0 |
| PHP | anthropic-ai/sdk | 1.0.0 |
| Ruby | anthropic(gem) | 2.0.0 |
| CLI | ant | 2.0.0 |
※ 公式の移行ガイドの記載にもとづく整理。
見落としやすい変更が、ライセンスだ。公式のガイドによると、今回の新版を送るSDKとCLIはApache License 2.0で提供される。それ以前の版はMITライセンスのままで、コードを書き換える必要はない。会社などで依存パッケージのライセンスを管理している場合は、台帳の記載を更新するよう案内されている。
Admin APIとClaude Enterprise Analytics APIでは、項目名の変更も行われた。たとえばAPIキーの「workspace_id」は、新版では「scope」で読むことになる。管理用のAPIを自作のツールから呼んでいる場合は、移行ガイドの対応表を確認したい。
関連して、公式の更新情報には10月20日付で「ユーザープロファイル」の開始も載っている。自社のサービスを通じてClaudeを使う利用者を、リクエストごとに「どのエンドユーザーのものか」Anthropicに伝えられる仕組みだ。これにより、問題が起きたときの制限が組織全体ではなく、1つの顧客単位で適用できるようになる、と説明されている。
リクエストには「anthropic-user-profile-id」というヘッダーでIDを付ける。プロファイルには、制限の状況を示す「enforcement_status」(unrestricted・pending・restricted・bannedのいずれか)が付く。ただし、この状態を決めるのはAnthropic側で、利用者側の設定を変えても変わらない。10月21日には、この状態でプロファイルを絞り込める項目も追加された。
また10月22日には、Anthropicが運営するClaude APIをGoogle Cloudのプロジェクトから使えるサービスが始まった、と更新情報に書かれている。アクセス管理はGoogle CloudのIAM、請求はGoogle Cloud Marketplaceで行い、Claude Opus 5.5の高速モードも使える。ただし、料金やリージョンなどの詳細は、今回確認できた範囲では示されていなかった。
チャットで使うだけの人には関係のない話だが、Claudeを組み込んだ自作のツールや社内システムがある人にとっては、「勝手に更新したら動かなくなる」タイプの変更だ。公式の手順どおり、先に3つの送り方を洗い出し、テストしてから切り替えるのが安全だろう。この記事は2026年10月25日時点で確認できた公式情報にもとづく。仕様や移行手順は今後更新される可能性があるため、最新の内容は公式ドキュメントを確認してほしい。
参考リンク: Claude Developer Platform 更新情報 / API version 2026-10-21 移行ガイド / User Profiles