Client credentials
O fluxo de client credentials é um dos fluxos de autenticação e autorização disponíveis no BTG Id.
Este fluxo se diferencia do fluxo de Authorization Code em sua complexidade e no fato de que este pode ser realizado completamente no backend.
Geração do token
Precisaremos seguir a especificação da requisição disponível em Client Credentials. Começaremos por separar os dados que utilizaremos e depois construiremos a requisição
Dados
- Separamos o endpoint em que iremos realizar a requisição:
- https://id.btgpactual.com/oauth2/token para produção
- https://id.sandbox.btgpactual.com/oauth2/token para sandbox
- Buscamos nosso clientId e client secret conforme mostrado aqui
- Encodamos em base64 uma string que siga o formato:
- client_id:client_secret
- Separamos os escopos que desejamos enviar. Consulte a documentação do produto para verificar se este fluxo o atende.
Requisição
-
Criaremos uma requisição
POST
para o endpoint referente ao ambiente que estamos integrando -
Enviaremos nesta requisição dois headers:
- Um deles com nossas credenciais encodadas conforme orientado em Dados: "Authorization: Basic <client_id:client_secret>"
- Um deles com content-type: application/x-www-form-urlencoded
-
Enviaremos no form:
- Um campo
grant_type
com o valorclient_credentials
- Um campo
scope
com o valor dos escopos dos serviços que deseja integrar, separados por espaço simples
- Um campo
Response
Feito corretamente, esta requisição nos devolverá um access token apto a operar os escopos pedidos no campo scope
Updated 7 months ago