Aller au contenu principal

Nœud Switch

Le nœud Switch permet de créer des branchements multiples basés sur la valeur d'une variable.

Paramètres​

ParamètreTypeObligatoireDéfautDescription
VariableVariable Handlebars✅—Valeur à évaluer pour router vers une branche.
CasesListe✅—Liste des cas de correspondance et de leurs branches associées.
Si la variable ne correspond à aucun des casChoix✅—Choix obligatoire : Une erreur est déclenchée ou Mise en place d'un chemin par défaut.

Variable​

Variable à évaluer :

  • Variable du contexte : {{status}}
  • Propriété d'un objet : {{order.status}}
  • Résultat d'un nœud : {{lastResponse.data.type}}

La référence s'écrit avec ou sans doubles accolades (context.status ou {{context.status}}) Nouveauté. La coloration Handlebars s'affiche dans les deux cas.

Cases​

Définissez les différents cas :

  • Case 1 : Valeur à comparer (ex: "pending")
  • Case 2 : Autre valeur (ex: "processing")
  • Case 3 : Autre valeur (ex: "completed")

Si la variable ne correspond à aucun des cas​

Champ obligatoire avec deux choix :

  • Une erreur est déclenchée
  • Mise en place d'un chemin par défaut — par défaut, une branche default est créée

Entrée​

Le nœud reçoit la valeur d'une variable du contexte du flux — donnée du déclencheur, propriété d'un objet ou résultat d'un nœud précédent — et la compare aux cases définies.

Sortie​

Le nœud ne produit pas de valeur dans le contexte : il route l'exécution vers la branche correspondante.

  • La branche dont la case correspond à la valeur de la variable est exécutée
  • Si aucune correspondance : soit une erreur est déclenchée, soit la branche du chemin par défaut est exécutée

Erreurs​

Si la variable ne correspond à aucun des cas et que l'option Une erreur est déclenchée est choisie, une erreur interrompt l'exécution du flux. Pour gérer proprement l'échec, ajoutez un nœud On Error au flux.

Exemple​

Le nœud est utilisé pour :

  • Router vers différentes branches selon une valeur
  • Implémenter une logique de type switch/case
  • Gérer plusieurs cas de figure
  • Créer des flux dynamiques

Exemple 1 : Router selon le statut​

Variable : {{order.status}}

Cases :

  • "pending" → Traitement des commandes en attente
  • "processing" → Suivi du traitement
  • "completed" → Finalisation
  • Si la variable ne correspond à aucun des cas → Une erreur est déclenchée

Exemple 2 : Router selon le type​

Variable : {{event.type}}

Cases :

  • "order.created" → Créer la commande
  • "order.updated" → Mettre à jour
  • "order.cancelled" → Annuler
  • Si la variable ne correspond à aucun des cas → Mise en place d'un chemin par défaut (ignorer)

Voir aussi​