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.18.tar.gz (5.3 kB view details)

Uploaded Source

Built Distribution

solldex_api_client-0.1.18-py3-none-any.whl (5.4 kB view details)

Uploaded Python 3

File details

Details for the file solldex-api-client-0.1.18.tar.gz.

File metadata

  • Download URL: solldex-api-client-0.1.18.tar.gz
  • Upload date:
  • Size: 5.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.8.10

File hashes

Hashes for solldex-api-client-0.1.18.tar.gz
Algorithm Hash digest
SHA256 a32473c7dd2877564a06d30da77985c146ae74714d4bf2a02f923687e16292ce
MD5 12c33a59b143dba16bd1696b498564e4
BLAKE2b-256 7d807b87dc013a0b31fafcd8be15da529abb1eb1c3435252a2afc038d0dc775e

See more details on using hashes here.

File details

Details for the file solldex_api_client-0.1.18-py3-none-any.whl.

File metadata

File hashes

Hashes for solldex_api_client-0.1.18-py3-none-any.whl
Algorithm Hash digest
SHA256 50c427bcac07407161f17b892a1aa6aa82687027f9f6bae2bbd78775b8f7e5e7
MD5 156794ff4bd665d4c4d218bed48e5273
BLAKE2b-256 91a7de02f5c5c663ff15cbbb77be2124f5e91826c8092543393b0b9107c9ae47

See more details on using hashes here.

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