【えーぴーあいばーじょにんぐ】
APIバージョニング とは?
最終更新:
💡 使う版を分けて、新しい仕様へ移る道を作る
APIの仕様を版として区別し、互換性に影響する変更と利用者の移行を管理する設計・運用。パスやヘッダーなどで版を指定する。新旧の提供期間、変更点、終了予定を伝えることも含む。
📌 このページのポイント
- 返却項目の削除や型変更など、互換性への影響を判断
- パスやヘッダーなど、提供元の指定方式に従う
- 機能追加のすべてが新しい版を必要とするわけではない
- 変更点・移行手順・旧版の終了予定を管理する
APIにも版が必要なの?
たとえば返却するnameという項目を削除すると、それを読むアプリが動かなくなるかもしれない。互換性に影響する変更を扱うため、旧仕様と新仕様を別の版として提供する方法があるよ。番号を付けるだけで安全になるのではなく、版ごとの約束を守ることが大切なんだ。
どうやって版を選ぶ?
機能を足すたびにv2、v3になる?
古い版は、ずっと使える?
新しい版に変えれば終わり?
返却される型、必須項目、認証条件などの変更を読んで、アプリが動くかテストするよ。新旧を提供する期間を使い、利用者が段階的に移れるようにする。方式の選択だけでなく、互換性の方針と終了時の案内まで含めて運用しよう。
📖 おまけ:英語の意味
「API Versioning」 = APIの版の管理
💬 利用するAPIの仕様を区別する話だよ。ソースコードのGit履歴や、SDKの配布バージョンとは分けて考えよう。