Controle de versão da Grid Management API no StorageGRID
A API de gerenciamento de grid utiliza versionamento para suportar atualizações não disruptivas.
Por exemplo, esta URL de solicitação especifica a versão 4 da API.
https://hostname_or_ip_address/api/v4/authorize
A versão principal da API é atualizada quando são feitas alterações que não são compatíveis com versões anteriores. A versão secundária da API é atualizada quando são feitas alterações que são compatíveis com versões anteriores. Alterações compatíveis incluem a adição de novos endpoints ou novas propriedades.
O exemplo a seguir ilustra como a versão da API é atualizada com base no tipo de alterações realizadas.
| Tipo de alteração na API | Versão antiga | Nova versão |
|---|---|---|
Compatível com versões anteriores |
2,1 |
2,2 |
Não é compatível com versões antigas |
2,1 |
3,0 |
Ao instalar o software StorageGRID pela primeira vez, apenas a versão mais recente da API é habilitada. No entanto, ao atualizar para uma nova versão de recursos do StorageGRID, você continua tendo acesso à versão anterior da API por pelo menos uma versão de recursos do StorageGRID.
|
|
Você pode configurar as versões suportadas. Consulte a seção config da documentação da API Swagger para o "API de gerenciamento de grid" para mais informações. Você deve desativar o suporte para a versão antiga após atualizar todos os clientes da API para usar a versão mais recente. |
As solicitações desatualizadas são marcadas como obsoletas das seguintes maneiras:
-
O cabeçalho da resposta é "Deprecated: true"
-
O corpo da resposta JSON inclui "deprecated": true
-
Um aviso de descontinuação é adicionado ao nms.log. Por exemplo:
Received call to deprecated v2 API at POST "/api/v2/authorize"
Determine quais versões da API são compatíveis na versão atual
Use a solicitação GET /versions à API para retornar uma lista das versões principais da API suportadas. Essa solicitação está localizada na seção config da documentação da API Swagger.
GET https://{{IP-Address}}/api/versions
{
"responseTime": "2023-06-27T22:13:50.750Z",
"status": "success",
"apiVersion": "4.0",
"data": [
2,
3,
4
]
}
Especifique uma versão da API para uma solicitação
Você pode especificar a versão da API usando um parâmetro de caminho (/api/v4) ou um cabeçalho (Api-Version: 4). Se você fornecer ambos os valores, o valor do cabeçalho substitui o valor do caminho.
curl https://[IP-Address]/api/v4/grid/accounts curl -H "Api-Version: 4" https://[IP-Address]/api/grid/accounts