O que é e por que usar
Um chatbot de FAQ (Frequently Asked Questions) é uma ferramenta que responde automaticamente a perguntas comuns de usuários, reduzindo o volume de atendimento humano e acelerando o tempo de resposta. Com o n8n, você pode construir esse chatbot sem escrever uma linha de código, conectando APIs de mensageria (como Telegram, WhatsApp ou Slack) a fontes de dados como bancos vetoriais, JSONs ou APIs externas.
O n8n é uma plataforma de automação de código aberto que permite criar fluxos complexos com uma interface visual. Em vez de depender de soluções prontas e caras, você pode montar seu próprio FAQ bot integrando ao seu banco de conhecimento existente. A grande vantagem é a flexibilidade: você decide quais fontes de dados usar, como tratar respostas e por quais canais entregar.
Segundo dados internos de empresas que implementaram chatbots de FAQ com n8n, a redução no ticket de suporte chega a 40-60%, com tempo médio de resposta caindo de horas para segundos. Além disso, o custo operacional é significativamente menor do que contratar uma plataforma SaaS de chatbot.
Pré-requisitos
- Instância do n8n – auto-hospedada ou na nuvem (n8n.cloud).
- Conta no serviço de mensageria (Telegram, WhatsApp Business API, Slack ou Discord). Vou usar Telegram para o exemplo, por ser mais simples de configurar.
- Fonte de dados de FAQ – pode ser um arquivo JSON, uma Airtable, uma planilha do Google Sheets ou até uma API externa (ex.: Confluence, Notion).
- Conhecimento básico do n8n – saber criar workflows e conectar nós.
- Opcional: contra de armazenamento vetorial (como Qdrant ou Pinecone) se quiser respostas semânticas (não usarei neste exemplo para manter a simplicidade).
Exemplo Prático: Chatbot de FAQ para suporte de um SaaS de gestão de projetos

Cenário: Você administra um pequeno SaaS chamado “ProjManager”. Diariamente, recebe dezenas de perguntas repetitivas sobre como criar projetos, convidar membros, alterar prazos e recuperar senha. A equipe de suporte de 3 pessoas gasta cerca de 4 horas por dia respondendo essas perguntas comuns.
O que será automatizado: Um chatbot no Telegram que recebe perguntas dos usuários, busca a resposta mais adequada em uma base de pares (pergunta + resposta) armazenada em um arquivo JSON no próprio n8n, e envia a resposta de volta. Se não encontrar correspondência, encaminha a mensagem para um grupo de suporte humano.
Resultado esperado: Redução de 70% das interações de suporte repetitivas, respostas instantâneas (menos de 2 segundos), e possibilidade de a equipe focar em problemas complexos.
Configuração Passo a Passo
1. Criar o bot no Telegram e obter o token
- No Telegram, procure por BotFather.
- Envie o comando
/newbote siga as instruções para criar um novo bot (ex.: ProjManagerFAQBot). - O BotFather fornecerá um token de API (ex.:
123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11). Guarde-o. - Inicie uma conversa com o bot e envie
/startpara ativá-lo.
2. Estruturar a base de FAQ em JSON
No n8n, crie um nó “Manual Trigger” inicial, mas no final nosso trigger será o “Telegram Trigger”. A base FAQ será um JSON armazenado em um nó “Code” ou “Set”.
[
{
"pergunta": "Como criar um novo projeto?",
"resposta": "Para criar um projeto no ProjManager, clique em **+ Novo Projeto** no painel esquerdo, preencha o nome e descrição e clique em **Criar**."
},
{
"pergunta": "Como convidar um membro para o projeto?",
"resposta": "Acesse o projeto desejado, vá em **Membros** > **Convidar** e insira o e-mail do usuário. Ele receberá um link de convite."
},
{
"pergunta": "Como alterar o prazo de uma tarefa?",
"resposta": "Clique na tarefa, vá no campo **Prazo** e selecione a nova data. Salve as alterações."
},
{
"pergunta": "Esqueci minha senha",
"resposta": "Na tela de login, clique em **Esqueceu a senha?** e siga as instruções enviadas para seu e-mail."
}
]
3. Montar o workflow no n8n
- Nó de Trigger: Telegram Trigger
- Tipo: Telegram Trigger
- Credenciais: adicione o token do bot.
- Atualização: opção “message” para capturar qualquer mensagem.
- Nota: o n8n criará um webhook automaticamente. Você precisa informar ao Telegram para onde enviar as atualizações (o n8n faz isso se você usar o Webhook do Telegram Trigger).
- Nó de Preparação: Set (ou Function)
- Propósito: extrair o texto da mensagem e o chatId do Telegram.
- Configuração: Usar “Set” com expressões:
{{ $json.message.text }}para o texto da pergunta.
{{ $json.message.chat.id }}para o chat ID.
- Nó de Busca: Code Node (ou Workflow específico)
- Este nó fará a correspondência entre a pergunta do usuário e a base JSON.
- Insira o JSON da FAQ dentro do código (ou use um nó “Switch” para cada pergunta, mas não escalaria).
- Exemplo de código JavaScript para busca simples (case-insensitive e por palavras-chave):
// Code Node
const faq = [
{ pergunta: "como criar um novo projeto", resposta: "..." },
{ pergunta: "como convidar um membro", resposta: "..." },
// ... demais
];
const userQuestion = $input.first().json.message.text.toLowerCase();
let found = null;
for (let item of faq) {
if (userQuestion.includes(item.pergunta) || item.pergunta.includes(userQuestion)) {
found = item.resposta;
break;
}
}
if (found) {
return [{ resposta: found, chatId: $input.first().json.message.chat.id }];
} else {
return [{ resposta: null, chatId: $input.first().json.message.chat.id, originalMessage: userQuestion }];
}
Esse código retorna a resposta ou null quando não acha.
- Nó de Decisão: IF
- Condição:
{{ $json.resposta !== null }} - Se true (resposta encontrada): vai para o nó Telegram Send Message.
- Se false (não encontrou): vai para um nó que encaminha para o grupo de suporte.
- Condição:
- Nó de Resposta: Telegram Send Message
- Tipo: Telegram > Send Message
- Chat ID:
{{ $json.chatId }} - Text:
{{ $json.resposta }} - Parse Mode: Markdown (opcional, para formatar a resposta do FAQ).
- Nó de Encaminhamento: Telegram Send Message (ou outro)
- Enviar para um chat/grupo de suporte (ID fixo do grupo).
- Text: “Pergunta não encontrada: {{ $json.originalMessage }}”
4. Ativar o workflow
Clique em “Active” no workflow. O n8n criará um webhook automaticamente. Teste enviando uma mensagem para o seu bot.
Dicas e Variações
- Use um banco de dados real – Em vez de JSON estático, conecte a uma Airtable ou Supabase. Assim você pode atualizar as FAQs sem alterar o workflow. Basta usar o nó “Airtable” ou “Postgres” para buscar os dados.
- Implemente busca semântica com embeddings – Para capturar perguntas escritas de formas diferentes, armazene os embeddings das perguntas em um vetor store (ex.: Qdrant) e use o nó “Embeddings OpenAI” para transformar a pergunta do usuário em vetor e buscar a mais similar.
- Mantenha histórico de conversas – Use um nó “Redis” ou “Postgres” para armazenar o contexto, permitindo que o chatbot responda perguntas de acompanhamento (ex.: “e como excluir um projeto?”).
- Limite de taxa – Se o bot receber muitas mensagens, adicione um nó “Delay” ou “Rate Limit” para evitar bloqueios do Telegram.
- Personalize respostas – Use variáveis como nome do usuário, extraído do firstName do Telegram, para deixar a resposta mais humana.
Erros Comuns e Como Evitá-los

- Webhook não configurado – Ao criar o Telegram Trigger, o n8n tenta configurar o webhook automaticamente, mas se falhar, você pode definir manualmente: POST para
https://api.telegram.org/bot<token>/setWebhook?url=<seu-webhook-n8n>. - Resposta muito longa – O Telegram limita mensagens a 4096 caracteres. Se sua resposta ultrapassar, divida em múltiplas mensagens ou use um nó “Code” para truncar.
- Case sensitivity na busca – No código de exemplo, convertemos tudo para minúsculas. Não esqueça de fazer o mesmo com a base para evitar que “Como Criar” não seja encontrado.
- Respostas duplicadas – Se sua base tiver perguntas muito similares, a busca pode retornar a primeira correspondência. Considere usar uma lógica de “melhor correspondência” baseada em contagem de palavras em comum.
- Loop infinito – Se o bot responder em um grupo onde ele próprio está monitorando, pode gerar loop. Certifique-se de ignorar mensagens do próprio bot (verifique o campo
from.is_botno código).
Próximos Passos
Agora que você tem um chatbot funcional, leve a automação adiante:
- Adicione um painel de monitoramento – Conecte um nó “Google Sheets” para registrar cada pergunta recebida, se houve resposta automática ou encaminhamento humano. Assim você pode identificar lacunas na base de FAQ.
- Expanda para outros canais – Repita o fluxo para WhatsApp (usando Twilio), Slack ou até mesmo um widget no site (via webhook HTTP). O n8n permite duplicar o trigger e encaminhar para o mesmo nó de decisão.
- Implemente feedback do usuário – Após enviar a resposta, pergunte “Isso resolveu sua dúvida? (sim/não)”. Use um código que aguarde a próxima mensagem e, se for “não”, encaminhe para suporte humano.
- Integre com seu sistema de tickets – Se a pergunta não for respondida, crie automaticamente um ticket no sistema (ex.: Zendesk, Jira) com o conteúdo da mensagem, usando o nó HTTP Request.
- Compartilhe o workflow – O n8n permite exportar o fluxo como JSON. Publique em comunidades ou no blog rotinas.net com exemplos práticos, ajudando outros profissionais.
Comece com o exemplo simples deste artigo e evolua incrementalmente. Um chatbot de FAQ bem construído pode transformar o suporte ao cliente e liberar horas preciosas da sua equipe.
Gostou do conteúdo? Inscreva-se para receber as novidades:


Comments are closed