API REST

Consulte dados de empresas brasileiras via JSON/HTTPS. Todas as rotas usam GET e retornam JSON.

Base URL

https://basecnpj.app/api/v1/

Autenticação

Rotas protegidas exigem token Bearer no header Authorization.

Authorization: Bearer SEU_TOKEN

Gere sua chave em Minha conta → API Keys (requer plano Pro ou Business).

Limites por plano

PlanoConsultas/dia (site)Requisições/dia (API)Preço
Free10R$ 0
ProIlimitadas5.000R$ 49/mês
BusinessIlimitadasIlimitadasSob consulta

Formato de resposta

Sucesso

{
  "ok": true,
  "data": { ... }
}

Erro

{
  "ok": false,
  "error": {
    "code": "not_found",
    "message": "Empresa não encontrada."
  }
}

GET Público Status

GET /api/v1/?route=status

Resposta

{
  "ok": true,
  "data": {
    "status": "ok",
    "version": "1.0.0",
    "database": "up",
    "counts": {
      "empresas": 67482931
    }
  }
}
Postman: GET https://basecnpj.app/api/v1/?route=status — sem headers adicionais

GET Bearer Busca

GET /api/v1/?route=busca&q=TERMO&page=1&per_page=15

Parâmetros

ParamTipoObrig.Descrição
qstringSimTermo de busca (razão social ou CNPJ)
pageintNãoPágina (default: 1)
per_pageintNãoItens por página (1-50, default: 15)

Resposta

{
  "ok": true,
  "data": {
    "query": "banco do brasil",
    "page": 1,
    "per_page": 15,
    "total": 342,
    "total_pages": 23,
    "items": [
      {
        "cnpj_basico": "00000000",
        "cnpj_formatado": "00.000.000/0001-91",
        "razao_social": "BANCO DO BRASIL SA",
        "porte_codigo": "05",
        "porte_descricao": "Demais",
        "uf": "DF",
        "situacao_cadastral": "02",
        "situacao_descricao": "Ativa",
        "ativa": true
      }
    ]
  }
}
Postman: GET https://basecnpj.app/api/v1/?route=busca&q=banco+do+brasil
Header: Authorization: Bearer SEU_TOKEN

GET Público Detalhe do CNPJ

GET /api/v1/?route=cnpj&cnpj=XXXXXXXX

Parâmetros

ParamTipoObrig.Descrição
cnpjstringSimCNPJ base (8 dígitos) ou completo (14 dígitos)

Resposta (resumida)

{
  "ok": true,
  "data": {
    "cnpj_basico": "00000000",
    "cnpj_completo_formatado": "00.000.000/0001-91",
    "razao_social": "BANCO DO BRASIL SA",
    "capital_social": 120000000.00,
    "porte_descricao": "Demais",
    "natureza_juridica_descricao": "Sociedade de Economia Mista",
    "regime_tributario_texto": "Lucro real",
    "simples": { "opcao_simples": false, "opcao_mei": false },
    "estabelecimento_matriz": {
      "nome_fantasia": "BANCO DO BRASIL",
      "situacao_descricao": "Ativa",
      "email": "contato@bb.com.br",
      "logradouro": "SBS QUADRA 1",
      "uf": "DF",
      "municipio": "BRASILIA"
    },
    "telefones": [
      { "tipo": "comercial", "ddd": "61", "numero": "34939000" }
    ],
    "socios": [
      {
        "nome_razao": "FULANO DE TAL",
        "tipo_socio": "1",
        "qualificacao_descricao": "Diretor"
      }
    ],
    "estabelecimentos": [ ... ],
    "cnaes": [ ... ]
  }
}
Postman: GET https://basecnpj.app/api/v1/?route=cnpj&cnpj=00000000 — sem headers adicionais

GET Bearer Sugestão (Autocomplete)

GET /api/v1/?route=sugestao&q=ME

Parâmetros

ParamTipoObrig.Descrição
qstringSimTermo de busca (mín. 2 caracteres)

Resposta

{
  "ok": true,
  "data": {
    "items": [
      {
        "cnpj_basico": "19707600",
        "cnpj_formatado": "19.707.600/0001-00",
        "razao_social": "METTRIC DATA TECHNOLOGY LTDA",
        "porte_codigo": "01",
        "ativa": true
      }
    ]
  }
}
Postman: GET https://basecnpj.app/api/v1/?route=sugestao&q=mettric
Header: Authorization: Bearer SEU_TOKEN

Códigos de erro

HTTPCódigoDescrição
400missing_q / invalid_cnpjParâmetros inválidos ou ausentes
403forbiddenToken inválido ou sem permissão
404not_found / unknown_routeEmpresa ou rota não encontrada
405method_not_allowedUse GET (POST/PUT não suportados)
500server_errorErro interno no servidor

Testando no Postman

Configure uma variável de ambiente no Postman:

VariávelValor
base_urlhttps://basecnpj.app/api/v1
api_tokenSua chave gerada em API Keys

Exemplos prontos

TesteMétodoURLAuth
Health check GET {{base_url}}/?route=status Nenhuma
Buscar empresa GET {{base_url}}/?route=busca&q=petrobras Bearer {{api_token}}
Detalhe CNPJ GET {{base_url}}/?route=cnpj&cnpj=33592510 Nenhuma
Autocomplete GET {{base_url}}/?route=sugestao&q=nubank Bearer {{api_token}}

Curl de teste rápido

curl -s "https://basecnpj.app/api/v1/?route=status" | python3 -m json.tool