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)
Ambiente | expires_in |
---|---|
Homologação | 420 segundos |
Produção | 300 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.