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.

  1. Acesse https://app.cnpjapi.com.br e crie sua conta no plano gratuito (não pede cartão).
  2. Confirme o seu e-mail e faça login no portal.
  3. 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.
  4. Essa chave vai no cabeçalho Authorization, no formato Bearer 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 RelativePath em vez de colar a URL inteira? O Power Query bloqueia a atualização de fontes com URL "dinâmica". Mantendo o host fixo em Web.Contents(...) e passando o CNPJ em RelativePath, 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;
  • SituacaoCadastralDescricao - "Ativa", "Baixada", etc.;
  • AtividadePrincipalDescricao - 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.