Autorização e autenticação
As etapas a seguir o ajudarão a iniciar sua jornada para integração com o Genesis.
Autorização
Antes de realizar qualquer integração, é necessário obter as suas credenciais, clientId e secret, para gerar um token de acesso, que valida suas solicitações e protege os dados trafegados.
Onde eu consigo as minhas credenciais?
As credenciais serão enviadas pela NDD, contendo as seguintes informações:
clientIdsecretscope
| Escopo | Descrição |
|---|---|
| api://Genesis/.default | API que permite enviar a Viagem e cadastro de Prestador. |
Obter o token de acesso
O token de acesso é uma string que contém as credenciais e permissões para serem usadas para criar a viagem e cadastro de Prestador.)
Com o clientId, secret e scope utilize uma ferramenta para chamadas REST com as informações abaixo:
- Em método selecione
POST - Em URL digite
https://login.microsoftonline.com/'tenant_id'/oauth2/v2.0/token- Alterar o valor de 'tenant_id' pelo valor fornecido. - No cabeçalho selecione
Content-Type: application/json - No corpo da requisição envie a informação do
clientId,secret,scopeegrant_type
O grant_type deve ser enviado com o valor client_credentials fixo.
Exemplo de requisição
- Método:
POST - URL:
https://login.microsoftonline.com/'tenant_id'/oauth2/v2.0/token
Cabeçalhos
Content-Type: application/json
Corpo
{
"clientId": "abc123456789xyz",
"secret": "shhItsASecretKey09876",
"scope": "api://Genesis/.default",
"grant_type": "client_credentials"
}
O token de acesso será gerado contendo estas informações:
token_type: Tipo do Tokenexpires_in: Tempo de expiração do token em minutosext_expires_in: Tempo de expiração do token em minutosaccess_token: Tempo de expiração do token em minutos
O token deve ser renovado após a sua expiração, seguindo o tópico Obter o token de acesso.
{
"token_type": "Bearer",
"expires_in": 3599,
"ext_expires_in": 3599,
"access_token": "eyJ0eXAiOiJKV1QiLCJhbGhDSDJYRSJ9.eyJhdWQipYXQim5iZiI6MMSwiZXhwIjoxjQ1owdm9oMXZTSkxaYwTm4wVXd2T1UzWFhueF2MyMXoifQ.Iti-OoOkDruto2-TtOTcWdky78QWwOIlHjYbbx1F7apSg"
}
Agora é possível utilizar todos os recursos da API do Genesis Frete, enviando o token como parte do cabeçalho Authorization nas próximas requisições.
Authorization: Bearer {accessToken}