CPFHub.io

Consulta de CNPJ

Envie o CNPJ e receba os dados cadastrais da empresa: razão social, nome fantasia, situação cadastral, endereço, CNAE, porte, Simples Nacional/MEI e quadro de sócios (QSA). Custa 1 crédito por CNPJ encontrado, como a Consulta Simples de CPF.

Usando Cursor, Lovable, v0 ou outra IA? Copie o prompt da Consulta de CNPJ e cole no seu assistente.

Abrir no Cursor

Muitos CNPJs de uma vez? Use a Consulta de CNPJ em Lote. Sem código, o dashboard consulta um CNPJ por vez e guarda o resultado no Histórico.

Endpoint

GEThttps://api.cpfhub.io/cnpj/{cnpj}

Parâmetros

OndeNomeObrigatórioDescrição
PathcnpjSimCNPJ com ou sem formatação: 11222333000181 ou 11.222.333/0001-81. Aceita o CNPJ alfanumérico (veja abaixo).
Headerx-api-keySimSua API Key. Veja Autenticação.

CNPJ alfanumérico

A API aceita o novo formato de CNPJ alfanumérico, que a Receita Federal começou a emitir em julho de 2026: 12 caracteres com letras (A a Z) e números, seguidos de 2 dígitos verificadores numéricos. Exemplo fictício: 12ABC34501DE35 (ou 12.ABC.345/01DE-35).

  • Letras minúsculas são convertidas para maiúsculas.
  • Pontos, barra e traço são removidos antes da validação.
  • O dígito verificador é conferido nos dois formatos. Sequências repetidas como 00000000000000 são recusadas.
  • Guarde o CNPJ como texto no seu banco, nunca como número.

Exemplo

Os exemplos leem a chave de CPFHUB_API_KEY, tratam o 404 como resultado normal e usam timeout de 10 s.

curl --max-time 10 "https://api.cpfhub.io/cnpj/11222333000181" \
  -H "x-api-key: $CPFHUB_API_KEY"

Resposta

HTTP 200 OK

JSON
{
  "success": true,
  "data": {
    "cnpj": "11222333000181",
    "razao_social": "EMPRESA EXEMPLO LTDA",
    "nome_fantasia": "EXEMPLO",
    "situacao_cadastral": "Ativa",
    "data_situacao_cadastral": "2015-03-10",
    "matriz_filial": "Matriz",
    "data_inicio_atividade": "2015-03-10",
    "cnae_principal": "6201501",
    "cnaes_secundarios": ["6204000", "6311900"],
    "codigo_natureza_juridica": "2062",
    "natureza_juridica": "Sociedade Empresária Limitada",
    "tipo_logradouro": "RUA",
    "logradouro": "DAS FLORES",
    "numero": "100",
    "complemento": "SALA 1",
    "bairro": "CENTRO",
    "cep": "01001000",
    "uf": "SP",
    "municipio": "SAO PAULO",
    "email": "contato@example.com",
    "telefones": [
      { "ddd": "11", "numero": "00000000", "is_fax": false }
    ],
    "capital_social": "100000,00",
    "porte_empresa": "Microempresa (ME)",
    "opcao_simples": "S",
    "data_opcao_simples": "2015-03-10",
    "opcao_mei": "N",
    "data_opcao_mei": null,
    "QSA": [
      {
        "nome_socio": "FULANO DE TAL",
        "cnpj_cpf_socio": "***.456.789-**",
        "qualificacao_socio": "Sócio-Administrador",
        "data_entrada_sociedade": "2015-03-10",
        "identificador_socio": "Pessoa Física",
        "faixa_etaria": "31 a 40 anos"
      }
    ]
  }
}

Os campos vêm da base pública do CNPJ e são, em geral, string. Datas usam AAAA-MM-DD. Campo vazio pode vir como "".

CampoTipoDescrição
data.cnpjstringCNPJ consultado, 14 caracteres sem máscara
data.razao_socialstringRazão social
data.nome_fantasiastringNome fantasia. Pode vir vazio
data.situacao_cadastralstring"Ativa", "Baixada", "Inapta", "Suspensa" ou "Nula"
data.data_situacao_cadastralstring | nullData da situação cadastral atual
data.matriz_filialstring"Matriz" ou "Filial"
data.data_inicio_atividadestring | nullData de abertura
data.cnae_principalstringCNAE principal, 7 dígitos
data.cnaes_secundariosstring[]CNAEs secundários, 7 dígitos cada
data.codigo_natureza_juridica, data.natureza_juridicastringCódigo (4 dígitos) e descrição da natureza jurídica
data.tipo_logradouro, data.logradouro, data.numero, data.complemento, data.bairrostringEndereço do estabelecimento
data.cepstringCEP, 8 dígitos sem máscara
data.uf, data.municipiostringEstado (sigla) e município
data.emailstringE-mail cadastrado na Receita. Pode vir vazio
data.telefones[]object[]ddd, numero e is_fax (boolean)
data.capital_socialstringCapital social com vírgula decimal: "100000,00"
data.porte_empresastring"Microempresa (ME)", "Empresa de Pequeno Porte (EPP)", "Demais" ou "Não informado"
data.opcao_simples, data.opcao_meistring"S", "N" ou "" (sem informação)
data.data_opcao_simples, data.data_opcao_meistring | nullData da opção pelo Simples Nacional e pelo MEI
data.QSA[]object[]Quadro de sócios e administradores (abaixo)
data.lgpd_anonimizadobooleanSó aparece quando o titular pediu anonimização. Alguns campos vêm ocultos

Cada item de data.QSA:

CampoDescrição
nome_socioNome do sócio (pessoa ou empresa)
cnpj_cpf_socioCNPJ do sócio pessoa jurídica. Para pessoa física, o CPF vem sempre mascarado: ***.456.789-**
qualificacao_socioQualificação, por exemplo "Sócio-Administrador"
data_entrada_sociedadeData de entrada na sociedade, ou null
identificador_socio"Pessoa Física", "Pessoa Jurídica" ou "Estrangeiro"
faixa_etariaFaixa etária do sócio
  • Datas vazias ou 0000-00-00 na base de origem chegam como null.
  • A resposta pode ganhar campos novos. Ignore campos que o seu código não conhece.

Erros

StatusQuando aconteceO que fazer
400CNPJ com formato inválido ou dígito verificador incorreto ("CNPJ inválido. Formato ou dígito verificador incorreto.")Corrija o CNPJ. Não repita. Não consome crédito.
401API Key ausente, inválida ou inativa (error string)Confira o header x-api-key.
403Créditos esgotados sem overage ("Limite de créditos excedido", em geral com error string, às vezes em error.message) ou conta inativa/bloqueada (error string)Recarregue créditos ou fale com o suporte. Não repita.
404CNPJ não encontrado na base ("CNPJ não encontrado na base de dados")Resultado normal. Não consome crédito.
429Limite por minuto excedido, compartilhado com a Consulta Simples de CPF (30/min no padrão)Espere os segundos do header Retry-After. Não consome crédito.
503Base de CNPJ indisponível ("cnpj_unavailable") ou falha passageira ao reservar créditos ou registrar a consultaRepita com espera crescente (2 s, 4 s, 8 s). Não consome crédito.

Formato do erro e retentativas: Códigos de Erro. Limite por minuto e créditos: Limites de Uso.

Detalhes

  • Custo: 1 crédito por CNPJ encontrado (200), o mesmo custo da Consulta Simples de CPF e da mesma franquia do plano. Alguns planos têm custo próprio: consulte o do seu plano no dashboard. 400, 404, 429 e 503 não consomem crédito.
  • Limite por minuto: a Consulta de CNPJ e a Consulta Simples de CPF dividem o mesmo limite por API Key (30 requisições por minuto no padrão, somando as duas).
  • Fonte dos dados: base pública do CNPJ publicada pela Receita Federal (Dados Abertos do CNPJ), atualizada mensalmente e tratada pelo projeto OpenCNPJ (licença MIT). A CPFHub.io não consulta a Receita em tempo real para CNPJ: um registro pode estar defasado até a próxima atualização mensal. Não existe Consulta em Tempo Real de CNPJ.
  • Sócios pessoa física: o CPF do sócio vem sempre mascarado. A API não devolve CPF completo de sócios.
  • Histórico: as consultas de CNPJ aparecem no Histórico do dashboard, junto com as de CPF.
  • Timeout do cliente: a consulta pode ter sido concluída e cobrada no servidor. Repetir cobra de novo.
  • Dados de exemplo: o CNPJ 11222333000181, o CNPJ alfanumérico 12ABC34501DE35 e os dados acima são fictícios.

Atualizado em 15 de outubro de 2026