Comunidade

Ask a Question
Back to All

Problema para consultar saldo

(edited)

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 .