Blueprint de automação n8n para classificar e-mails automaticamente…
INEMA
Vou dividir em Fluxo A (Classificação automática) e Fluxo B (Resumo diário no WhatsApp), com os módulos já na ordem.
Fluxo A – Classificação Automática de E-mails⌗
1. Agendador (Scheduler)⌗
- Modo: Repetir a cada 15min ou 1h (teste com Manual primeiro).
- Parâmetro: "Now minus 24h" ou "Now minus 72h" no campo de data.
2. Gmail → Search messages⌗
- Query: vazio (pegar todos).
- Options: “Include read messages” = YES.
- Time filter: Últimas 24h (ou 72h nos testes).
- Output: lista de mensagens.
3. Tools → Iterator⌗
- Itera cada mensagem individual.
4. Gmail → Get a message⌗
- Entrada: Message ID do Iterator.
- Saída: Subject, From, Body (texto simples).
5. HTTP → Make a request (Gemini 2.0 Flash)⌗
- Method: POST
- URL:
https://generativelanguage.googleapis.com/v1beta/models/gemini-2.0-flash:generateContent?key={{API_KEY}} -
Headers:
-
Content-Type: application/json - Body (JSON):
{
"contents": [{
"parts": [{
"text": "Você é um classificador de e-mails. Categorize este e-mail em UMA das categorias a seguir e retorne apenas JSON no formato {\"category\":\"<nome>\",\"confidence\":0-1}. Categorias: \n1. Consultorias\n2. Conteúdo criativo\n3. Faturas\n4. Pessoal\n5. Suporte e consultas\n6. Promoções\n7. Notificações sociais\n8. Códigos de segurança\n9. Newsletters\n10. Reservas e viagens\n11. Atualizações de serviços\n12. Spam\n\nAssunto: {{Subject}}\nCorpo: {{Body}}"
}]
}]
}
6. JSON → Parse JSON⌗
- Input: resposta do Gemini.
- Campos extraídos:
category,confidence.
7. Router (Switch por categoria)⌗
-
Caminho 1 (Importantes: Consultorias, Criativo, Faturas, Pessoal, Suporte):
-
Gmail → Add label to messages (Message ID + Label).
-
Não marcar como lido.
-
Caminho 2 (Menos importantes: Promoções, Notificações sociais, Newsletters, Reservas, Atualizações):
-
Gmail → Add label to messages.
-
Gmail → Mark message as read.
-
Caminho 3 (Spam):
-
Gmail → Delete message (ou Add label + Mark as read se preferir observar antes).
8. Error handling⌗
- Em todos os módulos: Settings → On error: Continue (output error).
- Reconectar saída de erro ao Iterator → garante que fluxo não pare.
Fluxo B – Resumo Diário no WhatsApp⌗
1. Scheduler (Daily)⌗
- Hora: 21:00.
2. Gmail → Search messages (para cada label importante)⌗
-
Labels:
-
Consultorias
- Conteúdo criativo
- Faturas
- Pessoal
- Suporte e consultas
- Pegar últimos 24h.
3. Array aggregator (ou Merge)⌗
- Junta todos os resultados em um único array.
- Campos:
Subject,From,Snippet.
4. HTTP → Make a request (Gemini 2.0 Flash)⌗
- Method: POST
- URL: mesmo do fluxo A.
- Body (JSON):
{
"contents": [{
"parts": [{
"text": "Você é um assistente especialista em resumir e-mails para WhatsApp. Gere um resumo agrupado por categoria. Use *negrito* (asteriscos) para títulos. Liste até 3 e-mails por categoria, formato: • Assunto — Remetente. Se não houver nenhum, escreva 'Hoje não há e-mails importantes'.\n\nE-mails:\n{{ArrayDeEmails}}"
}]
}]
}
5. WhatsApp → Evolution API → Send message⌗
- To: número configurado.
- Message:
``` Resumo de e-mails importantes — {{DataHoje}}
{{TextoDoGemini}} ```
Resultado esperado⌗
- Caixa de entrada sempre organizada: etiquetas automáticas + menos importantes já lidos.
- Todos os dias às 21h: resumo no WhatsApp só do que interessa.
npmjs.com/package/n8n-nodes-imap ↗
e55- Organizador de Email
e23 n8n = t.me/c/2494913847/14489 ↗
1