📚 Documentação da API

Consulte dados oficiais da Receita Federal em segundos

Introdução

A API HockData expõe consultas aos dados oficiais da Receita Federal Brasileira via REST. Todas as respostas em JSON. Base URL: https://cnpj.hockdata.com.br/api/v1.

🔧 Veja todos os endpoints no Swagger interativo: /api/swagger

Autenticação

Todas as requisições devem incluir um header de autorização com sua API key no formato hk_live_xxxxxxxxxxxxxxxx:

Authorization: Bearer hk_live_xxxxxxxxxxxxxxxx
🔐 Faça login para ver sua API keyEntrar agora →
⚠️ Trate sua API key como uma senha. Nunca a exponha em código público, repositórios Git ou aplicações client-side.

Consulta individual

GET /api/v1/cnpj/{cnpj}

Consulta um CNPJ individual. Consome 1 da quota.

curl -H "Authorization: Bearer hk_live_xxxxxxxxxxxxxxxx" \
  https://cnpj.hockdata.com.br/api/v1/cnpj/11222333000144
import requests

API_KEY = "hk_live_xxxxxxxxxxxxxxxx"
url = "https://cnpj.hockdata.com.br/api/v1/cnpj/11222333000144"
headers = {"Authorization": f"Bearer {API_KEY}"}

r = requests.get(url, headers=headers)
print(r.json())
const API_KEY = "hk_live_xxxxxxxxxxxxxxxx";

const r = await fetch(
  "https://cnpj.hockdata.com.br/api/v1/cnpj/11222333000144",
  { headers: { "Authorization": `Bearer ${API_KEY}` } }
);
const data = await r.json();
console.log(data);
200 OK
{
  "cnpj": "11222333000144",
  "razao_social": "EMPRESA EXEMPLO LTDA",
  "nome_fantasia": "EXEMPLO",
  "data_abertura": "2010-03-15",
  "atividade_principal": "62.01-5-01 - Desenvolvimento de programas de computador sob encomenda",
  "atividade_secundaria": [
    "62.02-3-00 - Desenvolvimento e licenciamento de programas de computador customizáveis",
    "63.11-9-00 - Tratamento de dados, provedores de serviços de aplicação"
  ],
  "logradouro": "RUA DAS FLORES, 123, SALA 4",
  "cidade": "SAO PAULO",
  "uf": "SP",
  "cep": "01310100",
  "email": "contato@exemplo.com.br",
  "socios": [
    { "nome": "JOAO DA SILVA", "qualificacao": "Sócio-Administrador" },
    { "nome": "MARIA SANTOS", "qualificacao": "Sócia" }
  ]
}

Consulta em lote

POST /api/v1/cnpj/batch

Consulta múltiplos CNPJs (máx 1000 por requisição). Consome N da quota.

curl -X POST https://cnpj.hockdata.com.br/api/v1/cnpj/batch \
  -H "Authorization: Bearer hk_live_xxxxxxxxxxxxxxxx" \
  -H "Content-Type: application/json" \
  -d '{"cnpjs": ["11222333000144", "22333444000155"]}'
import requests

API_KEY = "hk_live_xxxxxxxxxxxxxxxx"
url = "https://cnpj.hockdata.com.br/api/v1/cnpj/batch"
headers = {
    "Authorization": f"Bearer {API_KEY}",
    "Content-Type": "application/json",
}
payload = {"cnpjs": ["11222333000144", "22333444000155"]}

r = requests.post(url, json=payload, headers=headers)
print(r.json())
const API_KEY = "hk_live_xxxxxxxxxxxxxxxx";

const r = await fetch("https://cnpj.hockdata.com.br/api/v1/cnpj/batch", {
  method: "POST",
  headers: {
    "Authorization": `Bearer ${API_KEY}`,
    "Content-Type": "application/json"
  },
  body: JSON.stringify({ cnpjs: ["11222333000144", "22333444000155"] })
});
const data = await r.json();
console.log(data);
200 OK
{
  "total": 2,
  "encontrados": 2,
  "nao_encontrados": [],
  "resultados": [
    {
      "cnpj": "11222333000144",
      "razao_social": "EMPRESA EXEMPLO LTDA",
      "uf": "SP",
      "cidade": "SAO PAULO"
    },
    {
      "cnpj": "22333444000155",
      "razao_social": "OUTRA EMPRESA SA",
      "uf": "RJ",
      "cidade": "RIO DE JANEIRO"
    }
  ]
}

Dados da conta

GET /api/v1/account

Retorna plano, uso mensal e créditos da conta.

curl -H "Authorization: Bearer hk_live_xxxxxxxxxxxxxxxx" \
  https://cnpj.hockdata.com.br/api/v1/account
import requests

API_KEY = "hk_live_xxxxxxxxxxxxxxxx"
url = "https://cnpj.hockdata.com.br/api/v1/account"
headers = {"Authorization": f"Bearer {API_KEY}"}

r = requests.get(url, headers=headers)
print(r.json())
const API_KEY = "hk_live_xxxxxxxxxxxxxxxx";

const r = await fetch(
  "https://cnpj.hockdata.com.br/api/v1/account",
  { headers: { "Authorization": `Bearer ${API_KEY}` } }
);
const data = await r.json();
console.log(data);
200 OK
{
  "email": "voce@exemplo.com.br",
  "plano": "pro",
  "uso_mes": 1234,
  "limite": 5000,
  "creditos": 100,
  "plano_expira": "2026-07-12"
}

Códigos de erro

Todos os erros retornam o seguinte formato:

{"detail": {"erro": "...", "codigo": "..."}}
Status Código Significado
401 unauthorized API key ausente ou inválida
403 Conta não verificada por e-mail
400 cnpj_invalido CNPJ não tem 14 dígitos
404 cnpj_nao_encontrado CNPJ não existe na base
429 quota_excedida Quota mensal estourada — compre créditos ou faça upgrade

Quotas e planos

Plano Consultas/mês Preço
Starter 100 / mês Grátis
Pro 5.000 / mês R$ 79
Empresarial Ilimitado R$ 199

Créditos avulsos

Créditos avulsos (R$ 15 / R$ 60 / R$ 100 por 100 / 500 / 1000 consultas) não expiram e são consumidos automaticamente após esgotar a quota mensal do plano.

Ver planos →