Criar e atualizar token - OAuth - Mercado Pago Developers
Criar e atualizar token

POST

/oauth/token
Para criar ou atualizar o token necessário para operar seu aplicativo em nome de um vendedor.
Parâmetros de requisição
client_id

OBRIGATÓRIO

string
Localização: bodyID único que identifica sua aplicação/integração. Uma das chaves do par que compõe as credenciais que identifica uma aplicação/integração na sua conta.
client_secret

OBRIGATÓRIO

string
Localização: bodyChave privada para ser utilizada em alguns plugins para gerar pagamentos. Uma das chaves do par que compõe as credenciais que identifica uma aplicação/integração na sua conta.
code
string
Localização: bodyCódigo concedido pelo servidor de autenticação para que a aplicação possa obter um access token e um refresh token associado. Tem validade de 10 minutos contados a partir da sua geração. Requerido quando grant_type=authorization_code.
grant_type

OBRIGATÓRIO

string
Localização: bodyEspecifica o tipo de operação a ser executada para obter suas credenciais.
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 resposta
access_token
string
Localização: bodyCódigo de segurança que identifica o usuário, seus privilégios e uma aplicação utilizado nas diferentes requests de origem pública para ter acesso a recursos protegidos. Tem sua validade determinada pelo parâmetro expires_in e são semelhantes a APP_USR-1585551492-030918-25######3458-2880736 sendo compostos 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
Localização: bodyinformações necessárias para que o token seja usado corretamente para acessar recursos protegidos. O token do tipo "bearer" é o único suportado pelo servidor de autorização e é usado quando o access token é incluído como texto simples na solicitação. Entende-se que o portador tem acesso direto ao token.
expires_in
number
Localização: bodyTempo fixo de expiração do access_token expresso em segundos. Por padrão o tempo de expiração é 180 dias (15552000 segundos).
scope
string
Localização: bodyScopes são utilizados no processo de autorização e consentimento das APIs e permitem determinar ao que o acesso está sendo solicitado por parte da aplicação e ao que se está concedendo acesso por parte do usuário. Por padrão, os scopes associados ao token são os que foram determinados no momento de criação do token original e configuração da aplicação.
Solicitação
curl
curl -X POST \
      'https://api.mercadopago.com/oauth/token' \
       -H 'Content-Type: application/json' \ 
      -d '{
  "client_secret": "client_secret",
  "client_id": "client_id",
  "grant_type": "authorization_code",
  "code": "TG-XXXXXXXX-241983636"
}'
Resposta
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
}
Erros
400bad_request
invalid_client The provided client_id and/or client_secret of your app is invalid.
invalid_grant There are several reasons for this error, it could be because the authorization_code or refresh_token is invalid, expired or revoked, was sent in an incorrect flow, belongs to another client, or the redirect_uri used in the authorization flow does not match what your application has configured.
invalid_scope The requested scope is invalid, unknown, or wrongly formed. The allowed values for the scope parameter are “offline_access”, ”write”, ”read”.
invalid_request The request does not include a required parameter, includes an unsupported parameter or parameter value, has a duplicated value, or is otherwise malformed.
unsupported_grant_type Allowed values for grant_type are “authorization_code” or “refresh_token”.
forbidden The call does not authorize access, possibly another user's token is being used.
unauthorized_client The application does not have a grant with the user or the permissions (scopes) that the application has with this user do not allow creating a token.