andreroggeri / pynubank

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

Feature/flaskserver #458

Closed gus-skywalker closed 3 months ago

gus-skywalker commented 3 months ago

Objetivo: Este pull request introduz várias funcionalidades no projeto Flask para integração com a API do Nubank, incluindo autenticação, cache de dados e manipulação de certificados. As mudanças visam aprimorar a eficiência e a segurança no acesso às informações do Nubank.

Alterações Principais:

Classe CachedNubank: Implementada para fornecer uma instância única do cliente Nubank e cache de dados. Métodos adicionados para obter faturas, detalhes de faturas, extratos de cartão e saldo de cartão, com cache apropriado para evitar chamadas repetidas à API.

Autenticação e JWT: Configuração do Flask-JWT-Extended para gerenciar tokens de acesso. Rota /authenticate para autenticar usuários e gerar tokens de acesso.

Manipulação de Certificados: Implementada a função get_cert_path para buscar o caminho do certificado com segurança. Adicionadas rotas /request-code e /exchange-certs para solicitar códigos e trocar por certificados com base em sessões.

Endpoints da API Nubank: Rota /nubank-data/get-bills para recuperar faturas. Rota /nubank-data/bill-details para obter detalhes de uma fatura específica. Rota /nubank-data/card-statements para obter extratos de cartão. Rota /nubank-data/credit-card-balance para obter saldo do cartão de crédito.

Gerenciamento de Certificados: Funções adicionadas para gerar IDs aleatórios e salvar certificados no diretório especificado.

andreroggeri commented 3 months ago

Fala @gus-skywalker obrigado pela contribuição.

Eu não acho que implementar uma API faça parte do escopo dessa biblioteca. O objetivo dela é prover uma interface simples e genérica para se comunicar com a API do Nubank. Derivações especificas assim devem se tornar uma aplicação nova que consome o pynubank (Exemplos)

Por isso é recomendado abrir uma issue ou discussão antes de abrir PRs que introduzem mudanças significativas.

gus-skywalker commented 3 months ago

Olá @andreroggeri ! Obrigado pelo feedback. Eu realmente não sabia que tinha alguns exemplos como dependencia da biblioteca. Vou procurar abrir a issue.

Caso, conheça outras APIs de bancos, estou interessado em expandir o projeto para inclusão de outras.

Att.

andreroggeri commented 3 months ago

Fechando o PR conforme o que conversamos.