Usando um token de atualização
O fluxo de token de atualização é uma forma mais segura de autorizar solicitações de API. Em vez de usar diretamente uma única credencial de longa duração, você troca um token de atualização por um token de acesso de curta duração. Quando esse token de acesso expira, você realiza a troca novamente.
Observe que o token de atualização não pode ser usado por si só para autorizar solicitações de API; ele sempre precisa ser trocado por um token de atualização primeiro.
Para usar esse fluxo, selecione a opção refresh token ao criar um token em Admin → Developer. Você receberá três valores no momento da criação:
-
Client ID – identifica sua integração
-
Client secret – autentica a solicitação de troca
-
Refresh token – usado para obter tokens de acesso
Troca de um token de atualização por um token de acesso
Envie uma solicitação POST ao endpoint de tokens do Altium Identity.
Token Endpoint
Domínio |
URL |
Altium 365 |
|
Altium 365 Gov Cloud |
|
Request Body (application/x-www-form-urlencoded)
grant_type=refresh_token
refresh_token={refresh-token}
client_id={client-id}
client_secret={client-secret}
Response
{
"access_token": "...",
"expires_in": 14400,
"token_type": "Bearer",
"refresh_token": "...",
"scope": "..."
}
Use o access_token da resposta para autorizar solicitações de API. expires_in é expresso em segundos e indica por quanto tempo o token de acesso é válido.
curl Example:
curl -X POST https://auth.altium.com/connect/token \
-H "Content-Type: application/x-www-form-urlencoded" \
--data-urlencode "grant_type=refresh_token" \
--data-urlencode "refresh_token={refresh-token}" \
--data-urlencode "client_id={client-id}" \
--data-urlencode "client_secret={client-secret}"
Integração com sua aplicação
Um padrão típico para integrações de longa duração:
-
Armazene o token de atualização, o ID do cliente e o segredo do cliente com segurança (por exemplo, em variáveis de ambiente ou em um gerenciador de segredos).
-
Na inicialização, chame o endpoint de tokens para obter um novo token de acesso.
-
Use o token de acesso para solicitações de API. Mantenha-o em cache até que expire.
-
Quando ele expirar (status HTTP
401 Unauthorized, ou200 OKcom o código de erroAuthExpiredTokenna resposta GraphQL), troque o token de atualização novamente para obter um novo token de acesso.
Os tokens de atualização expiram após o período de validade configurado na criação (até 1 ano). Quando um token de atualização expirar, você precisará criar um novo em Administração → Desenvolvedor.
Veja também