Comunidade
Problema para consultar saldo
Copiei a pegunta de outro post pq o meu Problema é o mesmo
"Pessoal estou tento dificuldades de acessar a API, os passos que dei foram:
Cadastrei o app no Portal do Desenvolvedor, e ativei o Sandbox.
No meu browser abri a url https://id.sandbox.btgpactual.com/oauth2/authorize?client_id=client_id&response_type=code&redirect_uri=redirect_uri&scope=empresas.btgpactual.com/bank-slips empresas.btgpactual.com/accounts.readonly.
Paguei a url de resposta:
https://redirect_uri/api/btg?code=authorization_code&iss=https%3A%2F%2Fid.sandbox.btgpactual.com de onde tirei o code
Agora peguei o token e o token refresh
headers = {
"Accept": "application/json"
"Authorization": f"Basic {base64_code}"
}
url = 'https://id.sandbox.btgpactual.com/oauth2/token'
payload = f"code={code}&redirect_uri=https://adm.pidlabs.com/api/btg&grant_type=authorization_code"
response = requests.post(url, timeout=3, data=payload, headers=headers)
Recebo a resposta:
{'access_token': 'token_jwt', 'empresas.btgpactual.com/accounts': '30306294000145', 'scope': 'empresas.btgpactual.com/accounts.readonly empresas.btgpactual.com/bank-slips', 'session_id': 'session_id', 'token_type': 'Bearer', 'expires_in': 86400, 'empresas.btgpactual.com/bank-slips': 'tax_id'}
Até aqui tudo bem, agora começa os problemas:
Quando vou consultar o saldo da conta:
url = f"https://api.sandbox.empresas.btgpactual.com/v1/accounts/{self.client_id}/balances"
headers = {
"accept": "application/json",
"authorization": "Bearer token_jwt"
}
response = requests.get(url, headers=headers)
Aqui me da erro ->
{
"fault": {
"faultstring": "Invalid token: policy(VerifyJWT)",
"detail": {
"errorcode": "steps.jwt.InvalidToken"
}
}
}
Não peguei onde esta o erro.
Poderia me dar uma ajuda?"
Esta é a requisição que estou fazendo pelo postman.
curl --location 'https://api.sandbox.empresas.btgpactual.com/v1/accounts?scope=openid'
--header 'Authorization: Bearer fqvzjHSY_ofvXGFFkOwk1wRYet9MIBaJeql7ELk9pZ8'
--header 'Cookie: _[cookie]'
no Bearer Token eu tentei com o access_token, refresh_token, session_id e com o code e em todos os casos a resposta foi a mesma
{
"fault": {
"faultstring": "Invalid token: policy(VerifyJWT)",
"detail": {
"errorcode": "steps.jwt.InvalidToken"
}
}
}
caso precisem fazer teste este são os dados de access_token gerados agora !!!
{
"access_token": "[token]",
"refresh_token": "[token]",
"scope": "openid",
"id_token": "[token]",
"session_id": "dd6f5916-fc81-436f-9df6-21c23ee40969",
"token_type": "Bearer",
"expires_in": 86400
}
desde ja agradeço .