Autenticação - Gerar Access Token

Autenticação

  • A autenticação das APIs Pix Direto Bs2 seguem o fluxo de autenticação OAuth 2.0 Client Credentials.

  • É necessário autenticar usando o clientId (API Key) e o secretKey (API Secret) obtidos através da do API Banking na plataforma Bs2 Empresas. (Consulte detalhes sobre a obtenção das chaves de API em Criação das chaves API)

  • Uma autenticação bem-sucedida irá gerar o access_token (token de acesso), necessário para realização das requisições API Pix Direto Bs2.

Gerenciamento de Token

O access_token possui tempo para expiração. Ao gerar um novo token, a validade será apresentada no campo expires_in (em segundos)

Ambienteexpires_in
Homologação420 segundos
Produção300 segundos

Para uma operação saudável, é fundamental implementar a gestão do access_token utilizado pela sua aplicação, garantindo a validade do access_token utilizado nas requisições realizadas.

Token de Autenticação

Para usar a API é necessário obter o token Bearer de autenticação. Para e emissão do token de acesso reproduza os seguintes passos:

1.1 Preparar uma requisição Basic Auth com método HTTP POST no endpoint /auth/oauth/v2/token

1.2 Definir o valor client_credentials para a chave grant_type (--data-urlencode)

1.3 Definir as permissões de acesso desejados, declarando o valor para da chave scope, de acordo com os escopos gerados na Criação das chaves API(--data-urlencode) [Vide tabela Permissões abaixo]

1.4 Inserir autorização no Header Authorization ('Basic '+ encode base64 do clientId and secretKey separados por dois pontos)

POST /auth/oauth/v2/token

Exemplo - REQUEST

curl --location --request POST 'https://example.bancobonsucesso.com.br/auth/oauth/v2/token' \  
--header 'Authorization: Basic bDdkNWQ3OTg1ZDMxMTE0Y2NjYTgzMjlmZWVkZDQ3N2E0NTpmNjBjYzVjMzIxNDA0Y2UyOWQ4Mjg5NGVmNmEzZWI1Ng==' \  
--header 'Content-Type: application/x-www-form-urlencoded' \  
--data-urlencode 'grant_type=client_credentials' \  
--data-urlencode 'scope=cob.write cob.read dict.write dict.read webhook.read webhook.write pix.read pix.write'  

Exemplo - RESPONSE

{  
"access_token": "36ee37ec-a475-4068-8f6e-e08dd2b8880d",  
"token_type": "Bearer",  
"expires_in": 420,  
"scope": "cob.write cob.read dict.write dict.read webhook.read webhook.write pix.read pix.write"  
}  

Pontos Importantes

  • O campo expires_in apresenta a validade do token em segundos. Enquanto o token estiver válido, este token poderá ser utilizado para a realização das requisições.

  • Quando o token estiver próximo da validade, deve-se gerar um novo token, para assim, receber um novo token valido, garantindo a gestão do token e fluxo das requisições.

  • Não há limite de requisições por token.

Language
Click Try It! to start a request and see the response here!