Skip to main content

Python client for the Solldex API

Project description

SolldexAPI Python Client

This repository contains a Python client for interacting with the Solldex API. The client supports making requests to the following endpoints:

  • Recepcionar Lote RPS
  • Consultar Lote
  • Consultar RPS
  • Consultar NFSe
  • Cancelar NFSe
  • URL Visualização

Features

  • Simple and intuitive interface for making requests to the Solldex API.
  • Built-in retry logic using the Tenacity library, with up to 3 retry attempts and a 2 second wait between each attempt.
  • Error logging for better debugging and maintenance.

Installation

You can install the SolldexAPI Python Client via pip:

pip install solldex-api-client

Usage

To use the SolldexAPI client, you'll need to import the SolldexAPI class and initialize it with your API token.

from solldex_api import SolldexAPI
from solldex_api.solldex_models import RecepcionarLoteParams, ConsultaLoteParams, ConsultaRpsParams

api = SolldexAPI('your-token-here')

Once you've done that, you can make requests to the Solldex API using the recepcionar_lote, consultar_lote, and consultar_rps and more methods:

from solldex_api.solldex_models import Prestador, Tomador, Servico, Endereco

# Define data for Recepcionar Lote RPS endpoint
prestador_data = Prestador(cnpj='string', inscricao_municipal='number', codigo_municipio='number')
endereco_data = Endereco(logradouro='string', numero='number', bairro='string', uf='string', cep='number')
tomador_data = Tomador(cpf_cnpj='number', endereco=endereco_data)
servico_data = Servico(aliquota='number', discriminacao='string', iss_retido=True, item_lista_servico='number', codigo_tributario_municipio='number', valor_servicos='number')

request_data = RecepcionarLoteParams(data_emissao='date', prestador=prestador_data, tomador=tomador_data, servico=servico_data)
# Make a request to the Recepcionar Lote RPS endpoint
response = api.recepcionar_lote(request_data)

# Define data for Consultar Lote endpoint
request_data = ConsultaLoteParams(protocolo='number', cnpj='number', inscricao_municipal='number', codigo_municipio='number')
# Make a request to the Consultar Lote endpoint
response = api.consultar_lote(request_data)

# Define data for Consultar RPS endpoint
request_data = ConsultaRpsParams(numero='number', serie='number', tipo='number', cnpj='number', inscricao_municipal='number', codigo_municipio='number')
# Make a request to the Consultar RPS endpoint
response = api.consultar_rps(request_data)

Continue in a similar fashion for the rest of the available methods, such as consultar_nfse, cancela_nfse, and consulta_url_nfse, providing the correct data structure to the method.

from solldex_api.solldex_models import ConsultaNfseParams, Prestador, Tomador, Endereco

# Define data for Consultar NFS-e endpoint
prestador_data = Prestador(cnpj='string', inscricao_municipal='number', codigo_municipio='number')
endereco_data = Endereco(logradouro='string', numero='number', bairro='string', uf='string', cep='number')
tomador_data = Tomador(cpf_cnpj='number', endereco=endereco_data)

request_data = ConsultaNfseParams(numero='number', codigo_municipio='number', data_inicial='date', data_final='date', prestador=prestador_data, tomador=tomador_data)
# Make a request to the Consultar NFS-e endpoint
response = api.consultar_nfse(request_data)

Remember to replace 'number', 'string', and 'date' with actual values before executing the requests.

Errors during the request will be logged, and the methods will automatically retry the request up to

Error Handling

The SolldexAPI client uses the Tenacity library to provide built-in retry logic for requests. If a request fails, the client will automatically retry it up to 3 times, with a 2 second wait between each attempt.

If a request continues to fail after 3 attempts, the client will log the error and raise a requests.RequestException exception.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

solldex-api-client-0.1.5.tar.gz (5.1 kB view hashes)

Uploaded Source

Built Distribution

solldex_api_client-0.1.5-py3-none-any.whl (5.2 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page