⏱️ Guide des Nodes de Séquençage N8N

Les meilleurs outils pour orchestrer vos événements dans le temps
⏸️

Wait (Attendre)

n8n-nodes-base.wait Facile

🎯 Quand l'utiliser ?

  • Ajouter un délai entre deux actions
  • Attendre qu'un service externe se prépare
  • Espacer des appels API pour respecter les rate limits
  • Simuler un comportement humain (anti-bot)
  • Attendre une date/heure spécifique

Exemple visuel :

Envoi Email
Wait 24h
Email Relance
{
  "parameters": {
    "unit": "hours",
    "amount": 24
  }
}

// OU attendre jusqu'à une date précise
{
  "parameters": {
    "resume": "specificTime",
    "dateTime": "2025-12-25T09:00:00.000Z"
  }
}

✅ Avantages

  • Simple à configurer
  • Ne consomme pas de ressources pendant l'attente
  • Supporte secondes/minutes/heures/jours

⚠️ Limitations

  • Maximum 30 jours d'attente
  • Le workflow reste "actif"
  • Peut être coûteux sur N8N Cloud
📅

Schedule Trigger

n8n-nodes-base.scheduleTrigger Facile

🎯 Quand l'utiliser ?

  • Déclencher un workflow à heure fixe (cron-like)
  • Tâches récurrentes quotidiennes/hebdomadaires
  • Rapports automatiques chaque lundi matin
  • Backup automatique tous les jours à 2h du matin
  • Synchronisation de données toutes les heures

Exemple visuel :

Schedule: Lun-Ven 9h
Récupère Données
Génère Rapport
// Tous les jours à 9h du matin
{
  "parameters": {
    "rule": {
      "interval": [
        {
          "field": "hours",
          "hoursInterval": 1
        }
      ]
    },
    "triggerTimes": {
      "item": [
        {
          "hour": 9,
          "minute": 0
        }
      ]
    }
  }
}

// Avec expression Cron (plus flexible)
{
  "parameters": {
    "mode": "custom",
    "cronExpression": "0 9 * * 1-5" // Lun-Ven à 9h
  }
}

✅ Avantages

  • Parfait pour automatisations récurrentes
  • Très fiable (basé sur cron)
  • Pas de coût d'exécution entre les triggers

⚠️ Limitations

  • Pas adapté pour attentes dynamiques
  • Nécessite workflow toujours actif
  • Timezone à bien configurer
🔄

Loop Over Items

n8n-nodes-base.splitInBatches Moyen

🎯 Quand l'utiliser ?

  • Traiter une liste d'éléments un par un
  • Faire des appels API séquentiels avec pause
  • Envoyer des emails espacés (éviter le spam)
  • Traiter 1000+ items sans surcharger le système
  • Ajouter un délai entre chaque itération

Exemple visuel :

100 Contacts
Loop (10 par batch)
Envoie Email
Wait 5s
{
  "parameters": {
    "batchSize": 10,  // Traite 10 items à la fois
    "options": {
      "reset": false
    }
  }
}

// Combiné avec Wait pour espacer les batchs
// Connectez: Loop → Action → Wait → Loop (reboucle)

✅ Avantages

  • Traite grandes quantités de données
  • Évite les timeouts
  • Contrôle précis du flux

⚠️ Limitations

  • Configuration plus complexe
  • Risque de boucles infinies si mal configuré
  • Monitoring plus difficile
🔗

Execute Workflow

n8n-nodes-base.executeWorkflow Moyen

🎯 Quand l'utiliser ?

  • Orchestrer plusieurs workflows en séquence
  • Réutiliser un workflow complexe comme sous-routine
  • Créer des pipelines multi-étapes modulaires
  • Déléguer des tâches à des agents spécialisés
  • Architecture multi-agents propre

Exemple visuel : Pipeline de traitement

Workflow Principal
Execute: Agent Recherche
Execute: Agent Analyse
Résultat Final
{
  "parameters": {
    "source": "database",  // ou "localFile" pour workflow ID
    "workflowId": "workflow-id-here",
    "waitForSubWorkflow": true  // Attend la fin avant de continuer
  }
}

// Passer des données au sub-workflow
// Les données du node précédent sont automatiquement passées

✅ Avantages

  • Modulaire et maintenable
  • Réutilisation de logique
  • Parfait pour multi-agents
  • Facilite le debugging

⚠️ Limitations

  • Complexité de gestion augmente
  • Plus difficile à visualiser globalement
  • Peut impacter les performances
💻

Code Node (JavaScript)

n8n-nodes-base.code Avancé

🎯 Quand l'utiliser ?

  • Logique de séquençage très personnalisée
  • Conditions complexes pour délais dynamiques
  • Boucles avec logique métier avancée
  • Quand les nodes standards ne suffisent pas
  • Algorithmes de retry avec backoff exponentiel
// Exemple : Retry avec backoff exponentiel
for (let i = 0; i < 3; i++) {
  try {
    // Tentative d'action
    const result = await $http.request({
      url: 'https://api.example.com/data',
      method: 'GET'
    });
    
    return result; // Succès, on sort
    
  } catch (error) {
    if (i === 2) throw error; // Dernière tentative
    
    // Attendre avant retry : 2s, 4s, 8s
    const delay = Math.pow(2, i + 1) * 1000;
    await new Promise(resolve => setTimeout(resolve, delay));
  }
}

// Exemple : Séquence conditionnelle
const items = $input.all();
const results = [];

for (const item of items) {
  // Traitement
  const processed = await processItem(item);
  results.push(processed);
  
  // Délai dynamique basé sur priorité
  const delay = item.json.priority === 'high' ? 0 : 5000;
  if (delay > 0) {
    await new Promise(resolve => setTimeout(resolve, delay));
  }
}

return results;

✅ Avantages

  • Flexibilité maximale
  • Logique complexe possible
  • Contrôle total du flow
  • Peut remplacer plusieurs nodes

⚠️ Limitations

  • Nécessite compétences JavaScript
  • Plus difficile à maintenir
  • Moins visuel que les nodes
  • Debugging plus complexe

📊 Tableau Comparatif Rapide

Node Cas d'usage principal Complexité Délai max
Wait Pause simple entre actions Facile 30 jours
Schedule Trigger Déclencher à heure fixe Facile Infini (récurrent)
Loop Over Items Traiter liste avec espacement Moyen Selon config
Execute Workflow Orchestration multi-workflows Moyen N/A
Code Node Logique custom complexe Avancé Illimité

💡 Meilleures Pratiques de Séquençage

🎯 Scénarios Pratiques

Scénario 1 : Campagne Email en 3 temps

Nouvel inscrit
Email bienvenue
Wait 3 jours
Email conseils
Wait 7 jours
Email offre spéciale

Nodes utilisés : Webhook Trigger + 2x Wait + 3x Send Email

Scénario 2 : Rapport automatique hebdomadaire

Schedule: Lun 8h
Récupère données Google Sheets
Génère graphiques
Envoie PDF par email

Nodes utilisés : Schedule Trigger (cron: 0 8 * * 1) + Google Sheets + Code + Email

Scénario 3 : Traitement batch de 1000 images

1000 images
Loop (50 par batch)
API compression
Wait 10s

Nodes utilisés : Split In Batches (50) + HTTP Request + Wait + Loop back