andreroggeri / pynubank

Acesse seus extratos do Nubank pelo Python
MIT License
1.19k stars 180 forks source link

Erro 401 após gerar um novo certificado #379

Closed matheusgrossi closed 1 year ago

matheusgrossi commented 1 year ago

Depois que eu gerei um novo certificado eu estou problemas de autenticação na API:

nu = Nubank()
nu.authenticate_with_cert(cpf, password, certificate_path)
account_statements = nu.get_account_statements()

A mensagem que estou recebendo é a seguinte: The request made failed with HTTP status code 401

Gerei o certificado ainda hoje, meu CPF está no formato "123.456.789-10".

Recebi um E-mail do Nubank assim que gerei o certificado afirmando que algumas funções do dispositivo estariam desabilitadas, e que eu tinha que autorizar o dispositivo para desbloquea-las, mas não sei como fazer o mesmo no caso de autenticação pelo certificado.

andreroggeri commented 1 year ago

Envia o CPF sem formatação (removendo os pontos e hífen )

matheusgrossi commented 1 year ago

Tentei novamente sem formatação e obtive o mesmo erro! Já verifiquei minhas credenciais diversas vezes e garanto que estão corretas.

Acho interessante mencionar que estou usando a versão 2.2.1 do Pynubank, justamente com o sistema operacional macOS Ventura.

andreroggeri commented 1 year ago

A versão 2.2.1 é muito antiga, atualiza para a mais recente (2.21.1) e veja se o problema ainda ocorre.

Se ainda ocorrer, você pode tentar inspecionar o response para ver se ele trás mais alguma informação útil.

Ex:

try:
  nu.authenticate_with_cert(cpf, password, certificate_path)
except NuRequestException as e:
  print(e.response.text)
matheusgrossi commented 1 year ago

A versão 2.2.1 é muito antiga, atualiza para a mais recente (2.21.1) e veja se o problema ainda ocorre.

Se ainda ocorrer, você pode tentar inspecionar o response para ver se ele trás mais alguma informação útil.

Ex:

try:
  nu.authenticate_with_cert(cpf, password, certificate_path)
except NuRequestException as e:
  print(e.response.text)

Atualizei para a nova versão, coloque o Snippet do código mencionado acima e a saída foi a seguinte: {"error":"Unauthorized"}

andreroggeri commented 1 year ago

Não ajudou muito então hehe

Assumindo que cpf, password e certificate_path estejam corretos não consigo imaginar porque não funcionaria.

matheusgrossi commented 1 year ago

Peço perdão! Meu código estava com um Bug, que agora foi resolvido! Muito obrigado pela ajuda!