Pular para o conteúdo principal

Geração do Token de Acesso

Para gerar o Token de Acesso, é necessário realizar uma requisição utilizando HTTP Basic Authentication através de um método POST, de modo que seja enviado um Header Authorization com valor Basic {CODIGO_BASE64}. As credenciais CLIENT_ID e CLIENT_SECRET devem ser concatenadas com um símbolo “:” para que então sejam informadas como valor para o campo citado.

perigo

Mantenha suas credenciais em segurança. Nunca compartilhe ou exponha o client_secret em código frontend.

Deve também ser informado o tipo de autenticação no corpo da mensagem como client_credentials. Segue o modelo de requisição utilizado para gerar o token de acesso:

URL AUTH
{BaseUrl}/api/oauth/token
HTTP Headers - Exemplo
Authorization: BASIC base_64({CLIENT_ID}:{CLIENT_SECRET})
Content-Type: application/json
HTTP Request Body
{
"grant_type": "client_credentials"
}
Exemplo cURL - bash
{
curl -X POST https://api.moneyguard.com.br/api/oauth/token \
-H "Authorization: Basic $(echo -n 'seu_client_id:seu_client_secret' | base64)" \
-H "Content-Type: application/json" \
-H "User-Agent: seu_user_agent" \
-d '{"grant_type": "client_credentials"}'
}

Caso os dados informados estejam corretos, será retornada uma mensagem HTTP 200 OK informando o código gerado e o seu tempo de validade. Esse código deverá ser utilizado em todas as requisições posteriores, e precisará ser gerado novamente após atingir seu tempo de expiração.

HTTP 200 Response Body - Exemplo
{
"access_token": "eyJhbGciOiJIUzI1NiJ9...",
"token_type": "Bearer",
"expires_in": 1800
}

Descrição dos Atributos

ATRIBUTODESCRIÇÃOTIPO
access_token
(Obrigatório)
Token JWT a ser utilizado nas demais requisições da APISTRING
token_type
(Obrigatório)
Tipo de token gerado. Sempre “Bearer”STRING
expires_in
(Obrigatório)
Tempo de validade do token, em segundos 930 minutos)INTEGER

Em caso de das informações passadas na requisição para criação de token serem inválidas, será retornado HTTP 401 Unauthorized, de acordo com o exemplo abaixo.

HTTP 401 Response Body - Exemplo:
{
"error": "unauthorized"
}

Possíveis erros

CÓDIGOERRODESCRIÇÃO
400Unsupported grant typegrant_type diferente de "client_credentials"
401Missing credentialsHeader Authorization ausente
401Invalid credentials formatFormato do header Authorization invalido
401Invalid credentialsclient_id ou client_secret incorretos
401User inactiveUsuário da API está inativo
403IP not whitelistedIP de origem não está na lista de IPs permitidos