Consultar CNPJ no Excel
Este guia mostra como consultar CNPJ direto no Excel, sem programar: você usa o Power Query (recurso nativo do Excel) para chamar a API REST da CNPJAPI e trazer os dados da empresa - Razão Social, situação cadastral, atividade principal - para dentro da planilha. Serve para enriquecer uma coluna inteira de CNPJs de uma vez.
Antes do Power Query, o guia começa do zero: criar a conta e gerar a sua API key.
Antes de começar: crie a conta e gere a API key
Para consultar pela API você precisa de uma API key (uma chave que identifica a sua conta). É de graça para começar.
- Acesse https://app.cnpjapi.com.br e crie sua conta no plano gratuito (não pede cartão).
- Confirme o seu e-mail e faça login no portal.
- Já dentro do portal, gere a sua API key. Ela começa com
cnpj_(por exemplo,cnpj_a1b2c3...). Copie e guarde num lugar seguro - a chave é mostrada uma vez. - Essa chave vai no cabeçalho
Authorization, no formatoBearer cnpj_sua_chave, em cada requisição. O Power Query cuida disso para você (passos abaixo).
Detalhes em Autenticação. Trate a chave como uma senha: quem tem a chave consome a sua cota.
Consultar um CNPJ (uma célula)
No Excel (Windows), abra Dados → Obter Dados → De Outras Fontes → Consulta em Branco. Vai abrir o Editor do Power Query. Clique em Editor Avançado e cole:
let
Fonte = Json.Document(
Web.Contents(
"https://api.cnpjapi.com.br",
[
RelativePath = "00776574000156",
Headers = [#"Authorization" = "Bearer cnpj_sua_chave"]
]
)
)
in
Fonte
Troque 00776574000156 pelo CNPJ (apenas os 14 dígitos, sem pontuação) e cnpj_sua_chave pela sua chave. Clique em Concluído.
Por que
RelativePathem vez de colar a URL inteira? O Power Query bloqueia a atualização de fontes com URL "dinâmica". Mantendo o host fixo emWeb.Contents(...)e passando o CNPJ emRelativePath, a atualização (Refresh) continua funcionando sem avisos.
Na primeira execução o Power Query pode pedir o nível de acesso da fonte: escolha Anônimo. A chave já viaja no cabeçalho Authorization; não é preciso configurar credencial.
O resultado vem como um registro (record). Clique nos campos para expandir. Os principais:
RazaoSocial- razão social;SituacaoCadastral→Descricao- "Ativa", "Baixada", etc.;AtividadePrincipal→Descricao- CNAE principal por extenso.
Clique em Página Inicial → Fechar e Carregar para jogar o resultado na planilha.
Consultar uma coluna inteira de CNPJs
O caso mais útil: você tem uma lista de CNPJs e quer os dados de todos. A ideia é criar uma função e aplicá-la à coluna.
1. Guarde a chave num parâmetro (opcional, mas recomendado). No Editor do Power Query: Gerenciar Parâmetros → Novo Parâmetro, nome ApiKey, tipo Texto, valor atual cnpj_sua_chave. Assim a chave fica num só lugar.
2. Crie a função. Nova Consulta → Consulta em Branco → Editor Avançado e cole:
(cnpj as text) as record =>
let
Limpo = Text.Select(cnpj, {"0".."9"}),
Resposta = Web.Contents(
"https://api.cnpjapi.com.br",
[
RelativePath = Limpo,
Headers = [#"Authorization" = "Bearer " & ApiKey],
ManualStatusHandling = {404, 429}
]
),
Status = Value.Metadata(Resposta)[Response.Status],
Registro =
if Status = 200 then Json.Document(Resposta)
else [RazaoSocial = "erro " & Text.From(Status), SituacaoCadastral = null, AtividadePrincipal = null]
in
Registro
Renomeie essa consulta para ConsultarCNPJ (clique com o botão direito → Renomear). Text.Select remove pontuação, então funciona mesmo se a sua coluna tiver 00.776.574/0001-56. O ManualStatusHandling evita que um 404 (não encontrado) ou 429 (limite) derrube a atualização inteira.
3. Aplique à coluna. Selecione a consulta com a sua lista de CNPJs (por exemplo, uma tabela com a coluna CNPJ). Vá em Adicionar Coluna → Invocar Função Personalizada, escolha ConsultarCNPJ e informe a coluna CNPJ como argumento. O Power Query cria uma coluna de registros; clique no ícone de expandir (⇔) no topo dela e marque RazaoSocial, SituacaoCadastral, AtividadePrincipal. Fechar e Carregar.
Pronto: cada linha da sua planilha agora tem os dados da empresa.
Limite de requisições (e quando fazer upgrade)
O Power Query dispara as chamadas em paralelo, bem rápido. No plano gratuito, a API aceita um número limitado de consultas por minuto - ao estourar, ela responde 429 (limite atingido) e as linhas excedentes voltam com erro.
Para listas grandes você tem duas saídas:
- Dividir em lotes e atualizar aos poucos; ou
- Fazer upgrade para um plano com limite maior e cota mensal folgada, e rodar a lista inteira de uma vez.
Veja os limites por plano. Se você consulta CNPJs em planilha com frequência, um plano pago paga-se rápido em tempo economizado.
Observações
- Só funciona no Excel para Windows (o Power Query completo não existe no Excel para Mac nem no Excel Web). No Mac ou no navegador, use o Google Sheets.
- Guarde a API key com cuidado: não compartilhe a planilha com a chave embutida em quem não deveria consumir a sua cota.
Próximos passos
Crie sua conta gratuita em https://app.cnpjapi.com.br e enriqueça sua primeira planilha em minutos.