Acesse CNPJ, razao social, socios, endereco, CNAE, Simples Nacional e mais. Dados atualizados da base publica da Receita Federal do Brasil.
GET /api/v1/empresas/cnpj/33000167000101
Authorization: Bearer SEU_TOKEN
// Resposta
{
"razao_social": "PETROBRAS S.A.",
"cnpj_completo": "33000167000101",
"uf": "RJ",
"situacao_cadastral": "02",
"cnae_fiscal_principal": "0600001",
"socios": "MAGDA CHAMBRIARD, ...",
"capital_social": "205431960490.52"
}
Dados completos, enriquecidos e prontos para uso em qualquer aplicacao
Consulte qualquer empresa pelo CNPJ completo (14 digitos) ou basico (8 digitos). Retorna dados cadastrais completos.
Combine filtros por UF, municipio, CNAE, porte, capital social e data de abertura para encontrar empresas especificas.
Pesquise empresas pela razao social. Filtre por estado para resultados mais precisos.
Acesse nomes e documentos de todos os socios e administradores da empresa.
Saiba se a empresa e optante pelo Simples Nacional ou MEI, com datas de opcao e exclusao.
Visualize resultados com dados ofuscados antes de gastar creditos. Ideal para validar buscas.
Informacoes enriquecidas com descricoes de tabelas auxiliares da Receita Federal
Endpoints simples e bem documentados. Integre em minutos.
Todas as requisicoes exigem um token enviado via header Authorization: Bearer TOKEN, query ?token=TOKEN ou body JSON.
/api/v1/auth/register
Cadastro de usuario
username | string | Obrigatorio | Min. 3 caracteres, unico |
email | string | Obrigatorio | Email valido, unico |
password | string | Obrigatorio | Min. 6 caracteres |
{
"message": "Usuario criado com sucesso",
"user": { "id": 1, "username": "meu_user", "creditos": 10 },
"api_token": "aBcDeFgH...",
"jwt_token": "eyJhbG..."
}
Ao se cadastrar, o usuario recebe 10 creditos gratuitos para testar a API.
/api/v1/auth/login
Login (retorna JWT + API token)
{ "login": "usuario_ou_email", "password": "senha" }
{
"user": { "id": 1, "username": "meu_user", "creditos": 85 },
"api_token": "aBcDeFgH...",
"jwt_token": "eyJhbG..."
}
/api/v1/auth/me
Dados do usuario autenticado
{ "id": 1, "username": "meu_user", "email": "email@ex.com", "creditos": 85, "api_token": "...", "is_admin": false }
/api/v1/auth/creditos
Saldo de creditos
{ "creditos": 85 }
/api/v1/auth/alterar-senha
Alterar senha
{ "senha_atual": "antiga", "nova_senha": "nova123" }
/api/v1/auth/regenerar-token
Regenerar API token
Gera um novo API token, invalidando o anterior.
{ "new_token": "NoVoToKeN...", "message": "Token regenerado com sucesso" }
Endpoints principais. Consomem 1 credito por empresa retornada (exceto com preview=true).
/api/v1/empresas/cnpj/{cnpj}
Consulta por CNPJ
cnpj | string | Obrigatorio | CNPJ com 8 ou 14 digitos (com ou sem formatacao) |
preview | boolean | Opcional | Se true, retorna dados ofuscados sem consumir creditos |
curl -H "Authorization: Bearer TOKEN" \
https://api.cnpjota.com.br/api/v1/empresas/cnpj/33000167000101
{
"data": [{
"cnpj_completo": "33000167000101",
"razao_social": "PETROBRAS S.A.",
"nome_fantasia": "PETROBRAS",
"uf": "RJ",
"situacao_cadastral": "02",
"cnae_fiscal_principal": "0600001",
"cnae_fiscal_principal_descricao": "Extracao de petroleo...",
"socios": "MAGDA CHAMBRIARD, ...",
"capital_social": "205431960490.52",
...
}],
"total_records": 1,
"creditos_restantes": 84,
"creditos_consumidos": 1,
"preview": false
}
/api/v1/empresas/filtros
Busca com filtros combinados
uf | string | Obrigatorio | Sigla do estado (SP, RJ...) |
city_code | string | Opcional | Codigo(s) TOM do municipio, separados por virgula |
cnae_principal | string | Opcional | Codigo CNAE fiscal principal |
cnae_secundario | string | Opcional | Codigo CNAE secundario (busca parcial) |
porte_empresa | string | Opcional | 01=Nao informado, 02=Micro, 03=Pequeno, 05=Demais |
situacao_cadastral | string | Opcional | Default: 02 (Ativa) |
capital_social_min | number | Opcional | Capital social minimo (R$) |
capital_social_max | number | Opcional | Capital social maximo (R$) |
data_inicio_min | string | Opcional | Data minima (YYYY-MM-DD) |
data_inicio_max | string | Opcional | Data maxima (YYYY-MM-DD) |
limite | integer | Opcional | 1-1000, default 100 (limitado pelos creditos) |
pagina | integer | Opcional | Pagina dos resultados (default: 1) |
preview | boolean | Opcional | Dados ofuscados, sem custo |
curl -H "Authorization: Bearer TOKEN" \
"https://api.cnpjota.com.br/api/v1/empresas/filtros?uf=SP&cnae_principal=6201501&limite=50"
Retorna tambem dados de Simples Nacional e MEI (opcao, datas de opcao e exclusao).
/api/v1/empresas/busca
Busca por razao social
q | string | Obrigatorio | Termo de busca (min. 3 caracteres) |
uf | string | Opcional | Filtrar por estado |
limite | integer | Opcional | Default 20, max 100 |
pagina | integer | Opcional | Paginacao (default: 1) |
preview | boolean | Opcional | Dados ofuscados, sem custo |
curl -H "Authorization: Bearer TOKEN" \
"https://api.cnpjota.com.br/api/v1/empresas/busca?q=PETROBRAS&uf=RJ"
Endpoints de apoio que nao consomem creditos.
/api/v1/municipios
Lista de municipios (codigo TOM + UF)
uf | string | Opcional | Filtrar por estado |
{ "data": [{ "tom_code": "7107", "nome": "SAO PAULO", "uf": "SP" }, ...] }
/api/v1/cnaes
Busca de CNAEs por codigo ou descricao
q | string | Opcional | Busca por codigo ou descricao |
limite | integer | Opcional | Default 50, max 200 |
{ "data": [{ "codigo": "6201501", "descricao": "Desenvolvimento de programas..." }] }
Compra de creditos via MercadoPago.
/api/v1/payment/comprar
Criar pagamento para compra de creditos
// Body
{ "valor": 10.00 }
// Resposta
{
"init_point": "https://www.mercadopago.com.br/checkout/...",
"transacao_id": 42,
"valor": 10.00,
"creditos": 100
}
Redirecione o usuario para init_point para concluir o pagamento. Valor minimo: R$ 10,00.
/api/v1/payment/status/{id}
Status de uma transacao
Retorna status da transacao: pending, approved ou failed.
/api/v1/payment/minhas-compras
Historico de compras do usuario
Retorna as ultimas 20 transacoes do usuario autenticado.
import requests
BASE = "https://api.cnpjota.com.br/api/v1"
TOKEN = "seu_api_token"
headers = {"Authorization": f"Bearer {TOKEN}"}
# Consulta por CNPJ
r = requests.get(f"{BASE}/empresas/cnpj/33000167000101", headers=headers)
print(r.json())
# Busca por filtros
params = {"uf": "SP", "cnae_principal": "6201501", "limite": 50}
r = requests.get(f"{BASE}/empresas/filtros", headers=headers, params=params)
print(r.json())
# Busca por nome
r = requests.get(f"{BASE}/empresas/busca", headers=headers, params={"q": "PETROBRAS"})
print(r.json())
# Cadastro
curl -X POST https://api.cnpjota.com.br/api/v1/auth/register \
-H "Content-Type: application/json" \
-d '{"username":"meu_user","email":"email@ex.com","password":"senha123"}'
# Consulta por CNPJ
curl -H "Authorization: Bearer SEU_TOKEN" \
https://api.cnpjota.com.br/api/v1/empresas/cnpj/33000167000101
# Busca com filtros
curl -H "Authorization: Bearer SEU_TOKEN" \
"https://api.cnpjota.com.br/api/v1/empresas/filtros?uf=SP&cnae_principal=6201501"
# Preview (sem custo)
curl -H "Authorization: Bearer SEU_TOKEN" \
"https://api.cnpjota.com.br/api/v1/empresas/cnpj/33000167000101?preview=true"
const BASE = "https://api.cnpjota.com.br/api/v1";
const TOKEN = "seu_api_token";
const headers = { "Authorization": `Bearer ${TOKEN}` };
// Consulta por CNPJ
const resp = await fetch(`${BASE}/empresas/cnpj/33000167000101`, { headers });
const data = await resp.json();
console.log(data);
// Busca por filtros
const params = new URLSearchParams({ uf: "SP", cnae_principal: "6201501", limite: "50" });
const resp2 = await fetch(`${BASE}/empresas/filtros?${params}`, { headers });
console.log(await resp2.json());
| HTTP | Descricao |
|---|---|
400 | Requisicao invalida (parametros incorretos) |
401 | Token ausente, invalido ou expirado |
403 | Acesso negado |
404 | Recurso nao encontrado |
409 | Conflito (usuario/email ja existe) |
429 | Limite de requisicoes excedido |
500 | Erro interno do servidor |
Pague apenas pelo que usar. Sem mensalidades, sem surpresas.
Para conhecer a API
10 creditos = R$ 1,00
Consultas auxiliares (municipios, CNAEs) e o modo preview nao consomem creditos.
Limites por IP para garantir a estabilidade do servico
Os dados sao provenientes da base publica de CNPJ da Receita Federal do Brasil, disponibilizada no Portal de Dados Abertos. Inclui informacoes de empresas, estabelecimentos, socios, Simples Nacional e tabelas auxiliares (CNAEs, municipios, naturezas juridicas).
O modo preview (?preview=true) retorna os resultados com dados sensiveis ofuscados (telefones, emails, enderecos parciais, nomes de socios parciais). Nao consome creditos e e ideal para validar se a busca retorna o que voce precisa antes de gastar creditos.
Nao. Os creditos comprados nunca expiram. Voce pode usa-los no seu proprio ritmo.
Cada empresa retornada em uma consulta consome 1 credito. Se voce buscar por filtros e retornarem 50 empresas, serao consumidos 50 creditos. A consulta por CNPJ unico consome 1 credito. Consultas auxiliares (municipios, CNAEs) e preview nao consomem creditos. A taxa e de 10 creditos por R$ 1,00 (R$ 0,10 por consulta).
O CNPJ basico sao os 8 primeiros digitos e identifica a empresa (raiz). O CNPJ completo (14 digitos) identifica um estabelecimento especifico (matriz ou filial). Ao buscar pelo basico, a API retorna dados da empresa e do estabelecimento principal (matriz).
O pagamento e processado pelo MercadoPago, que aceita cartao de credito, debito, boleto bancario e Pix. A compra minima e de R$ 10,00 (100 creditos).
Crie sua conta gratuitamente e receba 10 creditos para testar a API agora mesmo.