Crear y refrescar token/oauth/tokenPara crear o actualizar el token necesario para operar su aplicación en nombre de un vendedor.
POST
Productos que lo utilizan:
Parámetros para la solicitud
client_idstring
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.REQUERIDO
client_secretstring
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.REQUERIDO
code
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.string
grant_typestring
Localización: bodyEspecifica el tipo de operación a realizar para obtener tus credenciales.REQUERIDO
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
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 porstring
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
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.string
expires_in
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).number
scope
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.string
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_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.