Consentimento
O parceiro deverá disponibilizar ao correntista a tela de OAuth 2 para sua autenticação. Para isso é necessário realizar uma requisição GET no método /api-banking/auth/oauth/v2/authorize
, conforme passos:
-
Realizar uma requisição
Basic Auth
no endpoint acima com API Key e API Secret da aplicação; -
Informar a descrição code no campo
response_type
; -
Informar o escopo da aplicação no campo
scope
; -
O campo
state
é livre para identificação do cliente/usuário; -
Informar o endpoint utilizado para receber o código de autorização no campo
redirect_uri
.
Autenticação do correntista
O correntista do BS2, ao acessar a URL do consentimento com os parâmetros válidos apresentada pelo parceiro, será redirecionado para uma tela de login no ambiente do Banco BS2:
Após validação do usuário e senha do correntista, será solicitada a confirmação do consentimento com segundo fator de autenticação, token app ou token SMS:
Com o token validado, redirecionaremos para seu endpoint com o código de autorização.
O redirect_uri
deve ser GET e estar preparado para receber os seguintes parâmetros:
Nome | Localizado em | Obrigatório |
---|---|---|
code | query | Sim |
state | query | Sim |
Nota:
O parâmetro
code
é obrigatório para realizar a autenticação no próximo passo [Autenticação do parceiro na conta do correntista]
Autenticação do parceiro na conta do correntista
Para obter o access_token
e Refresh_token
a partir desse code
, deve ser feito o fluxo de authorization code, acessando o método POST /auth/oauth/v2/token
, conforme passos:
-
Realizar uma requisição
Basic Auth
no endpoint acima com API Key e API Secret da aplicação; -
Informar o valor
authorization_code
para o campogrant_type
; -
Informar o código de autorização recebido para o campo
code
; -
Informar o endpoint utilizado para receber o código de autorização para o campo
redirect_uri
.
Gerenciamento de Token
É necessário fazer a gestão do access_token e refresh_token dentro do sistema do parceiro.
O refresh_token possui um tempo de validade maior que o access_token, ou seja, mesmo se o access_token estiver expirado, o refresh_token possui 30 dias de validade.
Quando o token estiver próximo da validade, deve-se gerar um novo token usando um refresh_token. Para assim, receber um novo token válido pelo mesmo período. É importante frisar que a cada novo token gerado, um novo refresh_token também é gerado.
O campo expires_in representa a validade do token em segundos.
Importante:
- Caso perca o tempo de validade do refresh_token, será necessário refazer o fluxo de consentimento completo;
- Não há limite de requisições enquanto o token estiver válido;
- O token de acesso é necessário para todas as requisições em nossas APIs.
Refresh Token
-
Realizar uma requisição
Basic Auth
no endpoint abaixo comapikey
eapisecret
da aplicação; -
Informar o valor refresh_token para o campo
grant_type
; -
Informar o escopo da aplicação para o campo
scope
; -
Informar o valor do refresh_token recebido previamente para o campo
refresh_token
.
Para realizar um teste prático, acesse aqui: Access Token/RefreshToken
Updated 11 months ago