Tenant Management API versioning

The Tenant Management API uses versioning to support non-disruptive upgrades.

For example, this Request URL specifies version 3 of the API.

https://hostname_or_ip_address/api/v3/authorize

The major version of the Tenant Management API is bumped when changes are made that are not compatible with older versions. The minor version of the Tenant Management API is bumped when changes are made that are compatible with older versions. Compatible changes include the addition of new endpoints or new properties. The following example illustrates how the API version is bumped based on the type of changes made.
Table 1. Example API versioning
Type of change to API Old version New version
Compatible with older versions 2.1 2.2
Not compatible with older versions 2.1 3.0

When StorageGRID software is installed for the first time, only the most recent version of the Tenant Management API is enabled. However, when StorageGRID is upgraded to a new feature release, you continue to have access to the older API version for at least one StorageGRID feature release.

Outdated requests are marked as deprecated in the following ways:

Determining which API versions are supported in the current release

Use the following API request to return a list of the supported API major versions:
GET https://{{IP-Address}}/api/versions
{
  "responseTime": "2019-01-10T20:41:00.845Z",
  "status": "success",
  "apiVersion": "3.0",
  "data": [
    2,
    3
  ]
}

Specifying an API version for a request

You can specify the API version using a path parameter (/api/v3) or a header (Api-Version: 3). If you provide both values, the header value overrides the path value.

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

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