Refresh Token
Refresh Token
O fluxo para a utilização do refresh token obtido no fluxo Authorization Code é uma forma de permitir ao integrador reutilizar as permissões concedidas em um fluxo para gerar novos tokens.
Especificidades
O refresh token tem uma duração de 10 dias e, toda vez que é utilizado, tem sua duração redefinida para 10 dias. Assim, é possível utilizar o token indefinidamente, contanto que não haja um desejo de mudar os escopos presente no fluxo.
Além disso, sempre que um access token é gerado por meio do refresh token, o access token antigo é inválidado caso esteja dentro do período de duração de um access token(24h)
Fluxo
Neste momento, o Client pode mandar uma requisição informando o refresh token referente ao access token expirado:
POST /oauth2/token HTTP/1.1
Host: id.btgpactual.com
Content-type: application/x-www-form-urlencoded
Authorization: Basic <client_id:client_secret> // Base 64 encoded
grant_type=refresh_token&refresh_token={refresh_token}
E assim receberá como response um novo Access Token e um novo Refresh Token:
HTTP/1.1 200 OK
Content-Type: application/json
{
"access_token":"eyJhbGciOiJSUzI1NiIsI",
"refresh_token":"WV6G4HKBrvgiLoFdMBiVx",
"scope":"apps email openid profile webhooks",
"id_token":"eyJhbGciOiJIUzI1NiJ9.eyJz",
"token_type":"Bearer",
"expires_in":86400
}
Updated 6 months ago