POST /api/external-auth/refresh
Revoga o refresh token apresentado e emite um novo par access + refresh token.
Rotação obrigatória
Cada chamada a este endpoint invalida o refresh token usado e emite um novo. Guarde sempre o token mais recente retornado.
Request
Headers
| Header | Valor |
|---|---|
Content-Type | application/json |
Body
{
"refreshToken": "dGhpcyBpcyBhIHNhbXBsZSByZWZyZXNoIHRva2Vu"
}
| Campo | Obrigatório | Descrição |
|---|---|---|
refreshToken | ✅ | O refresh token obtido no /token ou em um /refresh anterior |
curl -s -X POST https://servicos.ifollowtech.com.br/api/external-auth/refresh \
-H "Content-Type: application/json" \
-d '{"refreshToken": "SEU_REFRESH_TOKEN"}'
Response
200 OK
Novo par de tokens. Descarte o par anterior — o refresh token antigo não é mais válido.
{
"AccessToken": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
"RefreshToken": "bm92byByZWZyZXNoIHRva2VuIGFxdWk",
"TokenType": "Bearer",
"ExpiresIn": 900,
"IssuedAt": "2026-04-23T14:15:00Z",
"Scope": "external.read external.orders.read"
}
401 Unauthorized
{
"Error": "invalid_grant",
"ErrorDescription": "Invalid refresh token."
}
Retornado quando:
- O token não existe.
- O token já está expirado (padrão: 14 dias).
- O token já foi utilizado em uma renovação anterior.
- O acesso do fornecedor foi revogado.
Proteção contra reutilização de token
Se um refresh token já utilizado for enviado novamente, o sistema interpreta isso como possível comprometimento da sessão e encerra todo o acesso ativo do fornecedor:
Refresh token antigo apresentado
│
▼
Toda a sessão encerrada
│
▼
401 invalid_grant
│
▼
Use a API key novamente em POST /token para iniciar nova sessão
aviso
Mesmo que a reutilização tenha sido acidental, a sessão será encerrada. Sempre persista e utilize o token mais recente retornado pelo /refresh.