Skip to content

Condition (Si) ​

Oriente le mail vers la sortie « vrai » ou « faux » selon des conditions sur le mail et les données de travail.

Le nœud Condition sépare une branche en deux. Chaque ligne de l’arbre de conditions compare un champ à une valeur ; les lignes se combinent par « toutes » ou « au moins une » et peuvent être groupées. Un champ est soit un champ du mail (email.subject, email.from.domain, email.attachments.mimeTypes…), soit un chemin dans les données de travail (data.trier.category, data.http.bodyJson.items.0.id). Les opérateurs et les règles de comparaison sont les mêmes que pour les conditions de déclencheur.

Choisissez l’Aiguillage s’il vous faut plus de deux branches, et Catégoriser quand la décision dépend du sens du mail plutôt que de la valeur d’un champ.

En bref ​

  • Type : flow.if · version 1
  • Catégorie : Logique
  • Nature : Étape — s’exécute pendant une exécution
  • Effet : Sans effet externe (none) — rien n’est écrit hors de Mankomail ; rejouable sans risque
  • Exige un mail porteur : Non
  • Connexion : Aucune
  • Entrées : main
  • Sorties : true, false

Paramètres ​

conditions ​

Conditions — Chaque ligne compare un champ du mail (email.subject) ou une donnée de travail (data.categorize_1.category) à une valeur.

  • Type : Arbre de conditions (conditions)
  • Requis : Non
  • Teste des valeurs email.* et data.*

Sorties ​

  • true — Emprunté quand les conditions sont satisfaites.
  • false — Emprunté quand elles ne le sont pas.

Données produites ​

Ce que ce nœud ajoute aux données de l’exécution, et comment le lire dans une expression. <step> désigne la clé de l’étape : le nom du nœud ramené à un identifiant (voir Données et expressions).

  • {{ data.<step>.matched }} — boolean. true si les conditions sont satisfaites (branche true empruntée), false sinon.

Example ​

Un workflow ne doit transmettre que les factures de clients accompagnées d’un PDF. Après le déclencheur, ajoutez un nœud Condition dont conditions vaut « toutes » parmi :

email.from.domain             appartient au domaine   client.example
email.attachments.mimeTypes   contient                application/pdf
email.signals.isAutoReply     est égal à              false

Reliez la suite au port true, et un nœud Fin / Arrêt au statut « Ignoré » au port false. En aval, {{ data.<step>.matched }} vaut true sur la première branche et false sur la seconde.

Tips ​

  • Les comparaisons de texte ignorent la casse par défaut ; les accents comptent toujours. Cochez « Respecter la casse » pour une comparaison exacte.
  • Un nœud sans aucune ligne laisse tout passer (un « toutes » vide est vrai). Un groupe « au moins une » vide est faux.
  • Sur un champ liste (destinataires, noms de pièces jointes, dossiers), les opérateurs sont satisfaits dès qu’un élément l’est, sauf « n’est pas égal à », qui exige qu’aucun élément ne soit égal à la valeur.
  • Un chemin data. inexistant compte comme vide : « est vide » répond true et tous les autres opérateurs répondent false. Un champ email. n’est jamais satisfait quand l’exécution n’a pas de mail déclencheur (planification, webhook, workflow appelé).
  • La valeur est convertie dans le type du champ : sur un nombre, 9 « est supérieur à » 10 est faux, comme attendu. Sur un champ texte, « est supérieur à » compare dans l’ordre alphabétique, ce qui fonctionne pour les dates ISO comme email.receivedAt > 2026-01-01.
  • Une ligne incomplète (champ vide, opérateur inconnu) est ignorée à l’exécution ; l’éditeur la signale avant la publication.