Construisez un workflow qui reçoit une demande, prépare ses données et choisit une branche selon son montant. À la fin, vous saurez lire une entrée, réutiliser une sortie et vérifier les deux chemins.
Avant de commencer
Ouvrez un workflow modifiable dans votre instance nodulz. Ce tutoriel utilise uniquement des nœuds internes : aucun compte fournisseur, clé API ou publication n’est nécessaire.
Le workflow à construire
Déclenchement manuel
Reçoit name, email et amount.
Modifier les champs
Prépare message et conserve amount.
Condition IFamount ≥ 100
Vrai
Réponse prioritaire.
Faux
Réponse standard.
Les deux réponses seront aussi des nœuds Modifier les champs. Aucun message ne sera envoyé à un destinataire réel.
amount reste un nombre parce que sa valeur est une expression seule. message est une chaîne qui mélange texte et expression.
Choisir une branche
Ajoutez Condition IF après le nœud de préparation.
Ajoutez une condition : champ nodes.set1.amount, opérateur Supérieur ou égal (gte), valeur 100.
Sur la sortie vrai, ajoutez un nœud Modifier les champs. Activez Champs mappés uniquement et définissez status à priority et message à {{ nodes.set1.message }}.
Sur la sortie faux, ajoutez un autre nœud Modifier les champs. Activez la même option et définissez status à standard et message à {{ nodes.set1.message }}.
Lancez à nouveau le workflow. La condition doit produire result: true, seule la branche vrai doit s’exécuter, et sa réponse doit être :
json
{"status":"priority","message":"Bonjour Ada"}
Le nœud IF produit le résultat de la comparaison. Pour retrouver la demande dans une branche, utilisez la sortie de préparation nodes.set1, plutôt que supposer que la sortie du IF contient encore tous ses champs.
Vérifier l’autre chemin
Dans le payload manuel, remplacez amount: 120 par amount: 40, puis relancez le workflow complet. Cette fois, attendez result: false et une réponse contenant status: "standard".
Si une valeur manque ou si une branche ne s’exécute pas, comparez dans cet ordre : le payload manuel, la sortie de préparation, les valeurs évaluées par le IF et ses connexions. Le guide de dépannage détaille ces vérifications.
Utiliser des données réelles
Pour recevoir une requête HTTP, suivez l’exemple Webhook. Adaptez les expressions : un corps JSON de webhook se lit généralement avec input.body.name, au lieu de input.name.
Pour une action externe, choisissez son nœud et préparez l’identifiant correspondant. Testez d’abord sur une cible de test.
Pour plusieurs demandes à la fois, poursuivez avec Traiter une liste : filtrer les contacts puis produire une réponse pour chacun.
Pour une exécution à heure fixe, ajoutez une Planification et vérifiez le fuseau horaire.
Avant d’activer un déclencheur automatique, consultez Tester et publier. Un payload simulé vérifie le traitement des données ; seul un événement réel vérifie leur arrivée depuis le service.
Construisez un workflow qui reçoit une demande, prépare ses données et choisit une branche selon son montant. À la fin, vous saurez lire une entrée, réutiliser une sortie et vérifier les deux chemins.
Avant de commencer
Ouvrez un workflow modifiable dans votre instance nodulz. Ce tutoriel utilise uniquement des nœuds internes : aucun compte fournisseur, clé API ou publication n’est nécessaire.
name,emailetamount.messageet conserveamount.amount ≥ 100Les deux réponses seront aussi des nœuds Modifier les champs. Aucun message ne sera envoyé à un destinataire réel.
Fournir une demande de test
{ "name": "Ada", "email": "[email protected]", "amount": 120 }Ces valeurs seront accessibles avec
input.name,input.emailetinput.amount. Le déclencheur manuel n’ajoute pas d’enveloppebodyautour de cet objet.Préparer les données
Ajoutez Modifier les champs, puis reliez la sortie du déclencheur à son entrée. Activez Champs mappés uniquement et ajoutez ces quatre lignes :
name, valeur{{ input.name }}.email, valeur{{ input.email }}.amount, valeur{{ input.amount }}.message, valeurBonjour {{ input.name }}.Lancez le workflow avec Exécuter, puis ouvrez la sortie de ce nœud. Elle doit contenir :
{ "name": "Ada", "email": "[email protected]", "amount": 120, "message": "Bonjour Ada" }amountreste un nombre parce que sa valeur est une expression seule.messageest une chaîne qui mélange texte et expression.Choisir une branche
nodes.set1.amount, opérateur Supérieur ou égal (gte), valeur100.statusàpriorityetmessageà{{ nodes.set1.message }}.statusàstandardetmessageà{{ nodes.set1.message }}.Lancez à nouveau le workflow. La condition doit produire
result: true, seule la branche vrai doit s’exécuter, et sa réponse doit être :{ "status": "priority", "message": "Bonjour Ada" }Le nœud IF produit le résultat de la comparaison. Pour retrouver la demande dans une branche, utilisez la sortie de préparation
nodes.set1, plutôt que supposer que la sortie du IF contient encore tous ses champs.Vérifier l’autre chemin
Dans le payload manuel, remplacez
amount: 120paramount: 40, puis relancez le workflow complet. Cette fois, attendezresult: falseet une réponse contenantstatus: "standard".Si une valeur manque ou si une branche ne s’exécute pas, comparez dans cet ordre : le payload manuel, la sortie de préparation, les valeurs évaluées par le IF et ses connexions. Le guide de dépannage détaille ces vérifications.
Utiliser des données réelles
input.body.name, au lieu deinput.name.Avant d’activer un déclencheur automatique, consultez Tester et publier. Un payload simulé vérifie le traitement des données ; seul un événement réel vérifie leur arrivée depuis le service.