n8n - Enriquecer planilha a partir de lista de sites de empresas

Integração Econodata + n8n

Como criar no n8n o workflow "Enriquecer planilha a partir de lista de sites" da Econodata


Este guia mostra, do zero e em linguagem simples, como montar manualmente um fluxo (workflow) no n8n que:


  1. Lê uma planilha do Google Sheets contendo uma lista de sites de empresas.
  2. Para cada site, consulta a API da Econodata e busca os dados da empresa correspondente.
  3. Atualiza a própria planilha, preenchendo as colunas com os dados retornados (CNPJ, razão social, nome fantasia, tipo de unidade, UF, cidade e o melhor site identificado).


Ao final, você terá o mesmo resultado do arquivo Econodata API - Enriquecer planilha a partir de lista de sites.json, porém construído à mão.


Download dos arquivos (Workflow + Planilha)
O workflow descrito pode ser baixado através deste link e importado no n8n.
A planilha Google Sheets pode ser baixada através deste link e importada no seu Google Drive.




Antes de começar


Você vai precisar de:


  • Uma conta no n8n (na nuvem ou instalada por conta própria).
  • Um token de acesso da API Econodata (peça ao responsável da sua conta, se ainda não tiver).
  • Uma conta Google com permissão para editar uma planilha do Google Sheets.
  • Uma planilha pronta no Google Sheets contendo, no mínimo, uma coluna site preenchida com os domínios das empresas que você quer enriquecer.




Visão geral do fluxo


O workflow tem 5 nós organizados assim:


[Manual Trigger]


[Google Sheets: Get row(s)]


[Split Out: site]


[Loop Over Items] ──► [HTTP Request: POST /companies/search]
│ │
│◄──────────────────────┘
│ (após processar todos os batches)

[Google Sheets: Update row]


Em palavras:


  1. Você dispara o fluxo manualmente.
  2. O n8n lê todas as linhas da planilha.
  3. Quebra a lista em itens individuais (um por linha).
  4. Entra em um loop que, para cada site, chama a API Econodata.
  5. Ao final do loop, atualiza cada linha da planilha com os dados retornados.




Estrutura esperada da planilha


A planilha alvo (no exemplo, ecdt-crm, aba leads-sites) precisa ter na primeira linha os seguintes cabeçalhos:


site

cnpj

razaoSocial

nomeFantasia

tipoUnidade

uf

cidade


  • A coluna site deve estar preenchida com os domínios que você quer consultar (ex.: econodata.com.br).
  • As demais colunas podem começar vazias — o workflow vai preenchê-las.


💡 O n8n também usa internamente uma coluna chamada row_number, que é gerada automaticamente pela leitura da planilha. Você não precisa criar essa coluna manualmente.




Passo 1 — Criar as credenciais no n8n


1.1 — Credencial "Header Auth" (API da Econodata)


  1. No menu lateral do n8n, clique em Credentials > New.
  2. Procure por Header Auth e selecione.
  3. Preencha:
    • Name (do header): o nome do header de autenticação x-api-token exigido pela API Econodata conforme a documentação da API.
    • Value: seu token de acesso da Econodata.
  4. Salve com um nome fácil de lembrar, como Header Auth account.


1.2 — Autenticação Google


  1. Autentique-se na sua conta Google.




Passo 2 — Criar um novo workflow


  1. No n8n, clique em Workflows > Add workflow.
  2. Dê um nome, por exemplo: Econodata API - Enriquecer planilha a partir de lista de sites.
  3. Salve o workflow vazio.




Passo 3 — Adicionar o nó Manual Trigger (gatilho)


Esse nó dispara o fluxo quando você clica em Execute workflow.


  1. Clique no botão + no canvas e procure por Manual Trigger (também chamado de When clicking 'Execute workflow').
  2. Não há configuração — apenas adicione e salve.




Passo 4 — Adicionar o nó Google Sheets — Get row(s) in sheet


Esse nó lê todas as linhas da planilha.


  1. Clique no + após o Manual Trigger e procure por Google Sheets.
  2. Selecione a operação Get row(s) in sheet.
  3. Configure:
    • Authentication: Service Account
    • Credential: selecione a credencial do Passo 1.2.
    • Resource: Sheet Within Document
    • Operation: Get Row(s)
    • Document: selecione a sua planilha (no exemplo, ecdt-crm).
    • Sheet: selecione a aba (no exemplo, leads-sites).
  4. Salve.


O resultado desse nó será uma lista de objetos, cada um representando uma linha da planilha (com os campos site, cnpj, razaoSocial, etc., além de row_number).




Passo 5 — Adicionar o nó Split Out


Esse nó garante que cada linha vire um item separado para o loop.


  1. Conecte o Get row(s) in sheet ao novo nó.
  2. Procure por Split Out e adicione.
  3. Configure:
    • Field To Split Out: site
  4. Salve.




Passo 6 — Adicionar o nó Loop Over Items


Esse é o nó que processa um site por vez (ou em pequenos lotes).


  1. Conecte o Split Out ao novo nó.
  2. Procure por Loop Over Items (também chamado Split In Batches) e adicione.
  3. Pode deixar as opções no padrão.
  4. Salve.


Esse nó tem duas saídas: uma para o "loop" (cada item processado) e outra para o "done" (depois que todos os itens foram processados). Vamos conectar as duas a seguir.




Passo 7 — Adicionar o nó HTTP Request (consulta na API Econodata)


Esse nó faz a busca dos dados da empresa pelo site.


  1. Conecte a saída de loop do Loop Over Items (a que processa cada item) ao novo nó.
  2. Procure por HTTP Request e adicione.
  3. Configure:
    • Method: POST
    • URL: https://api.econodata.com.br/ecdt-api/v3/companies/search
    • Authentication: Generic Credential Type
    • Generic Auth Type: Header Auth
    • Credential for Header Auth: selecione a credencial criada no Passo 1.1.
    • Send Body: ative.
    • Body Content Type: Form Urlencoded (ou Using Fields Below, conforme a versão do n8n).
    • Body Parameters: adicione um parâmetro:
      • Name: site
      • Value (expressão): ={{ $json.site }}
  4. Em Settings do nó:
    • On Error: Continue (using error output) — assim o fluxo segue mesmo se um site não retornar resultado.
  5. Salve.


7.1 — Conectar a saída do HTTP Request de volta ao Loop


  1. Conecte a saída do HTTP Request de volta ao Loop Over Items (na entrada principal do loop).


Esse retorno é o que faz o loop avançar para o próximo item. Sem essa conexão, o loop não funciona corretamente.




Passo 8 — Adicionar o nó Google Sheets — Update row in sheet


Esse nó atualiza cada linha da planilha com os dados retornados pela API.


  1. Conecte a outra saída do Loop Over Items (a saída "done", que dispara após o loop terminar) ao novo nó.
  2. Procure por Google Sheets e selecione a operação Update row in sheet.
  3. Configure:
    • Authentication: Service Account
    • Credential: mesma do Passo 1.2.
    • Resource: Sheet Within Document
    • Operation: Update
    • Document: mesma planilha (ecdt-crm-n8n).
    • Sheet: mesma aba (leads-sites).
    • Mapping Mode: Map Each Column Manually (Define Below).
    • Column to match on: row_number
  4. No mapeamento de colunas, preencha:


Coluna na planilha

Valor (expressão)

cnpj

={{ $json.cnpj }}

razaoSocial

={{ $json.razaoSocial }}

nomeFantasia

={{ $json.nomeFantasia }}

tipoUnidade

={{ $json.tipoUnidade }}

uf

={{ $json.uf }}

cidade

={{ $json.cidade }}

site

={{ $json.melhorSite }}

row_number

={{ $('Get row(s) in sheet').item.json.row_number }}


  1. Salve.


💡 A coluna site é atualizada com $json.melhorSite, que é o domínio "oficial" identificado pela Econodata para aquela empresa (pode ser diferente do site originalmente informado).


💡 O row_number vem do nó de leitura inicial, garantindo que cada linha seja atualizada na posição correta.




Passo 9 — Conferir todas as conexões


Confirme que o fluxo ficou ligado assim:


  • Manual TriggerGet row(s) in sheet
  • Get row(s) in sheetSplit Out
  • Split OutLoop Over Items
  • Loop Over Items (saída de loop)HTTP Request
  • HTTP RequestLoop Over Items (de volta, fechando o loop)
  • Loop Over Items (saída done)Update row in sheet




Passo 10 — Executar e testar


  1. Garanta que sua planilha tem a coluna site preenchida com pelo menos alguns domínios para teste.
  2. No topo do workflow, clique em Execute workflow.
  3. Acompanhe a execução: cada nó deve ficar com o ícone verde quando finalizar.
  4. Abra a planilha no Google Sheets e confirme:
    • As colunas cnpj, razaoSocial, nomeFantasia, tipoUnidade, uf e cidade foram preenchidas.
    • A coluna site foi atualizada com o "melhor site" identificado pela Econodata.




Dicas e melhorias recomendadas


  • Limitar a quantidade por execução: se sua planilha tem muitos sites, configure o Loop Over Items com um Batch Size pequeno (ex.: 10) para não estourar limites da API.
  • Backup da planilha: antes da primeira execução em massa, faça uma cópia da planilha. Como o fluxo atualiza linhas existentes, é bom ter um ponto de retorno.




Endpoint utilizado (resumo)



A autenticação é feita via Header Auth com o token da API Econodata.

Actualizado em: 07/05/2026

Esse artigo foi útil?

Partilhe o seu feedback

Cancelar

Obrigado!