Obter Tokens de Acesso

Para acessar os recursos de um usuário com o prévio consentimento dele pelo Connect você precisará do código de autorização dele. Do passo anterior, lembre-se de que enviamos esse código ou pela URL de callback ou pelo listener de evento.


Troca do Código de Autorização por Tokens


O código de autorização é válido por 60 minutos e isso significa que você tem apenas 60 minutos para pedir autorização para nossa API em nome do usuário usando esse código. Envie um POST request para https://kasbah.guiabolso.com.br para a rota /partner/events/

COPIAR
{
"name": "oauth:tokens:exchange",
"version": 1,
"id": UUID,
"flowId": UUID,
"payload": {
"code": AUTH_CODE
},
"identity": {
"clientId": CLIENT_ID
},
"auth": {
"clientSecret": CLIENT_SECRET
},
"metadata": {}
}
CampoDescrição
idÉ um identificador único, pode ser um UUID gerado de forma aleatória, que identifica esse evento específico. Você pode passar qualquer identificador aqui contanto que ele seja único e não seja sensível.
flowIdÉ um identificador único, pode ser um UUID gerado de forma aleatória. Diz respeito a como o Guiabolso rastreia as requisições dentro da sua plataforma, você pode passar qualquer identificador aqui contanto que ele seja único e não seja sensível.
codeCódigo de autorização do usuário recebido via callback ou event listener e passado aqui em formato string
clientIdID da sua chave de API que fornecemos pra você
clientSecretSecret da sua chave de API que fornecemos pra você

Exemplo de uma resposta bem sucedida, note os dois tokens retornados dentro de payload.

COPIAR
{
"name": "oauth:tokens:exchange:response",
"version": 1,
"id": UUID,
"flowId": UUID,
"auth": {},
"identity": {},
"payload": {
"accessToken": ACCESS_TOKEN,
"refreshToken": REFRESH_TOKEN
},
"metadata": {}
}

E se o Token de Acesso tiver Expirado?


O token de acesso (i.e., accessToken) tem a expiração de apenas 30 minutos enquanto que o token de atualização (i.e., refreshToken) tem expiração de 12 meses. Isso quer dizer que se o token de acesso expirar você pode gerar outro token contanto que tenha o token de atualização. Para realizar a renovação do token de acesso, envie um POST request para https://kasbah.guiabolso.com.br para a rota /partner/events/

COPIAR
{
"name": "oauth:refresh:token:exchange",
"version": 1,
"id": UUID,
"flowId": UUID,
"payload": {
"refreshToken": REFRESH_TOKEN
},
"identity": {
"clientId": CLIENT_ID
},
"auth": {
"clientSecret": CLIENT_SECRET
},
"metadata": {}
}

Exemplo de uma resposta bem sucedida, note que o novo token é retornado dentro de payload.

COPIAR
{
"name": "oauth:refresh:token:exchange:response",
"version": 1,
"id": UUID,
"flowId": UUID,
"payload": {
"accessToken": ACCESS_TOKEN
},
"identity": {},
"auth": {},
"metadata": {}
}

E o Middleware como ajuda?


Nós criamos um Middleware pra ajudar na integração e fazer o mapeamento dos tokens pra você, se você quiser saber mais detalhes sobre os benefícios de usar o Connector basta seguir e ler as próximas seções. Mas note que o Middleware deve ser instalado na sua infraestrutura de Cloud (hoje suportamos tanto a AWS quanto o GCP).

Envie um POST request para o Connector para a rota /partner/events/ passando o código de autorização e o próprio Connector já vai gerenciar pra você se o token de acesso tiver expirado.

COPIAR
{
"name": "authorization:code",
"version": 1,
"id": UUID,
"flowId": UUID,
"payload": {
"authorizationCode": AUTH_CODE
},
"identity": {
"userId": USER_ID
},
"metadata": {},
"auth": {}
}
CampoDescrição
idÉ um identificador único, pode ser um UUID gerado de forma aleatória, que identifica esse evento específico. Você pode passar qualquer identificador aqui contanto que ele seja único e não seja sensível.
flowIdÉ um identificador único, pode ser um UUID gerado de forma aleatória. Diz respeito a como o Guiabolso rastreia as requisições dentro da sua plataforma, você pode passar qualquer identificador aqui contanto que ele seja único e não seja sensível.
authorizationCodeCódigo de autorização do usuário recebido via callback ou event listener e passado aqui em formato string
userIdID do seu usuário na sua plataforma em formato string

Note que no Connector é necessário informar um ID de usuário da sua plataforma, e o próprio Connector já vai gerenciar pra você os mapeamentos. Ele também já terá configurado o seu acesso e suas chaves de API de maneira segura e criptografada, e portanto você não precisar se preocupar com esses dados sendo trafegados dentro da sua infraestrutura de maneira indevida.

Exemplo de uma resposta bem sucedida, note que os tokens não foram retornados na resposta porque o Connector os armazena num banco de dados e gerencia toda a troca de tokens e atualização dos tokens expirados para você.

COPIAR
{
"name": "authorization:code:response",
"version": 1,
"id": UUID,
"flowId": UUID,
"payload": {},
"identity": {},
"auth": {},
"metadata": {}
}
Anterior
1. Abrir o Connect
Próximo
3. Buscar Dados do Usuário

© GuiaBolso Finanças Correspondente Bancário e Serviços LTDA 2020

O Guiabolso Connect utiliza cookies e tecnologias similares, como pixels e tags, para oferecer a melhor experiência para o usuário. Ao utilizar nossos serviços, você concorda com essa utilização. Mais detalhes no item 5 da nossa Política de Privacidade