Brancher une IA dans n8n pour trier ses emails automatiquement
- 01Un nœud HTTP Request suffit à appeler une IA depuis n8n, sans connecteur dédié.
- 02Demande à l'IA une sortie structurée (JSON) : c'est ce qui rend la réponse exploitable par la suite du workflow.
- 03Un nœud Switch dispatche chaque mail selon la catégorie renvoyée, et un cas par défaut évite que le workflow plante.
À la fin de ce tuto, tu auras un workflow n8n qui, à chaque mail entrant, demande à une IA de le classer (urgent / commercial / spam / autre) et de le résumer, puis route chaque catégorie au bon endroit — notification pour les urgents, tableur pour les commerciaux, archivage pour le spam. Tout se fait sans connecteur magique : un simple appel API. Tu sauras aussi gérer proprement les cas d'échec.
Durée : 40 min. Prérequis : avoir fait le tuto « Découvrir n8n », un accès mail IMAP, une clé API d'un fournisseur d'IA (Mistral, OpenAI, ou Ollama en local).
L'architecture du workflow
[Email Trigger (IMAP)] → [HTTP Request: IA] → [Code: parse JSON] → [Switch] → actions
- Email Trigger (IMAP) : se déclenche à chaque nouveau mail.
- HTTP Request : envoie le contenu du mail à l'IA et récupère sa classification.
- Code : extrait proprement le JSON renvoyé.
- Switch : aiguille selon la catégorie.
Étape 1 — Le déclencheur : Email Trigger (IMAP)
Ajoute un nœud Email Trigger (IMAP). Renseigne les paramètres IMAP de ta boîte (serveur, port 993, identifiants — pour Gmail, génère un « mot de passe d'application »). À chaque nouveau mail, le nœud sort un item avec les champs subject, from, text (le corps).
Étape 2 — Appeler l'IA avec le nœud HTTP Request
Pas besoin de nœud spécial. Ajoute un HTTP Request configuré ainsi :
- Method :
POST - URL : l'endpoint de ton modèle. Exemples :
- Mistral :
https://api.mistral.ai/v1/chat/completions - OpenAI :
https://api.openai.com/v1/chat/completions - Ollama (local) :
http://localhost:11434/v1/chat/completions
- Mistral :
- Authentication : « Header Auth » → header
Authorization=Bearer TA_CLÉ(inutile pour Ollama). Mieux : stocke la clé dans les Credentials n8n plutôt qu'en dur. - Body (JSON) : c'est le cœur. On conçoit le prompt pour obtenir une sortie structurée.
{
"model": "mistral-small-latest",
"messages": [
{
"role": "system",
"content": "Tu es un assistant de tri d'emails. Classe le mail dans EXACTEMENT une catégorie : urgent, commercial, spam, autre. Résume-le en une phrase. Réponds UNIQUEMENT en JSON valide, sans texte autour : {\"categorie\": \"...\", \"resume\": \"...\"}"
},
{
"role": "user",
"content": "Objet : {{ $json.subject }}\n\nCorps : {{ $json.text }}"
}
]
}
Le {{ $json.subject }} et {{ $json.text }} injectent le mail reçu du nœud précédent. Demander du JSON est essentiel : c'est ce qui rend la réponse exploitable par la machine plutôt que par un humain.
Étape 3 — Récupérer la réponse proprement (nœud Code)
Les IA renvoient parfois le JSON entouré de texte ou de balises ```json. Ajoute un nœud Code pour extraire et parser de façon robuste :
// La réponse brute du modèle
const raw = $input.first().json.choices[0].message.content;
// Nettoie d'éventuelles balises markdown autour du JSON
const clean = raw.replace(/```json|```/g, "").trim();
let data;
try {
data = JSON.parse(clean);
} catch (e) {
// Filet de sécurité : si le JSON est invalide, on route vers "autre"
data = { categorie: "autre", resume: "(classification illisible)" };
}
return { json: data };
Tu obtiens maintenant un objet propre { categorie, resume }, avec un repli si l'IA a mal répondu.
Étape 4 — Router avec le nœud Switch
Ajoute un Switch sur le champ {{ $json.categorie }}. Crée une sortie par valeur :
urgent→ nœud Telegram (ou Slack) : notification immédiate avec leresume.commercial→ nœud Google Sheets : Add Row : on logue dans un CRM/tableur.spam→ nœud IMAP : Move vers le dossier Corbeille (ou rien).- Default (cas par défaut) → on laisse en boîte, rien à faire.
Le cas Default est important : sans lui, un mail dont la catégorie ne correspond à aucune branche bloquerait le workflow.
Étape 5 — Tester avec un vrai mail
Envoie-toi un mail de test « urgent » bien identifiable, puis Execute Workflow. Suis le parcours : clique chaque nœud pour voir l'Input/Output. Vérifie surtout la sortie du nœud HTTP Request (le JSON brut de l'IA) et celle du nœud Code (l'objet parsé). Si le Switch n'aiguille pas, c'est presque toujours que categorie ne contient pas exactement la valeur attendue — regarde l'Output du nœud Code.
Les réflexes coût et fiabilité
- Choisis un petit modèle : trier un mail ne demande pas le modèle le plus cher.
mistral-smallou un modèle local suffisent largement. - Limite la sortie : la réponse JSON ne fait que quelques tokens, pas besoin de plus (voir le tuto sur les tokens).
- Prévois toujours le cas d'échec : JSON invalide →
autre(déjà fait dans le nœud Code), plutôt que de planter tout le workflow. - Confidentialité : si les mails sont sensibles, pointe vers Ollama en local — rien ne sort de ton infrastructure.
L'adapter à tes besoins
Le motif « déclencheur → IA en JSON → parse → Switch » se recycle partout :
- Classer des tickets de support par urgence et thème.
- Trier des candidatures reçues par formulaire.
- Étiqueter des avis clients (positif/négatif/à traiter).
Tu changes le prompt et les catégories ; la mécanique reste identique.
À retenir
Pour mettre de l'IA dans n8n, pas besoin d'outil dédié : un nœud HTTP Request appelle l'API, un prompt qui impose du JSON rend la réponse exploitable, un nœud Code la parse proprement (avec repli), et un nœud Switch route le reste. Le secret d'une automatisation IA fiable, c'est la sortie structurée : tant que l'IA répond en JSON propre, le reste du workflow s'enchaîne tout seul.
Articles liés
Découvrir n8n : créer son premier workflow d'automatisation
Installer n8n en local et construire, nœud par nœud, un vrai workflow : chaque matin, un résumé des nouveaux articles RSS dans ta boîte mail. Avec le panneau d'exécution pour déboguer comme un pro.
Automatisation vs Agent dans n8n — et pourquoi la frontière est floue
Quand un nœud LLM dans n8n choisit entre plusieurs actions, est-ce un agent ? Ça dépend de comment tu l'as câblé — voici la distinction utile.

Hark lance Handoff, un agent navigateur pour automatiser des tâches en ligne
Un nouvel agent IA promet d'exécuter des tâches en ligne plus rapidement et à moindre coût que ses concurrents.