Referência /dev

Tudo que você precisa para integrar: base URL, autenticação, os quatro endpoints, as três ferramentas MCP, erros e cotas. Sem surpresas.

// 01 · quickstartDo zero à primeira resposta

Pegue sua chave (link no rodapé do site), escolha o transporte e faça a primeira chamada em menos de um minuto.

# MCP — Claude Desktop / Cursor / Codex
{
  "mcpServers": {
    "fonteza": {
      "command": "npx",
      "args": ["-y", "fonteza-mcp"],
      "env": { "FONTEZA_KEY": "sua-chave" }
    }
  }
}
# REST — primeira chamada
curl https://api.fonteza.com.br/v1/buscar \
  -H "Authorization: Bearer $FONTEZA_KEY" \
  --data-urlencode "q=conceicao"

# → 200 OK (recorte)
{
  "total": 2,
  "items": [ { "cnpj": "61685886000149", … } ],
  "meta": { "fonte": ["oficial"],
            "competencia": "2026-07" }
}
Envelope de procedência. Toda resposta — de qualquer endpoint — carrega meta.fonte e meta.competencia. Guarde esses dois campos junto do resultado: são eles que tornam a resposta citável e reprodutível.

// 02 · rest apiEndpoints

Base URL: https://api.fonteza.com.br. Autenticação por Authorization: Bearer <chave> em todas as rotas.

GET /v1/buscar — busca de empresas

ParâmetroTipoDescrição
qobrigatóriostring ≥ 2 Nome razão, fantasia ou atividade. Busca híbrida: texto exato, variações em português e tolerância a erro de digitação.
ufopcionalstring(2)Filtro por estado. Ex.: SP.
municipioopcionalstringFiltro por município. Ex.: campinas.
cnaeopcionalstringPrefixo ou código CNAE. Ex.: 4930.
somente_matrizopcionalbooltrue exclui filiais do resultado.
limit / offsetopcionalintPaginação. Padrão 20, máximo 100.

GET /v1/empresas/{cnpj} — dossiê completo

Aceita CNPJ numérico ou alfanumérico, com ou sem máscara (61.685.886/0001-49 é válido). Retorna cadastro, endereço, CNAEs, porte, capital social, Simples/MEI, sócios com CPF mascarado, sanções conhecidas e o envelope de procedência.

GET /v1/sancoes/{cnpj} — verificação de sanções

Consulta por CNPJ raiz — cobre matriz e todas as filiais de uma vez. Resposta:

{
  "data": {
    "limpo": false,
    "cnpj_basico": "33000167",
    "sancoes": [ {
      "tipo": "…", "orgao": "…",
      "fundamento": "…",
      "inicio": "20230601", "fim": "20260601"
    } ]
  },
  "meta": { "fonte": ["oficial"], "competencia": "2026-07" }
}

GET /v1/meta — saúde da base

Competência vigente, total de estabelecimentos e timestamp da última promoção. É a rota que seu monitor deve pingar.

// 03 · mcpFerramentas para agentes

O server MCP expõe as mesmas operações como ferramentas tipadas — o host do agente faz o parse, você só declara a intenção.

FerramentaArgumentosEquivalente REST
buscar_empresasq, uf?, municipio?, cnae?, somente_matriz?, limit?, offset?GET /v1/buscar
obter_empresacnpjGET /v1/empresas/{cnpj}
verificar_sancoescnpjGET /v1/sancoes/{cnpj}
Erros estruturados. Ferramentas nunca estouram exceção crua: CNPJ inválido, não encontrado ou fora da cota volta como JSON {"erro": "…", "codigo": "…"} — o agente consegue reagir em vez de travar.

// 04 · erros & cotasO que pode dar errado

HTTPSignificadoO que fazer
401Chave ausente, inválida ou expiradaConferir o header Authorization
422Parâmetro inválido (ex.: CNPJ com DV errado)Corrigir o valor; a mensagem diz qual campo
404Não encontrado na base atualNão é erro de sintaxe — o registro não existe neste recorte
429Cota do plano esgotadaRespeitar o header de retry; upgrade no plano se for recorrente
503Manutenção / troca de baseRetry com backoff; status em tempo real na página de status

Cotas

PlanoLimiteRecarga
Grátis1.000 chamadas/diadiária
Pro30.000 chamadas/mêsmensal
Scale150.000 chamadas/mês · SLA 99,5%mensal
Modo aberto no dev local. Rodando o server sem nenhuma chave configurada (ex.: sua instância local), a autenticação fica desligada — útil para desenvolvimento; nunca acontecerá na API de produção.