um produto Checkcred

API REST — Consulta CNPJ

Consulte gratuitamente os dados públicos de CNPJ da Receita Federal por meio da nossa API REST. Os mesmos dados exibidos nas abas de pesquisa do site estão disponíveis em formato JSON, ideais para integrar em sistemas, planilhas e automações.

Base URL: https://consultacnpj.site/api/v1
Autenticação: nenhuma — os endpoints abaixo são gratuitos e de acesso livre.
Formato: todas as respostas são em JSON (application/json).
Limite gratuito: 3 consultas / hora por IP — acima disso, é necessário assinar um plano PRO.

Visão geral

A API expõe os mesmos recursos das 5 abas de pesquisa do site:

Filtros avançados (porte, matriz/filial, natureza jurídica, Simples/MEI, faixa de capital social, período de abertura, "lead novo") fazem parte do plano PRO e ainda não estão disponíveis nesta API gratuita. Conheça os planos.

Formato das respostas

Toda resposta segue o envelope abaixo. Em caso de sucesso:

{
  "success": true,
  "data": ...,
  "meta": {
    "page": 1,
    "pages": 12,
    "per_page": 20,
    "total": 235
  }
}

O campo meta só aparece em endpoints de listagem (paginados). Em caso de erro:

{
  "success": false,
  "error": {
    "code": "not_found",
    "message": "CNPJ não encontrado na base de dados."
  }
}

Códigos de erro

HTTPcodeDescrição
422invalid_cnpjCNPJ ausente ou com formato inválido (deve ter 14 dígitos).
404not_foundCNPJ não encontrado, ou endpoint inexistente.
429rate_limit_exceededLimite gratuito de consultas por hora atingido.
500internal_errorErro inesperado ao consultar a base de dados.

Limite de uso gratuito

Cada IP pode realizar até 3 consultas por hora nos endpoints /cnpj, /empresas, /segmento, /endereco e /socios. O endpoint informativo GET /api/v1 não conta para esse limite.

Toda resposta de consulta inclui os seguintes cabeçalhos HTTP com o status do limite:

CabeçalhoDescrição
X-RateLimit-LimitTotal de consultas permitidas por hora (3).
X-RateLimit-RemainingConsultas restantes na janela atual.
X-RateLimit-ResetTimestamp Unix em que o limite será renovado.

Ao atingir o limite, a API responde com HTTP 429 e o cabeçalho Retry-After:

{
  "success": false,
  "error": {
    "code": "rate_limit_exceeded",
    "message": "Limite gratuito de 3 consultas por hora atingido. Assine um plano PRO em https://checkcred.com.br para consultas ilimitadas."
  }
}

Precisa de mais consultas? Os planos PRO removem o limite por hora e liberam os filtros avançados. Conheça os planos.

Paginação

Os endpoints de listagem (/empresas, /segmento, /endereco, /socios) aceitam:

ParâmetroPadrãoDescrição
page1Número da página de resultados.
per_page20Itens por página (máximo 50).

Para evitar consultas muito amplas (full scan), os endpoints de listagem exigem pelo menos um filtro de pesquisa. Sem filtros, o retorno será uma lista vazia.

GET /cnpj/{cnpj}

Retorna o relatório completo de uma empresa a partir do CNPJ (14 dígitos, com ou sem máscara).

ParâmetroTipoDescrição
cnpjpathCNPJ com 14 dígitos. Pode ser enviado na URL ou via ?cnpj=.

Exemplo de requisição

curl "https://consultacnpj.site/api/v1/cnpj/00000000000191"

Exemplo de resposta

{
  "success": true,
  "data": {
    "cnpj": "00.000.000/0001-91",
    "cnpj_numerico": "00000000000191",
    "razao_social": "BANCO DO BRASIL SA",
    "nome_fantasia": "BB",
    "matriz_filial": "Matriz",
    "situacao_cadastral": {
      "codigo": "02",
      "descricao": "Ativa",
      "data": "2005-11-03",
      "motivo": null
    },
    "data_inicio_atividades": "1966-08-01",
    "cnae_principal": {
      "codigo": "6422100",
      "descricao": "Bancos múltiplos, com carteira comercial"
    },
    "endereco": {
      "logradouro": "QUADRA SAUN QUADRA 5 LOTE B",
      "numero": "S/N",
      "complemento": "ANDAR 1 AO 17",
      "bairro": "ASA NORTE",
      "cep": "70040912",
      "municipio": "BRASILIA",
      "uf": "DF"
    },
    "contato": {
      "telefone": "(61) 34938050",
      "email": "EXEMPLO@BB.COM.BR"
    },
    "cnaes_secundarios": [
      { "codigo": "6499999", "descricao": "Outras atividades de serviços financeiros..." }
    ],
    "socios": [
      {
        "nome": "EXEMPLO DA SILVA",
        "documento": "***.456.789-**",
        "qualificacao": "Presidente",
        "data_entrada_sociedade": "2019-01-15",
        "faixa_etaria": "51 a 60 anos",
        "representante_legal": null
      }
    ]
  }
}

GET /empresas

Busca empresas por razão social e/ou nome fantasia (aba "Nome da Empresa").

ParâmetroTipoDescrição
razao_socialqueryBusca parcial (contém) na razão social.
nome_fantasiaqueryBusca parcial (contém) no nome fantasia.
ufquerySigla da UF (ex: SC).
municipioqueryNome do município. Aceita múltiplos, separados por vírgula.
situacaoqueryCódigo da situação cadastral (01, 02, 03, 04, 08).
cnaequeryCódigo(s) CNAE, separados por vírgula.
cepqueryPrefixo do CEP.

Exemplo de requisição

curl "https://consultacnpj.site/api/v1/empresas?razao_social=CHECKCRED&uf=SC"

Exemplo de resposta

{
  "success": true,
  "data": [
    {
      "cnpj": "12.345.678/0001-90",
      "cnpj_numerico": "12345678000190",
      "razao_social": "CHECKCRED SOLUCOES LTDA",
      "nome_fantasia": "CHECKCRED",
      "matriz_filial": "Matriz",
      "situacao_cadastral": { "codigo": "02", "descricao": "Ativa", "data": "2018-03-12", "motivo": null },
      "data_inicio_atividades": "2018-03-10",
      "cnae_principal": { "codigo": "6911701", "descricao": "Serviços advocatícios" },
      "endereco": { "logradouro": "RUA EXEMPLO", "numero": "100", "complemento": null, "bairro": "CENTRO", "cep": "88000000", "municipio": "FLORIANOPOLIS", "uf": "SC" },
      "contato": { "telefone": "(48) 30000000", "email": "CONTATO@CHECKCRED.COM.BR" }
    }
  ],
  "meta": { "page": 1, "pages": 1, "per_page": 20, "total": 1 }
}

GET /socios

Busca sócios por nome, documento (CPF/CNPJ) ou pela empresa (aba "Sócio").

ParâmetroTipoDescrição
nome_socioqueryBusca parcial (contém) no nome do sócio.
cnpj_cpf_socioqueryCPF (11 dígitos) ou CNPJ (14 dígitos) do sócio, sem máscara.
cnpjqueryCNPJ da empresa (14 dígitos), para listar todos os sócios dessa empresa.

Exemplo de requisição

curl "https://consultacnpj.site/api/v1/socios?nome_socio=EXEMPLO+DA+SILVA"

Exemplo de resposta

{
  "success": true,
  "data": [
    {
      "nome_socio": "EXEMPLO DA SILVA",
      "documento": "***.456.789-**",
      "qualificacao": "Presidente",
      "data_entrada_sociedade": "2019-01-15",
      "faixa_etaria": "51 a 60 anos",
      "empresa": {
        "cnpj": "00.000.000/0001-91",
        "razao_social": "BANCO DO BRASIL SA",
        "nome_fantasia": "BB",
        "situacao_cadastral": "Ativa",
        "uf": "DF",
        "municipio": "BRASILIA"
      }
    }
  ],
  "meta": { "page": 1, "pages": 1, "per_page": 20, "total": 1 }
}

GET /endereco

Busca empresas por localização (aba "Endereço").

ParâmetroTipoDescrição
ufquerySigla da UF.
municipioqueryNome do(s) município(s), separados por vírgula.
cepqueryPrefixo do CEP. Ex: 72 retorna todos os CEPs que começam com 72.
logradouroqueryBusca parcial (contém) no nome do logradouro.
bairroqueryBusca parcial (contém) no bairro.
cnaequeryCódigo(s) CNAE da atividade principal, separados por vírgula.
situacaoqueryCódigo da situação cadastral.

Exemplo de requisição

curl "https://consultacnpj.site/api/v1/endereco?uf=DF&municipio=BRASILIA&cep=72&logradouro=QUADRA"

Exemplo de resposta

{
  "success": true,
  "data": [
    {
      "cnpj": "00.000.000/0001-91",
      "cnpj_numerico": "00000000000191",
      "razao_social": "BANCO DO BRASIL SA",
      "nome_fantasia": "BB",
      "matriz_filial": "Matriz",
      "situacao_cadastral": { "codigo": "02", "descricao": "Ativa", "data": "2005-11-03", "motivo": null },
      "data_inicio_atividades": "1966-08-01",
      "cnae_principal": { "codigo": "6422100", "descricao": "Bancos múltiplos, com carteira comercial" },
      "endereco": { "logradouro": "QUADRA SAUN QUADRA 5 LOTE B", "numero": "S/N", "complemento": "ANDAR 1 AO 17", "bairro": "ASA NORTE", "cep": "70040912", "municipio": "BRASILIA", "uf": "DF" },
      "contato": { "telefone": "(61) 34938050", "email": null }
    }
  ],
  "meta": { "page": 1, "pages": 3, "per_page": 20, "total": 47 }
}

GET /segmento

Busca empresas por segmento de mercado (CNAE), UF, cidade e/ou situação cadastral (aba "Segmento de Mercado").

ParâmetroTipoDescrição
cnaequeryCódigo(s) CNAE da atividade principal, separados por vírgula. Ex: 6911701,6912500.
ufquerySigla da UF.
municipioqueryNome do(s) município(s), separados por vírgula.
situacaoqueryCódigo da situação cadastral. Padrão recomendado: 02 (Ativa).
cepqueryPrefixo do CEP.

Exemplo de requisição

curl "https://consultacnpj.site/api/v1/segmento?cnae=6911701&uf=SC&municipio=ITAPEMA,GASPAR&situacao=02&page=1"

Exemplo de resposta

{
  "success": true,
  "data": [
    {
      "cnpj": "11.222.333/0001-44",
      "cnpj_numerico": "11222333000144",
      "razao_social": "ESCRITORIO DE ADVOCACIA EXEMPLO LTDA",
      "nome_fantasia": null,
      "matriz_filial": "Matriz",
      "situacao_cadastral": { "codigo": "02", "descricao": "Ativa", "data": "2015-06-01", "motivo": null },
      "data_inicio_atividades": "2015-05-20",
      "cnae_principal": { "codigo": "6911701", "descricao": "Serviços advocatícios" },
      "endereco": { "logradouro": "AV CENTRAL", "numero": "200", "complemento": null, "bairro": "CENTRO", "cep": "88220000", "municipio": "ITAPEMA", "uf": "SC" },
      "contato": { "telefone": null, "email": null }
    }
  ],
  "meta": { "page": 1, "pages": 8, "per_page": 20, "total": 153 }
}

Exemplos em outras linguagens

JavaScript (fetch)

const resp = await fetch('https://consultacnpj.site/api/v1/cnpj/00000000000191');
const json = await resp.json();
console.log(json.data.razao_social);

PHP

$json = json_decode(file_get_contents(
    'https://consultacnpj.site/api/v1/empresas?razao_social=CHECKCRED&uf=SC'
), true);

foreach ($json['data'] as $empresa) {
    echo $empresa['razao_social'], "\n";
}

Python (requests)

import requests

resp = requests.get('https://consultacnpj.site/api/v1/socios', params={'nome_socio': 'EXEMPLO DA SILVA'})
data = resp.json()
for socio in data['data']:
    print(socio['nome_socio'], '-', socio['empresa']['razao_social'])

Limites de uso

O acesso gratuito à API é destinado a consultas pontuais e testes de integração. Para alto volume de requisições, dados adicionais (filtros PRO) e maior limite de paginação, confira os planos PRO.

Conheça os planos PRO.