Skip to main content

SDK oficial para a API cnpj/ob — consulta CNPJ, sócios, CNAE e mais

Project description

cnpjob

SDK oficial Python para a API cnpj/ob — consulte qualquer CNPJ diretamente da Receita Federal com uma linha de código.

Instalação

pip install cnpjob

Início rápido

from cnpjob import CNPJob

client = CNPJob('SUA_API_KEY')

empresa = client.lookup('12.345.678/0001-00')
print(empresa['razao_social'])  # EMPRESA EXEMPLO LTDA

Obtenha sua API key gratuita em app.cnpjob.com.br


Métodos

lookup(cnpj)

Consulta completa de uma empresa pelo CNPJ. Aceita qualquer formato (com ou sem máscara).

empresa = client.lookup('12.345.678/0001-00')

print(empresa['razao_social'])        # EMPRESA EXEMPLO LTDA
print(empresa['nome_fantasia'])       # Empresa Exemplo
print(empresa['situacao_cadastral'])  # ATIVA
print(empresa['data_abertura'])       # 2010-03-15
print(empresa['endereco']['municipio'])  # São Paulo
print(empresa['socios'])             # [{'nome': ..., 'qualificacao': ...}]

batch(cnpjs)

Consulta múltiplos CNPJs em uma única requisição (até 10 por chamada).

resultado = client.batch([
    '12345678000100',
    '33000167000101',
    '60701190000104',
])

for empresa in resultado['results']:
    print(empresa['cnpj'], empresa['razao_social'])

validate(cnpj)

Valida o formato e os dígitos verificadores de um CNPJ. Não consome cota.

result = client.validate('12.345.678/0001-00')
print(result['valid'])  # True ou False

Resposta completa

{
    "cnpj": "12345678000100",
    "razao_social": "EMPRESA EXEMPLO LTDA",
    "nome_fantasia": "Empresa Exemplo",
    "situacao_cadastral": "ATIVA",
    "data_abertura": "2010-03-15",
    "natureza_juridica": "Sociedade Empresária Limitada",
    "porte": "MICRO EMPRESA",
    "capital_social": 10000.00,
    "endereco": {
        "logradouro": "Rua das Flores",
        "numero": "100",
        "complemento": "Sala 1",
        "bairro": "Centro",
        "municipio": "São Paulo",
        "uf": "SP",
        "cep": "01310-100"
    },
    "atividade_principal": {
        "codigo": "6201-5/01",
        "descricao": "Desenvolvimento de programas de computador sob encomenda"
    },
    "socios": [
        {
            "nome": "JOÃO DA SILVA",
            "qualificacao": "Sócio-Administrador",
            "pais_origem": "Brasil"
        }
    ]
}

Tratamento de erros

from cnpjob import CNPJob

client = CNPJob('SUA_API_KEY')

try:
    empresa = client.lookup('00000000000000')
except Exception as e:
    print(e)
    # "CNPJ não encontrado"      → HTTP 404
    # "Limite de requisições"    → HTTP 429 (upgrade de plano)
    # "Chave de API inválida"    → HTTP 401
Código Causa
401 API key inválida ou ausente
403 IP bloqueado pela allowlist
404 CNPJ não encontrado
429 Limite de requisições atingido

Uso com Django / FastAPI

# Django view
from cnpjob import CNPJob
from django.http import JsonResponse

client = CNPJob(settings.CNPJOB_API_KEY)

def consulta_cnpj(request, cnpj):
    empresa = client.lookup(cnpj)
    return JsonResponse(empresa)
# FastAPI endpoint
from cnpjob import CNPJob
from fastapi import FastAPI

app = FastAPI()
client = CNPJob('SUA_API_KEY')

@app.get('/empresa/{cnpj}')
def get_empresa(cnpj: str):
    return client.lookup(cnpj)

Opções avançadas

client = CNPJob(
    api_key='SUA_API_KEY',
    base_url='https://api.cnpjob.com.br/api',  # padrão
)

Compatibilidade

  • Python 3.7+
  • Django, Flask, FastAPI
  • Scripts avulsos e notebooks Jupyter

Dependência única: requests


Planos

Plano Req/dia Req/min Preço
Free 10 2 Grátis
Pro 10.000 60 R$ 99/mês
Business 100.000 300 R$ 299/mês

Ver todos os planos →


Links

Licença

MIT

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

cnpjob-1.0.0.tar.gz (4.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

cnpjob-1.0.0-py3-none-any.whl (3.7 kB view details)

Uploaded Python 3

File details

Details for the file cnpjob-1.0.0.tar.gz.

File metadata

  • Download URL: cnpjob-1.0.0.tar.gz
  • Upload date:
  • Size: 4.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for cnpjob-1.0.0.tar.gz
Algorithm Hash digest
SHA256 b155ef34c4a6b6db08cadc7a82241047951f36aa6664808a31bef5cc90bfd328
MD5 75540b49c166dfd895078a73ec4daad0
BLAKE2b-256 a031aafee6e0b3c4fe7e9085f58cb365362bdf508925e9a9d9fa2ba8a20a2b46

See more details on using hashes here.

File details

Details for the file cnpjob-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: cnpjob-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 3.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for cnpjob-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 69518ac2a107995eca80048a7c4d19cd1e7c3c2123d84521f6e9a0cb2ebff5b6
MD5 dccbb56ee2e99edb8b2bf172f9e3bd35
BLAKE2b-256 2f4e05d3f8bc3d562d6b416210d3bb685895739009a7b3c87c976231ac579663

See more details on using hashes here.

Supported by

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