n8n: guia completo para começar (com exemplos práticos)

n8n é a ferramenta que mudou o jogo da automação no Brasil nos últimos tempos. Veja por que e como começar hoje.

RG
Rodrigo Greco

n8n é a Zapier open source que cresceu em ritmo acelerado para ser ignorada. Para qualquer um que monta automações, dominar n8n virou requisito. Este guia é o passo a passo que eu daria a um cliente que nunca abriu a ferramenta: o que é, como instalar (self-hosted ou cloud), construir o primeiro fluxo útil em pouco tempo, e três exemplos prontos que você pode adaptar para seu negócio rapidamente.

O que é n8n (e por que importa)

n8n é uma ferramenta de automação de fluxo de trabalho de código aberto. Pense nela como uma "cola digital" que conecta diferentes sistemas e aplicativos, permitindo que eles conversem entre si e executem tarefas automaticamente, sem intervenção humana. O nome significa "node-to-node", que já dá uma dica do seu funcionamento: você cria fluxos conectando nós (nodes) que representam ações ou eventos. Ela se destaca por ser um iPaaS (Integration Platform as a Service) com foco em "fair-code", o que significa que, embora seja de código aberto e permita total personalização, existe uma camada de negócios por trás para quem busca suporte ou funcionalidades específicas. Na prática, isso quer dizer que você tem a flexibilidade e o controle de uma solução open source, mas com a robustez e a comunidade que geralmente cercam projetos maiores. Para o seu negócio, n8n significa poder automatizar processos repetitivos que hoje consomem tempo e recursos. Desde a coleta de leads no site até a geração de relatórios, o n8n pode orquestrar essas tarefas. Imagine a equipe de vendas não ter que copiar manualmente dados de um formulário para o CRM. Ou receber um alerta instantâneo no WhatsApp quando o estoque de um produto crítico atinge o mínimo. Tudo isso é possível com n8n, e o grande diferencial é que você não fica preso a plataformas proprietárias que ditam como e o que você pode integrar. Para quem está iniciando com automação, um **n8n tutorial** bem feito é o primeiro passo para reduzir custos e aumentar a eficiência.

Self-hosted vs cloud: qual escolher

Esta é uma decisão fundamental para começar com n8n, e depende muito da sua necessidade e capacidade técnica.

n8n Self-hosted (Hospedagem própria):

É quando você instala e executa o n8n em seu próprio servidor, seja ele físico ou virtual (VPS, Azure, AWS, Google Cloud).

  • Vantagens: Controle total sobre os dados, privacidade máxima, custos operacionais podem ser menores a longo prazo (pagará apenas pelo servidor), personalização profunda, e pode rodar em infraestrutura local para maior performance em certos casos.
  • Desvantagens: Requer conhecimento técnico para instalação, configuração, manutenção, backups e atualizações. Você é responsável por tudo. Exige um investimento inicial de tempo e, potencialmente, de um profissional de TI.

n8n Cloud (Nuvem, gerenciada pela n8n.io):

É a versão SaaS (Software as a Service) do n8n, oferecida e gerenciada pela própria empresa n8n.io.

  • Vantagens: Facilidade de uso e configuração zero. Você se cadastra, e começa a usar rapidamente. A n8n.io cuida da infraestrutura, segurança, manutenção e atualizações. Suporte direto e rápido. Ideal para quem não quer se preocupar com aspectos técnicos.
  • Desvantagens: Custo recorrente que pode ser mais alto que um servidor self-hosted (dependendo do volume de operações). Menos flexibilidade para personalizações de infraestrutura e dependência de um terceiro.

Minha recomendação:

Se você está começando e quer validar a ferramenta sem dor de cabeça, ou se não tem uma equipe de TI dedicada, vá de n8n Cloud. É a forma mais rápida de ter um **n8n para iniciantes** funcionando em produção. Se você tem familiaridade com servidores, prioriza controle total sobre os dados ou planeja um uso intensivo com integrações muito específicas que podem demandar modificações no ambiente, o self-hosted pode ser a melhor escolha. Para este **n8n tutorial**, vou focar na lógica de construção dos fluxos, que é a mesma para ambas as versões.

Primeiro fluxo em pouco tempo

Vamos criar um fluxo simples para ilustrar **n8n como usar**. Nosso objetivo será: toda vez que você receber um novo e-mail com um assunto específico, o n8n enviará uma notificação para um canal do Slack ou um grupo do Telegram.
  1. Configuração Inicial:
    • Acesse sua instância n8n (seja cloud ou self-hosted).
    • No painel principal, clique em "Add Workflow" ou "New Workflow".
  2. Adicionar o Nó de E-mail (Trigger):
    • Busque por "IMAP Email" na barra de busca de nós e adicione-o ao canvas. Este será o nosso trigger, o evento que inicia o fluxo.
    • Configure suas credenciais de e-mail (servidor IMAP, porta, usuário, senha). O n8n precisará dessas informações para monitorar sua caixa de entrada.
    • No campo "Search Criteria", adicione uma condição. Por exemplo, "Subject" "Contains" "IMPORTANTE". Assim, o n8n só ativará o fluxo para e-mails com essa palavra no assunto.
    • Marque a opção "Run on Startup" e defina um intervalo de verificação regular.
  3. Testar o Trigger:
    • Clique em "Execute Workflow" ou "Test Workflow" no nó do IMAP.
    • Envie um e-mail para si mesmo com o assunto "IMPORTANTE: Teste n8n".
    • O n8n deverá registrar um evento. Você verá a saída de dados do e-mail no painel à direita.
  4. Adicionar o Nó de Notificação (Action):
    • Depois do nó do IMAP, adicione um nó de "Slack" ou "Telegram" (dependendo da sua preferência).
    • Configure suas credenciais (API Token para Telegram, Webhook URL para Slack). O n8n tem instruções claras para cada um.
    • No campo "Text" da mensagem, use as expressões para puxar dados do e-mail. Por exemplo, para Slack, poderia ser:
      `Novo e-mail importante de: {{ $json.from.value[0].address }} Assunto: {{ $json.subject }} Data: {{ $json.date }}`
    • Isso vai pegar o endereço do remetente, o assunto e a data do e-mail recebido e incluir na mensagem do Slack/Telegram.
  5. Testar o Fluxo Completo:
    • Clique em "Execute Workflow" no nó de notificação.
    • Envie um novo e-mail "IMPORTANTE: Segundo Teste n8n".
    • Você deverá receber a notificação no Slack/Telegram.
  6. Ativar o Fluxo:
    • No canto superior direito da tela, mude a chave de "Inativo" para "Ativo".
Parabéns! Você acabou de criar seu primeiro fluxo útil com n8n em minutos. Este **n8n tutorial** mostrou a essência de conectar um trigger a uma ação.

Exemplo 1: lead do site → CRM + WhatsApp

Este é um dos **n8n exemplos** mais solicitados e que gera valor real para equipes de vendas. O objetivo é pegar um lead preenchido num formulário do seu site, cadastrá-lo automaticamente no seu CRM e, em seguida, enviar uma notificação por WhatsApp para a equipe de vendas.
  1. Trigger: Webhook
    • Adicione um nó "Webhook". Configure-o para o método "POST". Este nó gerará uma URL única que você vai usar como "endpoint" no seu formulário do site. Sempre que alguém preencher e enviar o formulário, os dados serão enviados para essa URL.
    • Após salvar, copie a URL do webhook. No seu formulário (Contact Form 7, Elementor Forms, Google Forms, etc.), configure-o para enviar os dados para essa URL via POST após o preenchimento.
    • Execute o Webhook manualmente ou envie um formulário de teste para que o n8n capture a estrutura dos dados.
  2. Ação 1: CRM da empresa
    • Adicione um nó do seu CRM (busque pelo nome do seu CRM no n8n, ou use "HTTP Request" se ele só tiver API REST).
    • Configure suas credenciais.
    • Use as expressões para mapear os dados do Webhook para os campos correspondentes no CRM. Por exemplo, nome do formulário (`{{ $json.nome }}`) vai para o campo "Name" do contato no CRM, e-mail (`{{ $json.email }}`) para "Email", etc.
    • Crie o Deal/Oportunidade e vincule ao contato criado.
  3. Ação 2: WhatsApp (via API, e.g., Twilio, Z-API, ou soluções open-source como Venom ou Baileys)
    • Adicione um nó de "HTTP Request" para se conectar à API do WhatsApp que você utiliza.
    • Configure o método (geralmente POST) e a URL da API.
    • No corpo da requisição (JSON), componha a mensagem que será enviada. Use as expressões para incluir dados do lead:
      `{ "to": "55{{ $json.telefoneVendas }}", "body": "🚨 Novo Lead Quente! 🚨 Nome: {{ $json.nome }} Email: {{ $json.email }} Telefone: {{ $json.telefone }}" }`
    • Certifique-se de que o número de telefone do vendedor está formatado corretamente para a API do WhatsApp.
Este fluxo garante que nenhum lead seja perdido, o CRM esteja sempre atualizado e a equipe de vendas seja notificada instantaneamente, aumentando a velocidade de resposta e as chances de conversão. Um **n8n tutorial** como este mostra o potencial de integração para a PME.

Exemplo 2: classificação automática de mensagens com IA

Com a popularização das APIs de IA, como a do ChatGPT (OpenAI), é possível classificar e direcionar mensagens automaticamente. Imagine que você receba e-mails ou mensagens de formulários e precise saber se é um elogio, uma reclamação, uma sugestão ou um pedido de suporte.
  1. Trigger: E-mail ou Webhook
    • Use o nó "IMAP Email" (como no primeiro exemplo) para monitorar uma caixa de entrada específica de atendimento. Ou um "Webhook" se as mensagens vierem de um formulário de contato ou chat.
    • Para o IMAP, você pode filtrar mensagens que chegam para um determinado endereço (ex: `atendimento@suaempresa.com.br`).
  2. Ação 1: Processamento com IA (OpenAI GPT)
    • Adicione um nó "OpenAI Chat" (ou "OpenAI" para outras APIs).
    • Configure suas credenciais da API da OpenAI.
    • No campo "User Message Content", insira o texto do e-mail ou mensagem, pedindo para a IA classificá-lo. Por exemplo:
      `Classifique o seguinte texto em uma das categorias: 'Elogio', 'Reclamação', 'Sugestão', 'Suporte Técnico', 'Comercial'. Responda apenas com a categoria. Texto: {{ $json.text }}`
    • O nó vai retornar a classificação da IA, como "Reclamação" ou "Suporte Técnico".
  3. Ação 2: Roteamento Condicional (If)
    • Adicione um nó "If".
    • Configure a condição para verificar o resultado da IA. Por exemplo:
      `{{ $('OpenAI Chat').data['0'].json.choices[0].message.content }} é igual a "Suporte Técnico"`
  4. Ação 3: Direcionamento (Slack, Trello, E-mail, etc.)
    • Se a condição do "If" for verdadeira (por exemplo, "Suporte Técnico"), conecte-o a um nó "Slack" para enviar a mensagem para o canal de suporte. Ou um nó "Trello" para criar um card no board de suporte.
    • Para outras categorias, crie outros "If" e direcione para os canais ou sistemas apropriados.
    • Você pode até adicionar um passo para responder automaticamente com uma mensagem padrão, informando que a mensagem foi recebida e será encaminhada.
Este é um dos **n8n exemplos** que moderniza o atendimento ao cliente, economizando tempo precioso da equipe e garantindo que as mensagens cheguem à pessoa certa mais rápido.

Exemplo 3: relatório semanal automatizado por e-mail

Organizar relatórios pode ser maçante e consumir um tempo considerável. Com n8n, você pode automatizar a coleta de dados de diversas fontes e o envio de um relatório consolidado.
  1. Trigger: Schedule
    • Adicione um nó "Schedule" (Agendamento).
    • Configure-o para rodar semanalmente, em um dia e horário específico.
  2. Ação 1: Coleta de Dados (Google Sheets, Banco de Dados, APIs de Vendas/Marketing)
    • Adicione um nó para cada fonte de dados. Por exemplo:
      • "Google Sheets": Para puxar dados de vendas da última semana.
      • "MySQL" ou "PostgreSQL": Para extrair dados de um banco de dados próprio.
      • "HTTP Request": para acessar a API da sua plataforma de marketing automation e obter métricas de leads.
    • Configure suas credenciais e as queries/filtros para pegar os dados do período desejado.
  3. Ação 2: Processamento e Formatação (Code, Spreadsheet File)
    • Use um nó "Code" (JavaScript) para consolidar e formatar os dados de diferentes fontes em um único objeto JSON ou string HTML. Você pode somar valores, calcular médias, etc.
    • Alternativamente, para um relatório mais visual, você pode usar um nó "Spreadsheet File" para criar um arquivo Excel/CSV com os dados coletados.
    • Para quem precisa de ajuda com a parte de código, este **n8n tutorial** aqui não vai cobrir JS, mas a comunidade n8n é bem ativa.
  4. Ação 3: Envio de E-mail (SMTP Email)
    • Adicione um nó "SMTP Email".
    • Configure suas credenciais de e-mail (servidor SMTP, porta, usuário, senha).
    • No campo "To", coloque os e-mails dos destinatários (time de vendas, diretoria, etc.).
    • No "Subject", use algo como: `Relatório Semanal de Vendas - {{ (new Date()).toLocaleDateString('pt-BR') }}`.
    • No "HTML Body" ou "Text Body", insira os dados formatados do nó anterior. Se você criou um arquivo Excel, anexe-o.
Este fluxo garante que os relatórios sejam gerados e enviados pontualmente, sem falhas e sem ocupar tempo da equipe. É um dos **n8n exemplos** mais eficazes para a gestão.

Erros de iniciante que fazem n8n falhar em produção

É comum cometer alguns erros no início, mas saber quais são pode poupar muita dor de cabeça.
  1. Não testar os nós individualmente:

    Sempre teste cada nó após configurá-lo, antes de conectar ao próximo. Isso garante que cada parte do seu fluxo esteja funcionando como esperado.

  2. Ignorar o tratamento de erros:

    O que acontece se uma API externa retornar um erro? Ou se um dado estiver faltando? Use os nós "Error Trigger" e "Try/Catch" para criar rotas alternativas e notificar quando algo der errado. Um fluxo sem tratamento de erro é uma bomba relógio.

  3. Credenciais expostas no fluxo:

    Nunca coloque chaves de API, senhas ou tokens diretamente nos nós. Use as "Credentials" do n8n. Elas são criptografadas e gerenciadas de forma mais segura. Isso é básico para qualquer **n8n tutorial** mais sério.

  4. Não usar a função "Stop and Save Workflow":

    Ao desenvolver, muitas vezes você quer testar um pedaço do fluxo sem que ele continue executando ações que alteram dados reais. Use essa opção no nó para interromper a execução após um ponto específico.

  5. Agendar demais:

    Não configure seu nó "Schedule" para rodar com uma frequência muito alta se a tarefa só precisa ser executada com menor regularidade. Isso consome recursos desnecessariamente e pode gerar chamadas excessivas a APIs externas, levando a bloqueios ou custos adicionais.

  6. Não ativar o fluxo:

    Um erro básico, mas acontece. Depois de criar e testar seu fluxo, lembre-se de mudar a chave de "Inativo" para "Ativo" no canto superior direito. Caso contrário, ele não vai rodar automaticamente.

  7. Dados inconsistentes:

    Muitas APIs esperam dados em formatos específicos (número, string, booleano, array). Use nós como "Set", "Function" ou "JSON" para transformar os dados e garantir que eles cheguem no formato correto ao próximo nó.

  8. Sobrestimar a capacidade do servidor para self-hosted:

    Se você optou pelo self-hosted, certifique-se de que o servidor tem recursos (CPU, RAM) suficientes para a quantidade de fluxos e o volume de execuções que você planeja. Fluxos muito complexos ou com muitas execuções podem exigir mais.

Perguntas frequentes

n8n é gratuito?

Sim, em modo self-hosted. A versão cloud tem um custo.

Preciso saber programar para usar n8n?

Não para fluxos básicos. JavaScript ajuda para transformações de dados avançadas.