Inicio
DocumentaciĂłn
Recursos
Partners
Comunidad

Recursos

Revisa las actualizaciones de nuestras soluciones y operatividad del sistema o pide soporte técnico.

Partners

Conoce nuestro programa para agencias o desarrolladores que ofrecen servicios de integraciĂłn y vendedores que quieren contratarlos.

Comunidad

Recibe las Ășltimas novedades, pide ayuda a otros integradores y comparte tus conocimientos.

Renovar Access Token - OAuth - Mercado Pago Developers

BĂșsqueda inteligente powered by OpenAI 

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.

Importante
Solo es posible utilizar este flujo si la aplicaciĂłn retornar el parĂĄmetro scope indicando el valor offline_access y el vendedor ha autorizado previamente esta acciĂłn a partir del flujo de Authorization code .

Sigue los pasos a continuaciĂłn para renovar el Access Token.

  1. EnvĂ­a el cĂłdigo de refresh_token, tus credenciales y el authorization_code obtenido mediante el flujo de CreaciĂłn al endpoint /oauth/token, incluyendo el cĂłdigo de refresh_token en el string grant_type, para recibir una nueva respuesta con un nuevo access_token y un nuevo refresh_token.
  2. Actualiza la aplicaciĂłn con el Access Token recibido en la respuesta.
Importante
Recuerda que cada vez que renueves el access_token, también se renovarå el refresh_token, por lo que deberås almacenarlo nuevamente.
          
<?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",
}'