Autenticação

Autenticação

Para utilizar as APIs do motor, é necessário informar, via Header, o token de acesso. Para conseguir o token, deve-se seguir o seguinte passo:

  • Realizar uma chamada do tipo POST para o seguinte endpoint:
POST {auth_base_url}/realms/motor-rce/protocol/openid-connect/token
  • Passando no body os seguintes campos:
CampoTipoDescrição
client_secretstringObrigatório. Chave fornecida a cada parceiro.
client_idstringObrigatório. ID fornecido a cada parceiro.
grant_typestringObrigatório. Este campo sempre terá o valor client_credentials.
ℹ️

Este é o único endpoint em que o cabeçalho Content-Type deve ser especificado como application/x-www-form-urlencoded.

Exemplos de uso:

    curl --request POST \ --url {auth_base_url}
    /realms/motor-rce/protocol/openid-connect/token \ --header 'Content-Type:
    application/x-www-form-urlencoded' \ --data
    client_secret=8oaqsgFakeSecret73RPhInyIN \ --data client_id=motor-rce \
    --data grant_type=client_credentials

Retorno esperado:

Após o envio das informações corretamente, um token de autenticação será gerado. Para efetuar as requisições em nosso sistema seu uso será necessário nas demais operações:

{
  "access_token": "eyJhbGciOiJSUzI1N.eyJleHAiOjE3MTAzNjk2ODUsImlhdCI6MTcxMDM2MjQ4NSwianRpIjoiMDNiNjg2NjktOTZhYi00ZDI4LWJmMWMtMzlmYzVjMTk2NjcwIiwiaXNzIjbW90b3ItcmNlLWZyb250In0.i9neJGoP9EUnwFLxs6uSSB2sh6fXfc_kkVTeVhdSRxGWeA",
  "expires_in": 7200,
  "refresh_expires_in": 0,
  "token_type": "Bearer",
  "not-before-policy": 0,
  "scope": "profile email"
}
ℹ️
  • O access_token será sempre do tipo Bearer e sua validade padrão é de 2 horas.

Casos de erro:

Exemplo de mensagem de erro quando as credencias para autenticação estão inválidas.

️🚫

Status Code 401

{
  "error": "unauthorized_client",
  "error_description": "Invalid client or Invalid client credentials"
}

Exemplo de mensagem de erro quando a request não apresenta todos os parâmetros obrigatórios.

️🚫

Status Code 400

{
  "error": "unauthorized_client",
  "error_description": "Invalid client or Invalid client credentials"
}