Visão Geral

OpenCNPJ é uma API pública e gratuita para consultar dados cadastrais de empresas brasileiras por CNPJ. Informe um CNPJ válido e receba uma resposta JSON simples, pronta para uso em aplicativos, integrações e automações.

API

Estrutura da URL

A API expõe um único recurso:

GET https://api.opencnpj.org/{CNPJ}

Retorna os dados do CNPJ informado em JSON.

Parâmetros

Path {CNPJ} 14 dígitos. Formatos aceitos:

Consulta rápida

Exemplos

# só números
curl -s https://api.opencnpj.org/00000000000000 | jq

# com pontuação completa
curl -s "https://api.opencnpj.org/00.000.000/0000-00" | jq

# com pontos e barra (sem hífen)
curl -s "https://api.opencnpj.org/00.000.000/000000" | jq

Resposta

Content-Type: application/json

Exemplo de resposta (campos podem variar):

{
  "cnpj": "00000000000000",
  "razao_social": "EMPRESA EXEMPLO LTDA",
  "nome_fantasia": "EXEMPLO",
  "situacao_cadastral": "Ativa",
  "data_situacao_cadastral": "2000-01-01",
  "matriz_filial": "Matriz",
  "data_inicio_atividade": "2000-01-01",
  "cnae_principal": "0000000",
  "cnaes_secundarios": [
    "0000001",
    "0000002"
  ],
  "cnaes_secundarios_count": 2,
  "natureza_juridica": "Sociedade Empresária Limitada",
  "logradouro": "RUA EXEMPLO",
  "numero": "123",
  "complemento": "SALA 1",
  "bairro": "BAIRRO EXEMPLO",
  "cep": "00000000",
  "uf": "SP",
  "municipio": "SAO PAULO",
  "email": "[email protected]",
  "telefones": [
    {
      "ddd": "11",
      "numero": "900000000",
      "is_fax": false
    }
  ],
  "capital_social": "1000,00",
  "porte_empresa": "Microempresa (ME)",
  "opcao_simples": null,
  "data_opcao_simples": null,
  "opcao_mei": null,
  "data_opcao_mei": null,
  "QSA": [
    {
      "nome_socio": "SOCIO PJ EXEMPLO",
      "cnpj_cpf_socio": "00000000000000",
      "qualificacao_socio": "Sócio Pessoa Jurídica",
      "data_entrada_sociedade": "2000-01-01",
      "identificador_socio": "Pessoa Jurídica",
      "faixa_etaria": "Não se aplica"
    },
    {
      "nome_socio": "SOCIA PF EXEMPLO",
      "cnpj_cpf_socio": "***000000**",
      "qualificacao_socio": "Administrador",
      "data_entrada_sociedade": "2000-01-01",
      "identificador_socio": "Pessoa Física",
      "faixa_etaria": "31 a 40 anos"
    }
  ]
}

Códigos de status

Autenticação e limites

Disponibilidade

Dados

Todos os dados são disponibilizados publicamente pela Receita Federal. A base é atualizada mensalmente, conforme a publicação mensal dos dados pela Receita Federal.

Total de CNPJs cadastrados na base:
Última atualização da base:

Prefere trabalhar offline ou integrar localmente? Baixe a base completa de CNPJs em um único arquivo ZIP e processe no seu próprio ambiente. O pacote é atualizado mensalmente, em formato aberto.

Aviso: após descompactar, o volume esperado é de aproximadamente 550 GB.

URL:
MD5:

Caso decida por hostear a base você mesmo e quer automatizar o fluxo de atualização, acesse https://api.opencnpj.org/info. O retorno contém a data da última atualização, a URL do ZIP para download e o MD5 para verificação.

Código Aberto

Este projeto é totalmente aberto: código, issues e discussões estão públicos para você auditar, contribuir e reutilizar.

Bibliotecas por Linguagem

Integrações mantidas pela comunidade para facilitar o uso do OpenCNPJ em diferentes linguagens.

Linguagem Criador Repositório
Delphi Valter Patrick github.com/valterpatrick/opencnpj
.NET Fulvio Canducci github.com/fulviocanducci/Canducci.OpenCnpj
Go Thiago Valle github.com/zthiagovalle/opencnpj
NestJS José Marinho github.com/jusemarinho/nestjs-opencnpj
Python Gabriel Oliva github.com/ofcoliva/opencnpj
Python Gustavo Gomes github.com/gustavogomesn/python-opencnpj

Tem uma biblioteca em outra linguagem? Envie um PR para adicionarmos aqui.

Apoie

As doações incentivam o projeto e ajudam a manter a infraestrutura e evoluir a API.

As doações viabilizam as ações planejadas para diminuir ainda mais o tempo de resposta, aumentar a disponibilidade e manter a infraestrutura, e ainda garantem a coquinha do desenvolvedor 😉

Perguntas e Respostas

Posso usar o serviço gratuitamente na minha empresa/serviço?

Sim. O uso é gratuito, inclusive para fins comerciais. Não oferecemos suporte dedicado.

Os dados são consultados/atualizados em tempo real?

Não. A base é derivada dos dados públicos da Receita Federal e é atualizada mensalmente, de acordo com a publicação oficial.

Quanto tempo após a publicação da Receita Federal vocês atualizam a base?

Em média, até 2 dias após a publicação mensal da Receita Federal.

Posso consultar massivamente os dados?

A API é pública e existe para o bem de todos. Para evitar que um mau uso prejudique outros usuários, não toleramos mais grandes volumes de consultas massivas (ex.: validação de bases inteiras sem intervalos).

Sobre limites: aceitamos picos de até 50 requisições/segundo por IP. Porém, para validação de bases, utilize o arquivo .zip disponível na seção Dados é muito mais rápido e adequado inclusive para quem deseja apenas validar.

Caso identifiquemos validação de bases inteiras sem pausas, aplicaremos dois bloqueios temporários; se continuar, aplicaremos um bloqueio permanente. Contamos com o bom senso: validar 10 mil CNPJs é muito diferente de validar 1 milhão.

Estamos trabalhando em uma solução para permitir consultas em batch. Até lá, por favor, use o ZIP para validação de bases.

Minha empresa tem muitas chamadas por segundo. Vocês oferecem plano pago?

Não. Todos os serviços são gratuitos. Se o uso estiver dentro do rate limit, não há problema.

O que acontece se eu ultrapassar o rate limit?

Você receberá um código HTTP 429 – Too Many Requests.

Vocês armazenam logs das consultas?

Não armazenamos logs identificáveis das consultas. Mantemos apenas métricas agregadas (quantidade de consultas e tempos de resposta) para estatísticas e melhoria contínua do serviço.

Consultei um CNPJ e não foi encontrado, mas ele existe. Por quê?

Se o CNPJ foi aberto recentemente, ele pode ainda não constar na nossa base, pois a atualização é mensal. Caso já tenha passado um mês e o CNPJ conste nos dados da Receita Federal, entre em contato conosco.