Grid402 - SDK Python Oficial
Biblioteca Python oficial para consumo dos servicos do ecossistema Grid402 e liquidacao autonoma de micropagamentos sob o protocolo HTTP 402 na rede Base.
Projetada especificamente para agentes autonomos de inteligencia artificial, frameworks como Coinbase AgentKit, LangChain, CrewAI e desenvolvedores que buscam APIs abertas sem contas, cadastros ou cartoes de credito.
Recursos Principais
- 11 Ferramentas Integradas: Indicadores macroeconomicos (Selic, CDI, IPCA), calculadora de dias uteis financeiros ANBIMA, feriados nacionais e bancarios ANBIMA, CNPJ da Receita Federal, CEP postal e IBGE, cotacoes Forex e Cripto spot, resolucao DNS, auditoria TLS e SSL, analise ASN e BGP e status do ecossistema.
- Zero Cadastro e Zero Friccao: Sem necessidade de chaves de API estaticas ou contratos mensais.
- Modo Sandbox Gratuito: Teste e homologue localmente sem custos informando
sandbox=True. - Integracao Nativa com IA: Compativel com Coinbase Developer Platform (CDP) AgentKit, LangChain e CrewAI.
- Validacao Estrita Pydantic: Schemas tipados e compativeis com PEP 561 (
py.typed). - Arquitetura Resiliente: Construido com a biblioteca padrao do Python para maxima leveza e portabilidade.
Instalacao
Instale o pacote diretamente do PyPI:
pip install grid402
Inicio Rapido
1. Consultas em Modo Sandbox (Sem Custo)
Ideal para testes locais, ambientes de integracao continua e desenvolvimento:
from grid402 import Grid402Client
# Inicializa o cliente apontando para o ambiente de testes gratuito
client = Grid402Client(sandbox=True)
# Consulta cadastral de Pessoa Juridica na Receita Federal
cnpj_data = client.get_cnpj("00.000.000/0001-91")
print("Razao Social:", cnpj_data.get("razao_social"))
# Resolucao de endereco postal e codigo IBGE
cep_data = client.get_cep("01310-100")
print("Logradouro:", cep_data.get("logradouro"), "-", cep_data.get("localidade"))
# Cotacoes fiduciarias oficiais
forex_data = client.get_forex()
print("USD para BRL:", forex_data.get("USD", {}).get("bid"))
2. Tratamento Estruturado de HTTP 402
Quando chamado sem comprovante de pagamento, o Grid402 retorna uma resposta estruturada contendo o desafio com pre-visualizacao parcial dos dados (teaser data):
from grid402 import Grid402Client, Grid402PaymentRequiredError
# Cliente com raise_for_payment ativado
client = Grid402Client(raise_for_payment=True)
try:
dados = client.get_cnpj("00000000000191")
except Grid402PaymentRequiredError as erro:
print("Desafio recebido:")
print("Valor exigido:", erro.price_usdc, erro.token)
print("Carteira recebedora:", erro.recipient)
print("Rede:", erro.network)
print("Dados parciais (amostra gratuita):", erro.preview_data)
3. Utilizacao com Coinbase AgentKit e Auto-Liquidacao
Agentes autonomos equipados com carteiras CDP na rede Base podem liquidar chamadas M2M (Machine-to-Machine) de forma transparente:
from grid402 import Grid402ActionProvider
# Provedor compativel com Coinbase AgentKit
provider = Grid402ActionProvider()
# Ao fornecer a instancia de carteira CDP do agente (wallet_provider),
# o provedor detecta o 402, transfere o USDC e repassa os dados completos
resultado = provider.query_cnpj("00000000000191", wallet_provider=meu_wallet_provider)
print("Dados completos:", resultado)
print("Comprovante on-chain:", resultado.get("_x402_settlement"))
4. Schemas Tipados Pydantic
Para fluxos de trabalho tipados e validacao antecipada:
from grid402 import CnpjInput, CepInput, DnsInput, SslInput, AsnInput, HolidaysInput, WorkdaysInput
# Validacao de entrada antes do envio
payload_cnpj = CnpjInput(cnpj="00.000.000/0001-91")
payload_cep = CepInput(code="01310100")
payload_dns = DnsInput(domain="base.org")
payload_holidays = HolidaysInput(year=2026)
payload_workdays = WorkdaysInput(start_date="2026-11-06", days=5)
5. Verificacao Criptografica de Prova de Autenticidade (Proof of Data)
Todas as respostas de dados pagas e em sandbox trazem uma prova matematica de oraculo (_oracle_proof) assinada via ECDSA secp256k1 pela carteira oficial do Grid402 (0xa592625adbceb8e025ac383f1a3fd8ebb6a63f90).
O SDK permite verificar matematicamente a integridade dos dados e a autenticidade do emissor em menos de 5 milissegundos sem chamadas de rede adicionais:
from grid402 import Grid402Client
client = Grid402Client(sandbox=True)
dados = client.get_workdays(start_date="2026-11-06", days=5)
# Validacao matematica local e instantanea
verificacao = client.verify_proof(dados)
if verificacao.valid:
print("Dados autenticos assinados pelo oraculo Grid402!")
print("Endereco do oraculo:", verificacao.oracle_address)
print("Carimbo temporal:", verificacao.timestamp)
else:
print("Falha na autenticidade dos dados:", verificacao.error)
Catalogo de Ferramentas
| Metodo | Descricao | Preco Base (USDC) |
|---|---|---|
get_summary() |
Resumo operacional consolidado de saude | Gratuito |
get_forex() |
Cotacoes cambiais oficiais de USD, EUR e GBP para BRL | 0.0050 |
get_crypto(symbol) |
Precos spot de BTC, ETH, SOL e USDC | 0.0050 |
get_dns(domain) |
Resolucao DNS com registros A, AAAA, MX, TXT, NS e CNAME | 0.0050 |
get_ssl(host) |
Inspecao e auditoria de certificado TLS e SSL na porta 443 | 0.0050 |
get_asn(ip) |
Inteligencia de roteamento BGP, bloco alocado e ASN | 0.0050 |
get_cep(code) |
Consulta de logradouro postal brasileiro e codigo IBGE | 0.0050 |
get_cnpj(cnpj) |
Dados cadastrais completos de PJ na Receita Federal | 0.0200 |
get_indicators() |
Indicadores macroeconomicos oficiais (Selic meta e diaria, CDI anual e IPCA) | 0.0050 |
get_holidays(year) |
Calendario oficial de feriados nacionais e bancarios ANBIMA | 0.0050 |
get_workdays(start_date?, end_date?, days?, date?) |
Calculadora de dias uteis financeiros e projecao de vencimentos ANBIMA | 0.0050 |
Licenca
Distribuido sob os termos da licenca MIT. Consulte o arquivo LICENSE para detalhes.
Metadata
Release files for grid402 2.5.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| grid402-2.5.1.tar.gz | 20.7 kB | Without provenance | Details for grid402-2.5.1.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| grid402-2.5.1-py3-none-any.whl | Python 3 | none | any | Details for grid402-2.5.1-py3-none-any.whl |
Total release size: 37.2 kB
Release files / grid402-2.5.1.tar.gz
| Download URL | grid402-2.5.1.tar.gz |
|---|---|
| Size | 20.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
280daf6cae27c5189807a7deee3232e2391d6d41dd68b1a7eb507be1f901f4eb
|
|
BLAKE2b-256 checksum How to use checksums |
847ce33ea815102688722f56386f9eb4c2d94e45e001cb7989f3cb0b352410b1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.7
|
Release files / grid402-2.5.1-py3-none-any.whl
| Download URL | grid402-2.5.1-py3-none-any.whl |
|---|---|
| Size | 16.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
e794d6b4059c2910f33edff11df6ebf29cb22e9ed7be6d39909d8b4e08a87409
|
|
BLAKE2b-256 checksum How to use checksums |
75317568d23dae95cce603aa98f8956811b69102a84d73575e1cca9a2a2db3f5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.7
|
Security for grid402 2.5.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.