Crear y refrescar token - OAuth - Mercado Pago Developers
Crear y refrescar token

POST

/oauth/token
Para crear o actualizar el token necesario para operar su aplicación en nombre de un vendedor.
Parámetros para la solicitud
client_id

REQUERIDO

string
Localización: bodyID único que identifica tu aplicación/integración. Una de las claves del par que componen las credenciales que identifican una aplicación/integración en tu cuenta.
client_secret

REQUERIDO

string
Localización: bodyClave privada para ser utilizada en algunos complementos para generar pagos. Una de las claves del par que componen las credenciales que identifican una aplicación/integración en tu cuenta.
code
string
Localización: bodyCódigo otorgado por el servidor de autenticación para que la aplicación pueda obtener un access token y un refresh token asociado. Tiene una validez de 10 minutos contados desde su generación. Obligatorio cuando grant_type=authorization_code.
grant_type

REQUERIDO

string
Localización: bodyEspecifica el tipo de operación a realizar para obtener tus credenciales.
authorization_code: used to get the access token for the first time.
refresh_token: it is used to refresh an existing token.
Parámetros de respuesta
access_token
string
Localización: bodyCódigo de seguridad que identifica al usuario, sus privilegios y una aplicación utilizada en diferentes solicitudes de origen público para acceder a los recursos protegidos. Su validez está determinada por el parámetro expires_in y es similar a APP_USR-1585551492-030918-25######3458-2880736 estando compuesto por
Access token type: APP_USR (application on behalf of a user), TEST (test, only valid in sandbox)
Client ID: 1585551492
Creation date (MMddHH): 030918
Security hash: 25######3458
User ID: 2880736
token_type
string
Localización: bodyinformación necesaria para que el token se utilice correctamente para acceder a los recursos protegidos. El token de tipo "bearer" es el único admitido por el servidor de autorización y se utiliza cuando el access token se incluye como texto sin formato en la solicitud. Se entiende que el bearer tiene acceso directo al token.
expires_in
number
Localización: bodyTiempo de caducidad de access_token fijo expresado en segundos. De forma predeterminada, el tiempo de caducidad es de 180 días (15552000 segundos).
scope
string
Localización: bodyLos scopes se utilizan en el proceso de autorización y consentimiento de la API y permiten determinar qué acceso solicita la aplicación y qué acceso otorga el usuario. De forma predeterminada, los ámbitos asociados con el token son los que se determinaron al crear el token original y configurar la aplicación.
Solicitud
curl
curl -X POST \
    'https://api.mercadopago.com/oauth/token' \
    -H 'Authorization: Bearer YOUR_ACCESS_TOKEN' \
    -H 'Content-Type: application/json' \
    -d '{
  "client_secret": "client_secret",
  "client_id": "client_id",
  "grant_type": "authorization_code",
  "code": "TG-XXXXXXXX-241983636"
}'
Respuesta
json
{
  "access_token": "APP_USR-4934588586838432-XXXXXXXX-241983636",
  "token_type": "bearer",
  "expires_in": 15552000,
  "scope": "offline_access read write",
  "user_id": 241983636,
  "refresh_token": "TG-XXXXXXXX-241983636",
  "public_key": "APP_USR-d0a26210-XXXXXXXX-479f0400869e",
  "live_mode": true
}
Errores
400bad_request
invalid_client invalid_client -- El client_id y/o client_secret proporcionados de su aplicación no son válidos.
invalid_grant invalid_grant -- Hay varias razones para este error, podría deberse a que el authorization_code o el refresh_token no son válidos, caducaron o fueron revocados, se enviaron en un flujo incorrecto, pertenecen a otro cliente, o el redirect_uri utilizado en el flujo de autorización no coincide con lo que su aplicación tiene configurado.
invalid_scope invalid_scope -- El alcance solicitado no es válido, se desconoce o está mal formado. Los valores permitidos para el parámetro de alcance son "offline_access", "write", "read".
invalid_request invalid_request -- La solicitud no incluye un parámetro obligatorio, incluye un parámetro o valor de parámetro no compatible, tiene un valor duplicado o tiene un formato incorrecto.
unsupported_grant_type unsupported_grant_type -- Los valores permitidos para grant_type son "authorization_code" o "refresh_token".
forbidden forbidden -- La llamada no autoriza el acceso, posiblemente se esté utilizando el token de otro usuario.
unauthorized_client unauthorized_client -- La aplicación no tiene una concesión con el usuario o los permisos (scopes) que la aplicación tiene con este usuario no permiten crear un token.