テナント管理APIのバージョン管理

テナント管理APIは、バージョン管理を使用して無停止アップグレードをサポートします。

たとえば、次の要求URLではバージョン2のAPIが指定されています。

https://hostname_or_ip_address/api/v2/authorize

テナント管理APIで後方互換性のない変更が行われた場合は、APIのメジャー バージョンが上がります。たとえば、APIに対して互換性のない変更が行われると、バージョンが1.1から2.0に上がります。テナント管理APIで後方互換性のある変更が行われた場合は、マイナー バージョンが上がります。後方互換性のある変更には、新しいエンドポイントやプロパティの追加などがあります。たとえば、APIに対して互換性のある変更が行われると、バージョンが1.0から1.1に上がります。

StorageGRID Webscaleソフトウェアを初めてインストールした時点では、テナント管理APIの最新のバージョンのみが有効になっています。ただし、StorageGRID Webscaleを新しいメジャー バージョンにアップグレードした場合、少なくともStorageGRID Webscaleのメジャー リリース1つ分のアップグレードにおいては、古いAPIバージョンにも引き続きアクセスできます。

古い要求は、次の方法で廃止とマークされます。

現在のリリースでサポートされているAPIバージョンの特定

サポートされているAPIのメジャー バージョンのリストを返すには、次のAPI要求を使用します。
GET https://{{IP-Address}}/api/versions
{
    "responseTime": "2016-10-03T14:49:16.587Z",
    "status": "success",
    "apiVersion": "2.0",
    "data": [
        1,
        2
    ]
}

要求のAPIバージョンの指定

APIのバージョンは、パス パラメータ(/api/v1)またはヘッダー(Api-Version: 2)を使用して指定できます。両方を指定した場合、ヘッダーの値がパスの値を上書きします。

curl https://[IP-Address]/api/v2/grid/accounts

curl -H "Api-Version: 2" https://[IP-Address]/api/grid/accounts