> ## Documentation Index
> Fetch the complete documentation index at: https://docs-staging-update-anonymous-sessons-ea.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

> Découvrez comment utiliser les variables pour accéder aux données utilisateur et les transformer dans Forms et Flows.

# Variables et fonctions utilitaires

Les variables vous permettent d’accéder aux données contenues dans Forms et Flows pour créer une logique métier personnalisée et des automatisations.

Voici quelques points de base à retenir sur l’utilisation des variables :

* Les variables sont entourées d’accolades `{{ variable }}`.
* Si une variable n’existe pas ou ne peut pas être résolue, elle a le même effet qu’une variable `undefined`.
* Vous pouvez utiliser l’opérateur de coalescence des valeurs nulles pour gérer les variables `null` ou `undefined`, par exemple :`{{fields.foo ?? fields.bar}}`.

<h2 id="available-variables">
  Variables disponibles
</h2>

Vous pouvez utiliser différents types de variables pour référencer et transformer les données que vous recueillez auprès de vos clients avec Forms et Flows.

| Variable                   | Syntaxe           | Où            | Description                                                                   |
| -------------------------- | ----------------- | ------------- | ----------------------------------------------------------------------------- |
| Contexte                   | `{{context.*}}`   | Forms / Flows | Référence les données de contexte de la transaction en cours                  |
| Champs de formulaire       | `{{fields.*}}`    | Forms / Flows | Référence les données de vos champs de formulaire et de vos champs masqués    |
| Variables partagées        | `{{vars.*}}`      | Forms / Flows | Référence les données stockées dans des variables partagées                   |
| Sortie des actions de Flow | `{{actions.*}}`   | Flows         | Référence les données de la réponse de sortie des actions de Flow précédentes |
| Fonctions utilitaires      | `{{functions.*}}` | Forms / Flows | Fonctions utilitaires pour transformer les données                            |

<h3 id="context-variables">
  Variables de contexte
</h3>

Forms et les flows héritent automatiquement des variables de contexte de la transaction en cours. Vous pouvez accéder aux variables de contexte suivantes :

* L’objet `user`, avec accès aux propriétés suivantes :

  * `user.user_id`
  * `user.username`
  * `user.name`
  * `user.given_name`
  * `user.family_name`
  * `user.nickname`
  * `user.email`
  * `user.email_verified`
  * `user.phone_number`
  * `user.phone_verified`
  * `user.picture`
  * `user.user_metadata`
  * `user.app_metadata`
  * `user.created_at`
  * `user.updated_at`
  * `user.last_password_reset`
  * `user.identities`
* L’objet `organization`, avec accès aux propriétés suivantes :

  * `organization.id`
  * `organization.name`
  * `organization.display_name`
  * `organization.metadata`
* L’objet `client`, avec accès aux propriétés suivantes :

  * `client.client_id`
  * `client.name`
* L’objet `tenant`, avec accès à la propriété suivante :

  * `tenant.name`
* L’objet `transaction`, avec accès aux propriétés suivantes :

  * `transaction.state`
  * `transaction.correlation_id`
* L’objet `custom_domain`, avec accès aux propriétés suivantes :

  * `custom_domain.domain`
  * `custom_domain.domain_metadata`

<Accordion title="Exemple d’objet de contexte">
  ```json lines expandable theme={null}
  {
    "user": {
      "user_id": "auth0|658409...",
      "name": "ana@travel0.com",
      "nickname": "ana",
      "email": "ana@travel0.com",
      "email_verified": true,
      "picture": "https://s.gravatar.com/avatar/8eb1b522f6...",
      "user_metadata": {},
      "app_metadata": {},
      "created_at": "2023-12-21T09:46:40.487Z",
      "updated_at": "2024-05-07T10:44:26.271Z",
      "last_password_reset": "2023-12-21T09:49:08.932Z",
      "identities": [
        {
          "user_id": "6584...",
          "isSocial": false,
          "provider": "auth0",
          "connection": "Username-Password-Authentication"
        }
      ]
    },
    "client": {
      "client_id": "xpeg5...",
      "name": "My App"
    },
    "tenant": {
      "name": "tenant-testing"
    },
    "transaction": {
      "state": "hKFo2SBId2M0...",
      "correlation_id": "txn_12345_xyz"
    },
    "custom_domain": {
      "domain": "example.com",
      "domain_metadata": {
        "key": "value"
      }
    }
  }
  ```
</Accordion>

Par exemple :  `{{context.user.user_id}}` correspond au `user_id` de l’objet `user`.

<Frame>
  <img src="https://mintcdn.com/docs-staging-update-anonymous-sessons-ea/aPkjWy6SBkaTstwQ/docs/images/cdy7uua7fh8z/3B8DRhXO2wGqeqSFb8KbQv/0a61cdbbb7f1d290950a2ddb9857aac3/Contex-variable.png?fit=max&auto=format&n=aPkjWy6SBkaTstwQ&q=85&s=cb42a1f69f2396e4e9161c21db431db0" alt="Dashboard > Forms > Flows" data-og-width="1141" width="1141" data-og-height="219" height="219" data-path="docs/images/cdy7uua7fh8z/3B8DRhXO2wGqeqSFb8KbQv/0a61cdbbb7f1d290950a2ddb9857aac3/Contex-variable.png" data-optimize="true" data-opv="3" srcset="https://mintcdn.com/docs-staging-update-anonymous-sessons-ea/aPkjWy6SBkaTstwQ/docs/images/cdy7uua7fh8z/3B8DRhXO2wGqeqSFb8KbQv/0a61cdbbb7f1d290950a2ddb9857aac3/Contex-variable.png?w=280&fit=max&auto=format&n=aPkjWy6SBkaTstwQ&q=85&s=23d5e982e9ddf5c41cf6110a0b861dfd 280w, https://mintcdn.com/docs-staging-update-anonymous-sessons-ea/aPkjWy6SBkaTstwQ/docs/images/cdy7uua7fh8z/3B8DRhXO2wGqeqSFb8KbQv/0a61cdbbb7f1d290950a2ddb9857aac3/Contex-variable.png?w=560&fit=max&auto=format&n=aPkjWy6SBkaTstwQ&q=85&s=74f18e98b473e30cb727cb0d46ba6259 560w, https://mintcdn.com/docs-staging-update-anonymous-sessons-ea/aPkjWy6SBkaTstwQ/docs/images/cdy7uua7fh8z/3B8DRhXO2wGqeqSFb8KbQv/0a61cdbbb7f1d290950a2ddb9857aac3/Contex-variable.png?w=840&fit=max&auto=format&n=aPkjWy6SBkaTstwQ&q=85&s=4e4923260ebd6ee549a1d82c2479987d 840w, https://mintcdn.com/docs-staging-update-anonymous-sessons-ea/aPkjWy6SBkaTstwQ/docs/images/cdy7uua7fh8z/3B8DRhXO2wGqeqSFb8KbQv/0a61cdbbb7f1d290950a2ddb9857aac3/Contex-variable.png?w=1100&fit=max&auto=format&n=aPkjWy6SBkaTstwQ&q=85&s=2fd0da63f3a5ae6e9ce4b4c710845e54 1100w, https://mintcdn.com/docs-staging-update-anonymous-sessons-ea/aPkjWy6SBkaTstwQ/docs/images/cdy7uua7fh8z/3B8DRhXO2wGqeqSFb8KbQv/0a61cdbbb7f1d290950a2ddb9857aac3/Contex-variable.png?w=1650&fit=max&auto=format&n=aPkjWy6SBkaTstwQ&q=85&s=b7b458e41ed0434e8722442d116405b4 1650w, https://mintcdn.com/docs-staging-update-anonymous-sessons-ea/aPkjWy6SBkaTstwQ/docs/images/cdy7uua7fh8z/3B8DRhXO2wGqeqSFb8KbQv/0a61cdbbb7f1d290950a2ddb9857aac3/Contex-variable.png?w=2500&fit=max&auto=format&n=aPkjWy6SBkaTstwQ&q=85&s=bceebbb9273b68bdb76ef24f591d6c07 2500w" />
</Frame>

<h3 id="form-fields-variables">
  Variables des champs du formulaire
</h3>

Les variables de champ contiennent les données saisies par l’utilisateur dans les champs de saisie du formulaire, ainsi que les données des champs masqués. Les données associées à chaque champ varient selon le type de champ. Par exemple : `{{fields.first_name}}` fait référence à la valeur saisie dans un champ ayant l’ID `first_name`.

<Frame>
  <img src="https://mintcdn.com/docs-staging-update-anonymous-sessons-ea/ISmqq9qMo9QjVqTs/docs/images/cdy7uua7fh8z/4D42A6ww4XvFxweoxh04Rd/016c2ed9d25bc2267ed3ed31bf8b2bf6/form-fields-variable.png?fit=max&auto=format&n=ISmqq9qMo9QjVqTs&q=85&s=2a73741f80ff74d4f98eda5005691f88" alt="Dashboard > Actions > Forms > Form" data-og-width="1404" width="1404" data-og-height="497" height="497" data-path="docs/images/cdy7uua7fh8z/4D42A6ww4XvFxweoxh04Rd/016c2ed9d25bc2267ed3ed31bf8b2bf6/form-fields-variable.png" data-optimize="true" data-opv="3" srcset="https://mintcdn.com/docs-staging-update-anonymous-sessons-ea/ISmqq9qMo9QjVqTs/docs/images/cdy7uua7fh8z/4D42A6ww4XvFxweoxh04Rd/016c2ed9d25bc2267ed3ed31bf8b2bf6/form-fields-variable.png?w=280&fit=max&auto=format&n=ISmqq9qMo9QjVqTs&q=85&s=2f8f068582266d8aeee9fd1ef41a62f9 280w, https://mintcdn.com/docs-staging-update-anonymous-sessons-ea/ISmqq9qMo9QjVqTs/docs/images/cdy7uua7fh8z/4D42A6ww4XvFxweoxh04Rd/016c2ed9d25bc2267ed3ed31bf8b2bf6/form-fields-variable.png?w=560&fit=max&auto=format&n=ISmqq9qMo9QjVqTs&q=85&s=06dcbe212b3ab5ee29e8d94b1da04430 560w, https://mintcdn.com/docs-staging-update-anonymous-sessons-ea/ISmqq9qMo9QjVqTs/docs/images/cdy7uua7fh8z/4D42A6ww4XvFxweoxh04Rd/016c2ed9d25bc2267ed3ed31bf8b2bf6/form-fields-variable.png?w=840&fit=max&auto=format&n=ISmqq9qMo9QjVqTs&q=85&s=7eb2341767b0235505e61a396894045f 840w, https://mintcdn.com/docs-staging-update-anonymous-sessons-ea/ISmqq9qMo9QjVqTs/docs/images/cdy7uua7fh8z/4D42A6ww4XvFxweoxh04Rd/016c2ed9d25bc2267ed3ed31bf8b2bf6/form-fields-variable.png?w=1100&fit=max&auto=format&n=ISmqq9qMo9QjVqTs&q=85&s=26d8b3789959c1b28e485ddd7e33321e 1100w, https://mintcdn.com/docs-staging-update-anonymous-sessons-ea/ISmqq9qMo9QjVqTs/docs/images/cdy7uua7fh8z/4D42A6ww4XvFxweoxh04Rd/016c2ed9d25bc2267ed3ed31bf8b2bf6/form-fields-variable.png?w=1650&fit=max&auto=format&n=ISmqq9qMo9QjVqTs&q=85&s=5460bd0dbbc80ece2c67b6aa0f873131 1650w, https://mintcdn.com/docs-staging-update-anonymous-sessons-ea/ISmqq9qMo9QjVqTs/docs/images/cdy7uua7fh8z/4D42A6ww4XvFxweoxh04Rd/016c2ed9d25bc2267ed3ed31bf8b2bf6/form-fields-variable.png?w=2500&fit=max&auto=format&n=ISmqq9qMo9QjVqTs&q=85&s=40fa60da4fbce6682406e6a984036e06 2500w" />
</Frame>

<h3 id="flow-output-actions-variables">
  Variables de sortie des actions de Flow
</h3>

Lorsqu’une action de Flow est exécutée, elle génère une réponse sous forme d’objet de sortie qui peut être utilisée dans les actions suivantes. Par exemple : `{{actions.generate_otp.code}}` fait référence au code de sortie de l’action ayant l’ID `generate_otp`.

<Frame>
  <img src="https://mintcdn.com/docs-staging-update-anonymous-sessons-ea/PNS305OgYH0rOlt7/docs/images/cdy7uua7fh8z/6jYtEdYqSGXm3DDv0mxQ0o/2d48012629745e07137bf6ba42f4d829/flow-output-variable.png?fit=max&auto=format&n=PNS305OgYH0rOlt7&q=85&s=6ec919159d9af4a46e337c4a669c6f0e" alt="Dashboard > Actions > Forms > Flows" data-og-width="1404" width="1404" data-og-height="253" height="253" data-path="docs/images/cdy7uua7fh8z/6jYtEdYqSGXm3DDv0mxQ0o/2d48012629745e07137bf6ba42f4d829/flow-output-variable.png" data-optimize="true" data-opv="3" srcset="https://mintcdn.com/docs-staging-update-anonymous-sessons-ea/PNS305OgYH0rOlt7/docs/images/cdy7uua7fh8z/6jYtEdYqSGXm3DDv0mxQ0o/2d48012629745e07137bf6ba42f4d829/flow-output-variable.png?w=280&fit=max&auto=format&n=PNS305OgYH0rOlt7&q=85&s=bf9bafc89c9080b63490e910cbdb3b04 280w, https://mintcdn.com/docs-staging-update-anonymous-sessons-ea/PNS305OgYH0rOlt7/docs/images/cdy7uua7fh8z/6jYtEdYqSGXm3DDv0mxQ0o/2d48012629745e07137bf6ba42f4d829/flow-output-variable.png?w=560&fit=max&auto=format&n=PNS305OgYH0rOlt7&q=85&s=45a68634962747cdd27162775405f4b8 560w, https://mintcdn.com/docs-staging-update-anonymous-sessons-ea/PNS305OgYH0rOlt7/docs/images/cdy7uua7fh8z/6jYtEdYqSGXm3DDv0mxQ0o/2d48012629745e07137bf6ba42f4d829/flow-output-variable.png?w=840&fit=max&auto=format&n=PNS305OgYH0rOlt7&q=85&s=eaa8bb6d4f56df6e238e496bec886131 840w, https://mintcdn.com/docs-staging-update-anonymous-sessons-ea/PNS305OgYH0rOlt7/docs/images/cdy7uua7fh8z/6jYtEdYqSGXm3DDv0mxQ0o/2d48012629745e07137bf6ba42f4d829/flow-output-variable.png?w=1100&fit=max&auto=format&n=PNS305OgYH0rOlt7&q=85&s=374d78a1c7a651d610ec9f85763d8c9a 1100w, https://mintcdn.com/docs-staging-update-anonymous-sessons-ea/PNS305OgYH0rOlt7/docs/images/cdy7uua7fh8z/6jYtEdYqSGXm3DDv0mxQ0o/2d48012629745e07137bf6ba42f4d829/flow-output-variable.png?w=1650&fit=max&auto=format&n=PNS305OgYH0rOlt7&q=85&s=c152bee2efdd807434d6b12c72bfd89f 1650w, https://mintcdn.com/docs-staging-update-anonymous-sessons-ea/PNS305OgYH0rOlt7/docs/images/cdy7uua7fh8z/6jYtEdYqSGXm3DDv0mxQ0o/2d48012629745e07137bf6ba42f4d829/flow-output-variable.png?w=2500&fit=max&auto=format&n=PNS305OgYH0rOlt7&q=85&s=0c0e753c9f53cdfe3022d16f1d40f667 2500w" />
</Frame>

<h3 id="shared-variables">
  Variables partagées
</h3>

Vous pouvez stocker des variables afin qu’elles soient partagées avec des flows ultérieurs ou même avec des composants de formulaire dans la même transaction. Les variables partagées sont éphémères et associées à un parcours de formulaire précis. Leurs valeurs ne sont pas accessibles à l’extérieur de ce parcours. Par exemple : `{{vars.external_id}}` fait référence à la valeur d’une variable partagée ayant l’ID `external_id`.

<Frame>
  <img src="https://mintcdn.com/docs-staging-update-anonymous-sessons-ea/ISmqq9qMo9QjVqTs/docs/images/cdy7uua7fh8z/4571ExRTHL0KZKJKX9pNwj/abb631b8608a6356b0e5b3784cf8b02f/flow-shared-variable.png?fit=max&auto=format&n=ISmqq9qMo9QjVqTs&q=85&s=05bec52117004540ca946702d1643891" alt="Dashboard > Actions > Forms > Flows" data-og-width="1215" width="1215" data-og-height="162" height="162" data-path="docs/images/cdy7uua7fh8z/4571ExRTHL0KZKJKX9pNwj/abb631b8608a6356b0e5b3784cf8b02f/flow-shared-variable.png" data-optimize="true" data-opv="3" srcset="https://mintcdn.com/docs-staging-update-anonymous-sessons-ea/ISmqq9qMo9QjVqTs/docs/images/cdy7uua7fh8z/4571ExRTHL0KZKJKX9pNwj/abb631b8608a6356b0e5b3784cf8b02f/flow-shared-variable.png?w=280&fit=max&auto=format&n=ISmqq9qMo9QjVqTs&q=85&s=8b78155e7c955db7d16bc3a82899f797 280w, https://mintcdn.com/docs-staging-update-anonymous-sessons-ea/ISmqq9qMo9QjVqTs/docs/images/cdy7uua7fh8z/4571ExRTHL0KZKJKX9pNwj/abb631b8608a6356b0e5b3784cf8b02f/flow-shared-variable.png?w=560&fit=max&auto=format&n=ISmqq9qMo9QjVqTs&q=85&s=c9e1c7876b210df68ba242b3687472ea 560w, https://mintcdn.com/docs-staging-update-anonymous-sessons-ea/ISmqq9qMo9QjVqTs/docs/images/cdy7uua7fh8z/4571ExRTHL0KZKJKX9pNwj/abb631b8608a6356b0e5b3784cf8b02f/flow-shared-variable.png?w=840&fit=max&auto=format&n=ISmqq9qMo9QjVqTs&q=85&s=e5add5b67b50be6b5a5f5151c481fced 840w, https://mintcdn.com/docs-staging-update-anonymous-sessons-ea/ISmqq9qMo9QjVqTs/docs/images/cdy7uua7fh8z/4571ExRTHL0KZKJKX9pNwj/abb631b8608a6356b0e5b3784cf8b02f/flow-shared-variable.png?w=1100&fit=max&auto=format&n=ISmqq9qMo9QjVqTs&q=85&s=425989e47615267e1680e9be83e2fa7b 1100w, https://mintcdn.com/docs-staging-update-anonymous-sessons-ea/ISmqq9qMo9QjVqTs/docs/images/cdy7uua7fh8z/4571ExRTHL0KZKJKX9pNwj/abb631b8608a6356b0e5b3784cf8b02f/flow-shared-variable.png?w=1650&fit=max&auto=format&n=ISmqq9qMo9QjVqTs&q=85&s=0e9a39a344e3f0a5df27f01a0821cc76 1650w, https://mintcdn.com/docs-staging-update-anonymous-sessons-ea/ISmqq9qMo9QjVqTs/docs/images/cdy7uua7fh8z/4571ExRTHL0KZKJKX9pNwj/abb631b8608a6356b0e5b3784cf8b02f/flow-shared-variable.png?w=2500&fit=max&auto=format&n=ISmqq9qMo9QjVqTs&q=85&s=476b8934c47747cffc26dde2fac77240 2500w" />
</Frame>

<Warning>
  Variables partagées :

  * sont internes (côté serveur) et ne sont pas exposées au navigateur (côté client).
  * peuvent être résolues et exposées au navigateur si vous faites référence à une variable partagée dans un composant de formulaire.
  * peuvent contenir des renseignements sensibles; faites donc preuve de prudence lorsque vous accédez à une variable partagée afin d’éviter toute exposition inutile ou involontaire.
</Warning>

<h3 id="helper-functions">
  Fonctions utilitaires
</h3>

Les fonctions utilitaires vous permettent de transformer des données et d’effectuer des opérations simples. Par exemple : `{{functions.toString(fields.privacy_policies)}}` transforme la valeur du champ dont l’ID est `privacy_policies` à l’aide de la fonction `toString()`.

<Frame>
  <img src="https://mintcdn.com/docs-staging-update-anonymous-sessons-ea/KUZyZ8QYVXJvgdUz/docs/images/cdy7uua7fh8z/1gyox33XJEtdkT43NppblT/0e878cc5ae2bde11b4207e105bbac6c5/flow-helper-functions.png?fit=max&auto=format&n=KUZyZ8QYVXJvgdUz&q=85&s=571e82b3334c8bab25f2f4dce6e57a23" alt="Dashboard > Actions > Forms > Flows" data-og-width="1404" width="1404" data-og-height="290" height="290" data-path="docs/images/cdy7uua7fh8z/1gyox33XJEtdkT43NppblT/0e878cc5ae2bde11b4207e105bbac6c5/flow-helper-functions.png" data-optimize="true" data-opv="3" srcset="https://mintcdn.com/docs-staging-update-anonymous-sessons-ea/KUZyZ8QYVXJvgdUz/docs/images/cdy7uua7fh8z/1gyox33XJEtdkT43NppblT/0e878cc5ae2bde11b4207e105bbac6c5/flow-helper-functions.png?w=280&fit=max&auto=format&n=KUZyZ8QYVXJvgdUz&q=85&s=beeaf64e184dd6f6f56c3423ecf9e54b 280w, https://mintcdn.com/docs-staging-update-anonymous-sessons-ea/KUZyZ8QYVXJvgdUz/docs/images/cdy7uua7fh8z/1gyox33XJEtdkT43NppblT/0e878cc5ae2bde11b4207e105bbac6c5/flow-helper-functions.png?w=560&fit=max&auto=format&n=KUZyZ8QYVXJvgdUz&q=85&s=290e5e441169373b7c257614a17346a0 560w, https://mintcdn.com/docs-staging-update-anonymous-sessons-ea/KUZyZ8QYVXJvgdUz/docs/images/cdy7uua7fh8z/1gyox33XJEtdkT43NppblT/0e878cc5ae2bde11b4207e105bbac6c5/flow-helper-functions.png?w=840&fit=max&auto=format&n=KUZyZ8QYVXJvgdUz&q=85&s=dd0da1f4a85ce2789bfbee78c7dd45c2 840w, https://mintcdn.com/docs-staging-update-anonymous-sessons-ea/KUZyZ8QYVXJvgdUz/docs/images/cdy7uua7fh8z/1gyox33XJEtdkT43NppblT/0e878cc5ae2bde11b4207e105bbac6c5/flow-helper-functions.png?w=1100&fit=max&auto=format&n=KUZyZ8QYVXJvgdUz&q=85&s=309d4abac5436202843832bacfb0e922 1100w, https://mintcdn.com/docs-staging-update-anonymous-sessons-ea/KUZyZ8QYVXJvgdUz/docs/images/cdy7uua7fh8z/1gyox33XJEtdkT43NppblT/0e878cc5ae2bde11b4207e105bbac6c5/flow-helper-functions.png?w=1650&fit=max&auto=format&n=KUZyZ8QYVXJvgdUz&q=85&s=79eb284c6dc9686258bf43b1e25d8079 1650w, https://mintcdn.com/docs-staging-update-anonymous-sessons-ea/KUZyZ8QYVXJvgdUz/docs/images/cdy7uua7fh8z/1gyox33XJEtdkT43NppblT/0e878cc5ae2bde11b4207e105bbac6c5/flow-helper-functions.png?w=2500&fit=max&auto=format&n=KUZyZ8QYVXJvgdUz&q=85&s=b6a9758a87282b34a992e94e164623c3 2500w" />
</Frame>

Les fonctions utilitaires disponibles sont :

| Fonction                                 | Description                                                                                                                                                                                                                                                                                                           | Exemple                                                                                                          |
| ---------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- |
| `toArray(value)`                         | Convertit la valeur en tableau.                                                                                                                                                                                                                                                                                       | `{{ functions.toArray('abc') }} // ['abc']`                                                                      |
| `toBoolean(value)`                       | Convertit la valeur en valeur booléenne.                                                                                                                                                                                                                                                                              | `{{ functions.toBoolean(1) }} // vrai&lt;br /&gt;&lt;br /&gt;\{\{ functions.toBoolean(0) }} // faux`             |
| `length(value)`                          | Retourne la longueur de la valeur du paramètre.                                                                                                                                                                                                                                                                       | `{{ functions.length('auth0') }} // 5`                                                                           |
| `mask(value)`                            | Masque une valeur afin d’éviter qu’elle ne soit affichée dans Executions.                                                                                                                                                                                                                                             | `{{ functions.mask('my_awesome_secret') }} // ███`                                                               |
| `toNumber(value)`                        | Convertit la valeur en nombre.                                                                                                                                                                                                                                                                                        | `{{ functions.toNumber('123') }} // 123`                                                                         |
| `random(min, max, [boolean])`            | Renvoie un nombre aléatoire compris entre les valeurs min et max, inclusivement.                                                                                                                                                                                                                                      | `{{ functions.random(0, 6) }} // 4 &lt;br /&gt;&lt;br /&gt;\{\{ functions.random(0, 6, true) }} // 3.8523497...` |
| `slice(value, start, end)`               | Renvoie une portion d’un tableau ou d’une chaîne de caractères comprise entre les indices de début et de fin.                                                                                                                                                                                                         | `{{ functions.slice( 'example', 3, 5) }} // 'mp'`                                                                |
| `toString(value)`                        | Convertit la valeur en chaîne de caractères.                                                                                                                                                                                                                                                                          | `{{ functions.toString(123) }} // '123'`                                                                         |
| `substring(value, start, end)`           | Retourne la partie d’une valeur comprise entre l’index de début et l’index de fin. Pour en savoir plus, consultez les [différences entre les fonctions slice et substring](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/substring#differences_between_substring_and_slice) | `{{ functions.substring( 'example’', 3, 5) }} // 'mp'`                                                           |
| `toTimestamp()`                          | Renvoie l’horodatage UNIX actuel.                                                                                                                                                                                                                                                                                     | `{{ functions.toTimestamp() }} // 1628761483`                                                                    |
| `toTimestamp(date)`                      | Retourne la date fournie au format UNIX.                                                                                                                                                                                                                                                                              | `{{ functions.toTimestamp('2021-04-30T10:02:50.876Z') }} // 1619776970`                                          |
| `toTimestamp(date)`                      | Retourne la date fournie au format UNIX.                                                                                                                                                                                                                                                                              | `{{ functions.toTimestamp('2021-04-30T10:02:50.876Z') }} // 1619776970`                                          |
| `toLowerCase(value)`                     | Retourne une nouvelle chaîne en minuscules.                                                                                                                                                                                                                                                                           | `{{ functions.toLowerCase('JohnDoe 1234') }} // johndoe 1234`                                                    |
| `toUpperCase(value)`                     | Retourne une nouvelle chaîne en majuscules.                                                                                                                                                                                                                                                                           | `{{ functions.toUpperCase('JohnDoe 1234') }} // JOHNDOE 1234`                                                    |
| `replaceAll(value, string, replacement)` | Renvoie une nouvelle chaîne dans laquelle toutes les occurrences d’un motif sont remplacées par une chaîne de remplacement.                                                                                                                                                                                           | `{{ functions.replaceAll('2021-04-30', '-', '/') }} // 2021/04/30`                                               |
| `replace(value, string, replacement)`    | Renvoie une nouvelle chaîne dans laquelle toutes les occurrences d’un motif sont remplacées par une chaîne de remplacement. Si le motif est une chaîne, seule la première occurrence sera remplacée.                                                                                                                  | `{{ functions.replace('2021-04-30', '-', '/') }} // 2021/04-30`                                                  |
| `split(value, separator, limit?)`        | Renvoie une liste ordonnée de sous-chaînes découpées selon le séparateur.                                                                                                                                                                                                                                             | `{{ functions.split('2021-04-30', '-') }} // ['2021', '04', '30']`                                               |
| `now()`                                  | Renvoie la date actuelle au format ISO 8601.                                                                                                                                                                                                                                                                          | `{{ functions.now() }} // 2021-04-30T10:31:28.576Z`                                                              |
| `includes(collection, item, fromIndex?)` | Indique si un tableau contient une certaine valeur parmi ses éléments.                                                                                                                                                                                                                                                | `{{ functions.includes(['auth0', 'identity', 'authentication'], 'identity') }} // true`                          |
| `indexOf(collection, item, fromIndex?)`  | Renvoie le premier indice auquel un élément donné peut être trouvé dans le tableau, ou -1 s’il n’y figure pas.                                                                                                                                                                                                        | `{{ functions.indexOf(['auth0', 'identity', 'authentication'], 'identity') }} // 1`                              |
| `merge(base, value)`                     | Renvoie un tableau ou un objet fusionné, ou concatène une chaîne selon le type de données de base.                                                                                                                                                                                                                    | `{{ functions.merge(['auth0', 'identity'], ['authentication']) }} // ['auth0', 'identity', 'authentication']`    |
| `md5(value)`                             | Renvoie une valeur hachée avec MD5.                                                                                                                                                                                                                                                                                   | `{{ functions.md5('auth0') }} // 7bbb597...`                                                                     |
| `sha1(value)`                            | Renvoie une valeur hachée avec SHA1.                                                                                                                                                                                                                                                                                  | `{{ functions.sha1('auth0') }} // b4ec5339...`                                                                   |
| `sha256(value)`                          | Renvoie une valeur hachée avec SHA256.                                                                                                                                                                                                                                                                                | `{{ functions.sha256('auth0') }} // d9082bdc...`                                                                 |
| `sha512(value)`                          | Renvoie une valeur hachée avec SHA512.                                                                                                                                                                                                                                                                                | `{{ functions.sha512('auth0') }} // c0d588069d...`                                                               |
| `uuid()`                                 | Renvoie un UUID v4 aléatoire.                                                                                                                                                                                                                                                                                         | `{{ functions.uuid() }} // 36b8f84d-df4e-4d49-b662-bcde71a8764`                                                  |

<h2 id="variables-best-practices">
  Bonnes pratiques pour les variables
</h2>

<h3 id="use-meaningful-ids">
  Utilisez des IDs parlants
</h3>

Lorsque vous ajoutez un champ de Form ou une action de Flow, l’ID est généré automatiquement.

Modifiez l’ID pour lui donner une valeur plus descriptive afin de pouvoir identifier l’information qu’il contient. Par exemple, si vous créez un champ de Form qui stocke le prénom de l’utilisateur, remplacez l’ID par `first_name`.

<h3 id="be-mindful-when-updating-existing-ids">
  Faites preuve de prudence lorsque vous mettez à jour des IDs existants
</h3>

Si une variable est déjà utilisée et que vous devez modifier l’ID, repérez les endroits où vous y avez fait référence et mettez l’ID à jour en conséquence afin d’éviter les valeurs non définies ou vides.

<h3 id="check-flow-executions">
  Vérifier les exécutions du Flow
</h3>

Si vous voyez une valeur de variable inattendue, utilisez la vue [**Executions**](/docs/fr-ca/customize/forms/flows/flow-execution-and-debugger) pour diagnostiquer le problème lié à la variable.

<h3 id="use-the-autocomplete-menu">
  Utilisez le menu de saisie semi-automatique
</h3>

Le menu de saisie semi-automatique vous aide à trouver et à référencer correctement les variables existantes.

<Frame>
  <img src="https://mintcdn.com/docs-staging-update-anonymous-sessons-ea/aPkjWy6SBkaTstwQ/docs/images/cdy7uua7fh8z/3SKnDuaMzSImxZtDDAoZaz/9ea800fad29ef71d1ded3c72b87660a4/Autocomplete-flows.png?fit=max&auto=format&n=aPkjWy6SBkaTstwQ&q=85&s=3167b9ea65419df6adb563ca440e861d" alt="Dashboard > Actions > Forms > Flows" data-og-width="1361" width="1361" data-og-height="502" height="502" data-path="docs/images/cdy7uua7fh8z/3SKnDuaMzSImxZtDDAoZaz/9ea800fad29ef71d1ded3c72b87660a4/Autocomplete-flows.png" data-optimize="true" data-opv="3" srcset="https://mintcdn.com/docs-staging-update-anonymous-sessons-ea/aPkjWy6SBkaTstwQ/docs/images/cdy7uua7fh8z/3SKnDuaMzSImxZtDDAoZaz/9ea800fad29ef71d1ded3c72b87660a4/Autocomplete-flows.png?w=280&fit=max&auto=format&n=aPkjWy6SBkaTstwQ&q=85&s=132c95d7cfc0ab8ef9fa12c35ea2f444 280w, https://mintcdn.com/docs-staging-update-anonymous-sessons-ea/aPkjWy6SBkaTstwQ/docs/images/cdy7uua7fh8z/3SKnDuaMzSImxZtDDAoZaz/9ea800fad29ef71d1ded3c72b87660a4/Autocomplete-flows.png?w=560&fit=max&auto=format&n=aPkjWy6SBkaTstwQ&q=85&s=b4b2419f3192ac1733bdce6d52dda34f 560w, https://mintcdn.com/docs-staging-update-anonymous-sessons-ea/aPkjWy6SBkaTstwQ/docs/images/cdy7uua7fh8z/3SKnDuaMzSImxZtDDAoZaz/9ea800fad29ef71d1ded3c72b87660a4/Autocomplete-flows.png?w=840&fit=max&auto=format&n=aPkjWy6SBkaTstwQ&q=85&s=ff0cfe999f655010ee03b7bbce8e6acd 840w, https://mintcdn.com/docs-staging-update-anonymous-sessons-ea/aPkjWy6SBkaTstwQ/docs/images/cdy7uua7fh8z/3SKnDuaMzSImxZtDDAoZaz/9ea800fad29ef71d1ded3c72b87660a4/Autocomplete-flows.png?w=1100&fit=max&auto=format&n=aPkjWy6SBkaTstwQ&q=85&s=324654daa4bdbcd45998cf979cdb48a9 1100w, https://mintcdn.com/docs-staging-update-anonymous-sessons-ea/aPkjWy6SBkaTstwQ/docs/images/cdy7uua7fh8z/3SKnDuaMzSImxZtDDAoZaz/9ea800fad29ef71d1ded3c72b87660a4/Autocomplete-flows.png?w=1650&fit=max&auto=format&n=aPkjWy6SBkaTstwQ&q=85&s=cc5840426ffdebb89e8aece6ee3de303 1650w, https://mintcdn.com/docs-staging-update-anonymous-sessons-ea/aPkjWy6SBkaTstwQ/docs/images/cdy7uua7fh8z/3SKnDuaMzSImxZtDDAoZaz/9ea800fad29ef71d1ded3c72b87660a4/Autocomplete-flows.png?w=2500&fit=max&auto=format&n=aPkjWy6SBkaTstwQ&q=85&s=0fec03640ca282b17291afd497a8f6f9 2500w" />
</Frame>

<Frame>
  <img src="https://mintcdn.com/docs-staging-update-anonymous-sessons-ea/D0Y-PVVz1ukwMxCO/docs/images/cdy7uua7fh8z/2kjRKozVgrd2a7UJXOANaN/ee5452d7210cd2f13b0e97763f11c82a/Autocomplete-forms.png?fit=max&auto=format&n=D0Y-PVVz1ukwMxCO&q=85&s=8dd41cb84fe5027f6f2b8fcaa6057cce" alt="Dashboard > Actions > Forms > Form" data-og-width="1394" width="1394" data-og-height="630" height="630" data-path="docs/images/cdy7uua7fh8z/2kjRKozVgrd2a7UJXOANaN/ee5452d7210cd2f13b0e97763f11c82a/Autocomplete-forms.png" data-optimize="true" data-opv="3" srcset="https://mintcdn.com/docs-staging-update-anonymous-sessons-ea/D0Y-PVVz1ukwMxCO/docs/images/cdy7uua7fh8z/2kjRKozVgrd2a7UJXOANaN/ee5452d7210cd2f13b0e97763f11c82a/Autocomplete-forms.png?w=280&fit=max&auto=format&n=D0Y-PVVz1ukwMxCO&q=85&s=22d5c8c150d99fe6e6c6d1e5a8df5e7e 280w, https://mintcdn.com/docs-staging-update-anonymous-sessons-ea/D0Y-PVVz1ukwMxCO/docs/images/cdy7uua7fh8z/2kjRKozVgrd2a7UJXOANaN/ee5452d7210cd2f13b0e97763f11c82a/Autocomplete-forms.png?w=560&fit=max&auto=format&n=D0Y-PVVz1ukwMxCO&q=85&s=9af7b610ac7bdeb1a07e2aff9b9d7e8a 560w, https://mintcdn.com/docs-staging-update-anonymous-sessons-ea/D0Y-PVVz1ukwMxCO/docs/images/cdy7uua7fh8z/2kjRKozVgrd2a7UJXOANaN/ee5452d7210cd2f13b0e97763f11c82a/Autocomplete-forms.png?w=840&fit=max&auto=format&n=D0Y-PVVz1ukwMxCO&q=85&s=a792a3b0f41b39b047ceb442a2c9c1a7 840w, https://mintcdn.com/docs-staging-update-anonymous-sessons-ea/D0Y-PVVz1ukwMxCO/docs/images/cdy7uua7fh8z/2kjRKozVgrd2a7UJXOANaN/ee5452d7210cd2f13b0e97763f11c82a/Autocomplete-forms.png?w=1100&fit=max&auto=format&n=D0Y-PVVz1ukwMxCO&q=85&s=c547f64f02649e5ac32f5021173eca6e 1100w, https://mintcdn.com/docs-staging-update-anonymous-sessons-ea/D0Y-PVVz1ukwMxCO/docs/images/cdy7uua7fh8z/2kjRKozVgrd2a7UJXOANaN/ee5452d7210cd2f13b0e97763f11c82a/Autocomplete-forms.png?w=1650&fit=max&auto=format&n=D0Y-PVVz1ukwMxCO&q=85&s=7145519ba366a38e22f5b02f88e26d69 1650w, https://mintcdn.com/docs-staging-update-anonymous-sessons-ea/D0Y-PVVz1ukwMxCO/docs/images/cdy7uua7fh8z/2kjRKozVgrd2a7UJXOANaN/ee5452d7210cd2f13b0e97763f11c82a/Autocomplete-forms.png?w=2500&fit=max&auto=format&n=D0Y-PVVz1ukwMxCO&q=85&s=568e7c66f40ed6ae9294db90031e54bb 2500w" />
</Frame>
