Ir al contenido

Renovar el token

Los dos tokens duran 2 minutos. Renuévalos unos 20 segundos antes de que venzan, o cuando una ruta responda 401.

No tiene refresh_token. Pide otro igual que la primera vez, con la credencial. Guárdalo en memoria de tu servidor y reúsalo mientras no venza: no pidas uno por cada petición.

Usa el refresh_token que recibiste al iniciar sesión:

Ventana de terminal
curl -X POST "https://auth.lavitrina-online.com/realms/tienda-clientes/protocol/openid-connect/token" \
-H "Content-Type: application/x-www-form-urlencoded" \
-d "grant_type=refresh_token" \
-d "client_id=sf-TU_STORE_ID-login" \
-d "refresh_token=REFRESH_TOKEN"

La respuesta trae un access_token nuevo y normalmente también un refresh_token nuevo.

Si el refresh_token venció o el cliente cerró sesión, la respuesta es un 400 con "error": "invalid_grant". En ese caso el cliente debe iniciar sesión otra vez.

  1. Guarda el momento en que vence el token (ahora + expires_in).
  2. Renueva unos 20 segundos antes de que venza.
  3. Si aun así una petición responde 401, renueva una vez y repítela. Si vuelve a fallar, pide un token desde cero (o que el cliente inicie sesión).