Consultar CNPJs em lote
Precisa consultar vários CNPJs de uma vez? O endpoint POST /consulta/lote aceita até 20 CNPJs por chamada e devolve um item de resposta para cada um, na mesma ordem em que foram enviados.
- Método e caminho:
POST /consulta/lote - Base URL:
https://api.cnpjapi.com.br - Autenticação: exige API key de um plano pago (veja Autenticação) - não há versão anônima nem no plano gratuito.
- Corpo:
{"cnpjs": [...]}, até 20 CNPJs (apenas os 14 dígitos cada, sem pontuação).
Exemplo (curl)
curl -X POST https://api.cnpjapi.com.br/consulta/lote \
-H "Authorization: Bearer cnpj_sua_chave" \
-H "Content-Type: application/json" \
-d '{"cnpjs": ["00776574000156", "00000000000000", "abc"]}'
Resposta (200 OK, application/json)
[
{ "cnpj": "00776574000156", "status": "encontrado", "dados": { "RazaoSocial": "...", "...": "..." } },
{ "cnpj": "00000000000000", "status": "nao_encontrado" },
{ "cnpj": "abc", "status": "invalido" }
]
Um item por CNPJ enviado, na mesma ordem da lista de entrada - use a posição para casar request e response.
| Campo | Descrição |
|---|---|
cnpj |
O CNPJ que você enviou, repetido no item |
status |
encontrado, nao_encontrado, invalido ou erro (falha pontual ao consultar aquele item) |
dados |
Os campos cadastrais (mesmo formato de Consultar um CNPJ) - presente só quando status é encontrado |
Um item com problema não derruba o lote inteiro: os demais são processados normalmente. O mesmo CNPJ repetido na lista não é deduplicado - cada ocorrência gera um item de resposta e conta separadamente para a sua cota.
Formato ReceitaWS no lote
?formato=receitaws também funciona em POST /consulta/lote - a resposta vira uma lista de envelopes no formato ReceitaWS, um por CNPJ, na mesma ordem de entrada:
[
{ "status": "OK", "cnpj": "00.776.574/0001-56", "...": "..." },
{ "status": "ERROR", "message": "CNPJ não encontrado na base de dados" }
]
Atenção: no formato ReceitaWS, um item de erro não tem o campo
cnpj(sóstatusemessage) - diferente do formato nativo, que sempre repete ocnpjem todo item. Nesse formato, casar resposta com CNPJ de entrada só é confiável pela posição no array.
Cota e limites
- Rate limit (RPM): a chamada de lote conta como 1 requisição, não como 20 - mesmo limite por minuto da consulta simples (veja Limites e planos).
- Cota mensal: debita a quantidade de CNPJs resolvidos (itens
encontrado;nao_encontrado/invalido/erronão contam). Consulte o consumo emGET /cota.
Erros
| Status | Significado |
|---|---|
401 |
API key ausente ou inválida |
403 |
Sua conta não tem um plano pago - o lote não está disponível no plano gratuito |
422 |
Corpo inválido: campo cnpjs ausente/vazio, ou mais de 20 CNPJs na lista |
429 |
Limite por minuto ou cota mensal excedidos - respeite o Retry-After |
Veja todos os códigos em Erros.
Próximos passos
- Consultar um CNPJ - a consulta simples continua disponível e sem exigir plano pago.
- Compatível com a ReceitaWS - o mesmo formato, também aceito no lote.
- Limites e planos - compare os planos pagos.
- Consultar a cota - acompanhe o consumo do mês.
Crie sua conta gratuita em https://app.cnpjapi.com.br e assine um plano pago para usar o lote.