Renovar Access Token
El flujo Refresh token se usa para intercambiar un temporary grants de tipo refresh_token
por un Access Token cuando el que está en uso ha sido obtenido a través del flujo Authorization code y se encuentra próximo a caducar y . El Access Token recibido a través de este llamado es válido durante 180 días (6 meses), luego de lo cual se debe reconfigurar todo el flujo de autorización.
Además, este flujo permite continuar utilizando un Access Token válido con las mismas características que el token original, sin necesidad de una nueva interacción con el usuario. Al implementarlo, el token original se intercambia por uno nuevo, que también ofrece la posibilidad de limitar los alcances al devolver un nuevo refresh token para intercambiarlo en el futuro.
Sigue los pasos a continuación para renovar el Access Token.
- Envía el código de
refresh_token
, tus credenciales y elauthorization_code
obtenido mediante el flujo de Creación al endpoint /oauth/token, incluyendo el código derefresh_token
en el stringgrant_type
, para recibir una nueva respuesta con un nuevoaccess_token
y un nuevorefresh_token
. - Actualiza la aplicación con el Access Token recibido en la respuesta.
<?php
$client = new OauthClient();
$request = new OAuthRefreshRequest();
$request->client_secret = "CLIENT_SECRET";
$request->client_id = "CLIENT_ID";
$request->refresh_token = "REFRESH_TOKEN";
$client->refresh($request);
?>
OauthClient client = new OauthClient();
String refreshtoken = "TG-XXXXXXXX-241983636";
client.createCredential(refreshtoken, null);
const client = new MercadoPagoConfig({ accessToken: 'access_token', options: { timeout: 5000 } });
const oauth = new OAuth(client);
oauth.refresh({
'client_secret': 'your-client-secret',
'client_id': 'your-client-id',
'refresh_token': 'refresh-token'
}).then((result) => console.log(result))
.catch((error) => console.log(error));
curl -X POST \
'https://api.mercadopago.com/oauth/token'\
-H 'Content-Type: application/json' \
-d '{
"client_id": "client_id",
"client_secret": "client_secret",
"grant_type": "refresh-token",
"refresh_token": "TG-XXXXXXXX-241983636",
}'