Skip to main content

CourtIQ Python SDK

SDK Python oficial para a API do CourtIQ — consulta processual automatizada.

Instalação

pip install courtiq

Quick Start

from courtiq import CourtIQ

client = CourtIQ(api_key="sua-api-key")

# Buscar processo por número
processo = client.processos.buscar(numero="0001234-56.2024.8.26.0100")
print(processo.partes)

# Consultar múltiplos processos
resultados = client.processos.buscar_lote(
    numeros=["0001234-56.2024.8.26.0100", "0005678-90.2024.8.26.0100"]
)

# Monitorar processo (receber webhooks quando houver movimentação)
monitor = client.monitoramentos.criar(
    numero_processo="0001234-56.2024.8.26.0100",
    webhook_url="https://meu-servidor.com/webhook",
)

Configuração

from courtiq import CourtIQ

# Configuração completa
client = CourtIQ(
    api_key="sua-api-key",
    environment="production",  # "production" ou "sandbox"
    timeout=30,                # timeout em segundos
    max_retries=3,             # retentativas automáticas
    base_url=None,             # URL customizada (self-hosted)
)

Recursos

Processos

# Buscar por número
processo = client.processos.buscar(numero="0001234-56.2024.8.26.0100")

# Buscar com filtros
processos = client.processos.listar(
    tribunal="TJSP",
    parte="João Silva",
    data_inicio="2024-01-01",
    data_fim="2024-12-31",
    pagina=1,
    limite=20,
)

# Movimentações
movs = client.processos.movimentacoes(numero="0001234-56.2024.8.26.0100")

Monitoramentos

# Criar monitoramento
monitor = client.monitoramentos.criar(
    numero_processo="0001234-56.2024.8.26.0100",
    webhook_url="https://meu-servidor.com/webhook",
    eventos=["movimentacao", "publicacao"],
)

# Listar monitoramentos
monitores = client.monitoramentos.listar()

# Remover monitoramento
client.monitoramentos.remover(monitor_id=123)

Webhooks

# Validar assinatura de webhook
from courtiq.webhooks import verificar_assinatura

is_valid = verificar_assinatura(
    payload=request.body,
    signature=request.headers["X-CourtIQ-Signature"],
    secret="seu-webhook-secret",
)

Tratamento de Erros

from courtiq.exceptions import (
    CourtIQError,
    AuthenticationError,
    RateLimitError,
    NotFoundError,
    ValidationError,
)

try:
    processo = client.processos.buscar(numero="...")
except AuthenticationError:
    print("API key inválida ou expirada")
except RateLimitError as e:
    print(f"Rate limit excedido. Tente novamente em {e.retry_after}s")
except NotFoundError:
    print("Processo não encontrado")
except CourtIQError as e:
    print(f"Erro: {e.message} (código: {e.code})")

Ambientes

Ambiente Base URL Descrição
production https://api.courtiq.com.br/v1 Dados reais
sandbox https://sandbox.courtiq.com.br/v1 Dados mock para teste

Licença

MIT

Metadata

Release files for courtiq 0.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for courtiq 0.1.1
File Size Uploaded Provenance
courtiq-0.1.1.tar.gz 7.0 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for courtiq 0.1.1
File Interpreter ABI Platform
courtiq-0.1.1-py3-none-any.whl Python 3 none any Details

Total release size: 16.9 kB

Release files / courtiq-0.1.1.tar.gz

Download URL courtiq-0.1.1.tar.gz
Size 7.0 kB
Tags Source
SHA-256 checksum
How to use checksums
80ffe53647520d9c14d8a54829d15f083476b9cf64764a611a8c834c24f01933
BLAKE2b-256 checksum
How to use checksums
1439a74bdc1ff02372a3a92496b5c077cc340c314afd9a0d08019398c07f48c9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.3

Release files / courtiq-0.1.1-py3-none-any.whl

Download URL courtiq-0.1.1-py3-none-any.whl
Size 9.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
b60f960e00d846d3718955a6ae1c3f51aa5de3c1cf2b0a9ab584d1a16374bfe3
BLAKE2b-256 checksum
How to use checksums
f801cfce1d178ca190517607177f6d5edf1e91ca08f36c09e8e83a264fc7e26b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.3

Security for courtiq 0.1.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.1.1 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page