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",
}'