Aller au contenu principal

Gestion des variables

Pendant l'exécution du flux, les données d'entrée et les données intermédiaires sont situées dans des variables.

Types de variables

Ecosystem propose différents types de variables :

  • Variables d'entrée : Pour accéder aux données envoyées par le déclencheur
  • Variables de contexte : Pour accéder aux données entre les nœuds d'un flux
  • Variables de dictionnaire : Pour accéder aux données différentes en fonction de l'environnement

Variables d'entrée

Certains déclencheurs permettent de transmettre des données en entrée, et d'y accéder pendant l'exécution du flux :

  • Déclencheur par fichier : Accéder aux données du fichier qui a déclenché l'exécution
  • Déclencheur par requête HTTP : En envoyant la requête, passez des informations en les écrivant dans le body

Accéder à une variable d'entrée

Il est possible d'accéder aux données transmises par le déclencheur depuis n'importe quel nœud d'un flux. Les valeurs sont contenues dans l'objet data.

Exemple :

Un flux est déclenché par appel API, avec dans le body les informations suivantes :

curl --location --request POST 'https://apizr.io/test' \
--header 'Content-Type: application/json' \
--data '{
"start_date":"2025-09-01",
"end_date":"2025-09-30"
}'

Pour récupérer la valeur de start_date dans un nœud code de votre flux, utilisez la syntaxe suivante :

data.start_date

En dehors des nœuds acceptant du code, l'utilisation des doubles accolades {{ }} est nécessaire :

{{data.start_date}}
💡 Parsing automatique

Si votre donnée d'entrée n'est pas en JSON, elle sera automatiquement parsée ! Vous pouvez donc traiter directement vos données en JSON dans vos nœuds sans avoir à faire de conversion manuelle.

Variables de contexte

Enregistrer les variables dans le contexte permet d'accéder à leur valeur dans d'autres nœuds.

Les variables de contexte sont similaires à la déclaration de variables dans du code traditionnel :

  • Code classique : const myVar = 'toto'
  • Dans Ecosystem : context.myVar = 'toto'

Déclarer une variable

Pour déclarer une variable de contexte, dans un nœud code, utiliser la syntaxe context.myVar = 'toto' pour déclarer une variable.

// exemple de déclaration de variable
context.myVar = 'toto'
⚡ Performance

Utilisez la syntaxe classique const myVar = 'toto' si vous n'avez pas besoin d'accéder à la variable dans d'autres nœuds. Cela améliore les performances en évitant de stocker des variables inutiles dans le contexte global.

Accéder à une variable de contexte

Dans un nœud acceptant du code

Il est possible de lire une variable de contexte dans le nœud code où elle a été déclarée, et dans tous les nœuds suivants.

// exemple dans un nœud de condition
return context.myVar === 'titi'

En dehors des nœuds acceptant du code

En dehors des nœuds acceptant du code, l'utilisation des doubles accolades {{ }} est nécessaire.

Exemple d'utilisation dans un nœud d'appel HTTP :

https://api.example.com/users/{{context.userId}}

Modifier la valeur d'une variable

La modification de valeur d'une variable est identique à la déclaration.

// déclaration de la variable
context.myVar = 'toto'

// modification de la variable, plus loin dans le code ou dans un autre nœud
context.myVar = 'titi'

// myVar vaudra alors 'titi'

Variables de dictionnaire

Les variables de dictionnaire servent à accéder à des variables en fonction de l'environnement dans lequel le flux est exécuté. Elles sont particulièrement utiles dans le cadre d'appels vers des API externes ou dans l'utilisation de serveurs SFTP.

Déclarer une variable

Pour apprendre à déclarer une variable de dictionnaire, consultez la section Dictionnaires.

Accéder à une variable

Vous pouvez accéder à la valeur d'une variable de dictionnaire depuis n'importe quel nœud d'un flux.

Dans un nœud acceptant du code

// exemple dans un nœud de condition
return dictionaries.my_service.my_variable === 'titi'

En dehors des nœuds acceptant du code

En dehors des nœuds acceptant du code, l'utilisation des doubles accolades {{ }} est nécessaire.

{{dictionaries.my_service.my_variable}}

Prochaines étapes