> ## Documentation Index
> Fetch the complete documentation index at: https://docs-dev-feat-init-gt-translations.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}}`.

<div id="available-variables">
  ## Variables disponibles
</div>

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                            |

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

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-dev-feat-init-gt-translations/AcBWN86l7cA24wcQ/docs/images/cdy7uua7fh8z/3B8DRhXO2wGqeqSFb8KbQv/0a61cdbbb7f1d290950a2ddb9857aac3/Contex-variable.png?fit=max&auto=format&n=AcBWN86l7cA24wcQ&q=85&s=1019ca2b782a15f8395ab0d2c85f5b7b" 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-dev-feat-init-gt-translations/AcBWN86l7cA24wcQ/docs/images/cdy7uua7fh8z/3B8DRhXO2wGqeqSFb8KbQv/0a61cdbbb7f1d290950a2ddb9857aac3/Contex-variable.png?w=280&fit=max&auto=format&n=AcBWN86l7cA24wcQ&q=85&s=4c75073d846f75363260da216f287ce2 280w, https://mintcdn.com/docs-dev-feat-init-gt-translations/AcBWN86l7cA24wcQ/docs/images/cdy7uua7fh8z/3B8DRhXO2wGqeqSFb8KbQv/0a61cdbbb7f1d290950a2ddb9857aac3/Contex-variable.png?w=560&fit=max&auto=format&n=AcBWN86l7cA24wcQ&q=85&s=2db7c7e40003ec7e83c79671009fa7a4 560w, https://mintcdn.com/docs-dev-feat-init-gt-translations/AcBWN86l7cA24wcQ/docs/images/cdy7uua7fh8z/3B8DRhXO2wGqeqSFb8KbQv/0a61cdbbb7f1d290950a2ddb9857aac3/Contex-variable.png?w=840&fit=max&auto=format&n=AcBWN86l7cA24wcQ&q=85&s=54c19ed289bee6684e2915baf67a8f4a 840w, https://mintcdn.com/docs-dev-feat-init-gt-translations/AcBWN86l7cA24wcQ/docs/images/cdy7uua7fh8z/3B8DRhXO2wGqeqSFb8KbQv/0a61cdbbb7f1d290950a2ddb9857aac3/Contex-variable.png?w=1100&fit=max&auto=format&n=AcBWN86l7cA24wcQ&q=85&s=08342ed5c61defa75609af7b9657a868 1100w, https://mintcdn.com/docs-dev-feat-init-gt-translations/AcBWN86l7cA24wcQ/docs/images/cdy7uua7fh8z/3B8DRhXO2wGqeqSFb8KbQv/0a61cdbbb7f1d290950a2ddb9857aac3/Contex-variable.png?w=1650&fit=max&auto=format&n=AcBWN86l7cA24wcQ&q=85&s=6b573b71e8c19f4397c13845cddc2c6c 1650w, https://mintcdn.com/docs-dev-feat-init-gt-translations/AcBWN86l7cA24wcQ/docs/images/cdy7uua7fh8z/3B8DRhXO2wGqeqSFb8KbQv/0a61cdbbb7f1d290950a2ddb9857aac3/Contex-variable.png?w=2500&fit=max&auto=format&n=AcBWN86l7cA24wcQ&q=85&s=65806d0b74e21fe60830e9d14ebb98e9 2500w" />
</Frame>

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

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-dev-feat-init-gt-translations/k7ye6-pv0VL5gE4A/docs/images/cdy7uua7fh8z/4D42A6ww4XvFxweoxh04Rd/016c2ed9d25bc2267ed3ed31bf8b2bf6/form-fields-variable.png?fit=max&auto=format&n=k7ye6-pv0VL5gE4A&q=85&s=a1688e1e10f864329af9a6a2dc7a6d5d" 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-dev-feat-init-gt-translations/k7ye6-pv0VL5gE4A/docs/images/cdy7uua7fh8z/4D42A6ww4XvFxweoxh04Rd/016c2ed9d25bc2267ed3ed31bf8b2bf6/form-fields-variable.png?w=280&fit=max&auto=format&n=k7ye6-pv0VL5gE4A&q=85&s=cb4c2a3ce2983bee8d64976c6e430262 280w, https://mintcdn.com/docs-dev-feat-init-gt-translations/k7ye6-pv0VL5gE4A/docs/images/cdy7uua7fh8z/4D42A6ww4XvFxweoxh04Rd/016c2ed9d25bc2267ed3ed31bf8b2bf6/form-fields-variable.png?w=560&fit=max&auto=format&n=k7ye6-pv0VL5gE4A&q=85&s=055f71cb53cf129ee83a90ff12dbe0d7 560w, https://mintcdn.com/docs-dev-feat-init-gt-translations/k7ye6-pv0VL5gE4A/docs/images/cdy7uua7fh8z/4D42A6ww4XvFxweoxh04Rd/016c2ed9d25bc2267ed3ed31bf8b2bf6/form-fields-variable.png?w=840&fit=max&auto=format&n=k7ye6-pv0VL5gE4A&q=85&s=e1cf145de69c683c9de70c9e71ad1df5 840w, https://mintcdn.com/docs-dev-feat-init-gt-translations/k7ye6-pv0VL5gE4A/docs/images/cdy7uua7fh8z/4D42A6ww4XvFxweoxh04Rd/016c2ed9d25bc2267ed3ed31bf8b2bf6/form-fields-variable.png?w=1100&fit=max&auto=format&n=k7ye6-pv0VL5gE4A&q=85&s=fe55003e32ecb36d075be81c8fbf85d0 1100w, https://mintcdn.com/docs-dev-feat-init-gt-translations/k7ye6-pv0VL5gE4A/docs/images/cdy7uua7fh8z/4D42A6ww4XvFxweoxh04Rd/016c2ed9d25bc2267ed3ed31bf8b2bf6/form-fields-variable.png?w=1650&fit=max&auto=format&n=k7ye6-pv0VL5gE4A&q=85&s=97ef023cd1d0f3481db89064e6efc219 1650w, https://mintcdn.com/docs-dev-feat-init-gt-translations/k7ye6-pv0VL5gE4A/docs/images/cdy7uua7fh8z/4D42A6ww4XvFxweoxh04Rd/016c2ed9d25bc2267ed3ed31bf8b2bf6/form-fields-variable.png?w=2500&fit=max&auto=format&n=k7ye6-pv0VL5gE4A&q=85&s=dffe22ec601036f76c3c2c6a97990a71 2500w" />
</Frame>

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

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-dev-feat-init-gt-translations/ga3rC1_4s-OF6Vr-/docs/images/cdy7uua7fh8z/6jYtEdYqSGXm3DDv0mxQ0o/2d48012629745e07137bf6ba42f4d829/flow-output-variable.png?fit=max&auto=format&n=ga3rC1_4s-OF6Vr-&q=85&s=b64de3039be55bb8c737601a969ec2c7" 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-dev-feat-init-gt-translations/ga3rC1_4s-OF6Vr-/docs/images/cdy7uua7fh8z/6jYtEdYqSGXm3DDv0mxQ0o/2d48012629745e07137bf6ba42f4d829/flow-output-variable.png?w=280&fit=max&auto=format&n=ga3rC1_4s-OF6Vr-&q=85&s=3692b9ce2ff495266cdd04d8a856bf9f 280w, https://mintcdn.com/docs-dev-feat-init-gt-translations/ga3rC1_4s-OF6Vr-/docs/images/cdy7uua7fh8z/6jYtEdYqSGXm3DDv0mxQ0o/2d48012629745e07137bf6ba42f4d829/flow-output-variable.png?w=560&fit=max&auto=format&n=ga3rC1_4s-OF6Vr-&q=85&s=4da67b6f654530f2615892ed6460878e 560w, https://mintcdn.com/docs-dev-feat-init-gt-translations/ga3rC1_4s-OF6Vr-/docs/images/cdy7uua7fh8z/6jYtEdYqSGXm3DDv0mxQ0o/2d48012629745e07137bf6ba42f4d829/flow-output-variable.png?w=840&fit=max&auto=format&n=ga3rC1_4s-OF6Vr-&q=85&s=3ac1e2dcbf9257341435a75443da2425 840w, https://mintcdn.com/docs-dev-feat-init-gt-translations/ga3rC1_4s-OF6Vr-/docs/images/cdy7uua7fh8z/6jYtEdYqSGXm3DDv0mxQ0o/2d48012629745e07137bf6ba42f4d829/flow-output-variable.png?w=1100&fit=max&auto=format&n=ga3rC1_4s-OF6Vr-&q=85&s=d7a86a34b2d0b8aff70407c8a094efee 1100w, https://mintcdn.com/docs-dev-feat-init-gt-translations/ga3rC1_4s-OF6Vr-/docs/images/cdy7uua7fh8z/6jYtEdYqSGXm3DDv0mxQ0o/2d48012629745e07137bf6ba42f4d829/flow-output-variable.png?w=1650&fit=max&auto=format&n=ga3rC1_4s-OF6Vr-&q=85&s=a15e45247f7290abf8c992309468ca7d 1650w, https://mintcdn.com/docs-dev-feat-init-gt-translations/ga3rC1_4s-OF6Vr-/docs/images/cdy7uua7fh8z/6jYtEdYqSGXm3DDv0mxQ0o/2d48012629745e07137bf6ba42f4d829/flow-output-variable.png?w=2500&fit=max&auto=format&n=ga3rC1_4s-OF6Vr-&q=85&s=8176a5efa1913fd418c049db674593bb 2500w" />
</Frame>

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

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-dev-feat-init-gt-translations/k7ye6-pv0VL5gE4A/docs/images/cdy7uua7fh8z/4571ExRTHL0KZKJKX9pNwj/abb631b8608a6356b0e5b3784cf8b02f/flow-shared-variable.png?fit=max&auto=format&n=k7ye6-pv0VL5gE4A&q=85&s=2acdf9a35591000ea3b45e599f57ee46" 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-dev-feat-init-gt-translations/k7ye6-pv0VL5gE4A/docs/images/cdy7uua7fh8z/4571ExRTHL0KZKJKX9pNwj/abb631b8608a6356b0e5b3784cf8b02f/flow-shared-variable.png?w=280&fit=max&auto=format&n=k7ye6-pv0VL5gE4A&q=85&s=1e3763becae681084b8a9436a9d881f9 280w, https://mintcdn.com/docs-dev-feat-init-gt-translations/k7ye6-pv0VL5gE4A/docs/images/cdy7uua7fh8z/4571ExRTHL0KZKJKX9pNwj/abb631b8608a6356b0e5b3784cf8b02f/flow-shared-variable.png?w=560&fit=max&auto=format&n=k7ye6-pv0VL5gE4A&q=85&s=9e14a048e87c695dcea1c7c653043dbb 560w, https://mintcdn.com/docs-dev-feat-init-gt-translations/k7ye6-pv0VL5gE4A/docs/images/cdy7uua7fh8z/4571ExRTHL0KZKJKX9pNwj/abb631b8608a6356b0e5b3784cf8b02f/flow-shared-variable.png?w=840&fit=max&auto=format&n=k7ye6-pv0VL5gE4A&q=85&s=b7ed3d904936764017c10f5816c7d623 840w, https://mintcdn.com/docs-dev-feat-init-gt-translations/k7ye6-pv0VL5gE4A/docs/images/cdy7uua7fh8z/4571ExRTHL0KZKJKX9pNwj/abb631b8608a6356b0e5b3784cf8b02f/flow-shared-variable.png?w=1100&fit=max&auto=format&n=k7ye6-pv0VL5gE4A&q=85&s=a3175662812f1b18575d77e927513201 1100w, https://mintcdn.com/docs-dev-feat-init-gt-translations/k7ye6-pv0VL5gE4A/docs/images/cdy7uua7fh8z/4571ExRTHL0KZKJKX9pNwj/abb631b8608a6356b0e5b3784cf8b02f/flow-shared-variable.png?w=1650&fit=max&auto=format&n=k7ye6-pv0VL5gE4A&q=85&s=bd1d86020c8edb796b79aaebf430cbd4 1650w, https://mintcdn.com/docs-dev-feat-init-gt-translations/k7ye6-pv0VL5gE4A/docs/images/cdy7uua7fh8z/4571ExRTHL0KZKJKX9pNwj/abb631b8608a6356b0e5b3784cf8b02f/flow-shared-variable.png?w=2500&fit=max&auto=format&n=k7ye6-pv0VL5gE4A&q=85&s=a42b64114c44b5223da0fefce2c2b2b3 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>

<div id="helper-functions">
  ### Fonctions utilitaires
</div>

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-dev-feat-init-gt-translations/2ut5cR-lHY2UVI81/docs/images/cdy7uua7fh8z/1gyox33XJEtdkT43NppblT/0e878cc5ae2bde11b4207e105bbac6c5/flow-helper-functions.png?fit=max&auto=format&n=2ut5cR-lHY2UVI81&q=85&s=eaa2117ef4aae6155af9b6857faeed32" 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-dev-feat-init-gt-translations/2ut5cR-lHY2UVI81/docs/images/cdy7uua7fh8z/1gyox33XJEtdkT43NppblT/0e878cc5ae2bde11b4207e105bbac6c5/flow-helper-functions.png?w=280&fit=max&auto=format&n=2ut5cR-lHY2UVI81&q=85&s=97ace5949b457199f6d5ba2dbe4e9556 280w, https://mintcdn.com/docs-dev-feat-init-gt-translations/2ut5cR-lHY2UVI81/docs/images/cdy7uua7fh8z/1gyox33XJEtdkT43NppblT/0e878cc5ae2bde11b4207e105bbac6c5/flow-helper-functions.png?w=560&fit=max&auto=format&n=2ut5cR-lHY2UVI81&q=85&s=6f5bd5efc63d3e7a25cb237cea6af7f8 560w, https://mintcdn.com/docs-dev-feat-init-gt-translations/2ut5cR-lHY2UVI81/docs/images/cdy7uua7fh8z/1gyox33XJEtdkT43NppblT/0e878cc5ae2bde11b4207e105bbac6c5/flow-helper-functions.png?w=840&fit=max&auto=format&n=2ut5cR-lHY2UVI81&q=85&s=b89a5c470a07f93e9ede774760432e9e 840w, https://mintcdn.com/docs-dev-feat-init-gt-translations/2ut5cR-lHY2UVI81/docs/images/cdy7uua7fh8z/1gyox33XJEtdkT43NppblT/0e878cc5ae2bde11b4207e105bbac6c5/flow-helper-functions.png?w=1100&fit=max&auto=format&n=2ut5cR-lHY2UVI81&q=85&s=dd9c7db4878e23b4736633fa34074607 1100w, https://mintcdn.com/docs-dev-feat-init-gt-translations/2ut5cR-lHY2UVI81/docs/images/cdy7uua7fh8z/1gyox33XJEtdkT43NppblT/0e878cc5ae2bde11b4207e105bbac6c5/flow-helper-functions.png?w=1650&fit=max&auto=format&n=2ut5cR-lHY2UVI81&q=85&s=1fa25d3a10ffb0ca8672fe2aa3799b59 1650w, https://mintcdn.com/docs-dev-feat-init-gt-translations/2ut5cR-lHY2UVI81/docs/images/cdy7uua7fh8z/1gyox33XJEtdkT43NppblT/0e878cc5ae2bde11b4207e105bbac6c5/flow-helper-functions.png?w=2500&fit=max&auto=format&n=2ut5cR-lHY2UVI81&q=85&s=49267a66a556307e8edd1a07839f3e1b 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`                                                  |

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

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

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`.

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

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.

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

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.

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

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

<Frame>
  <img src="https://mintcdn.com/docs-dev-feat-init-gt-translations/AcBWN86l7cA24wcQ/docs/images/cdy7uua7fh8z/3SKnDuaMzSImxZtDDAoZaz/9ea800fad29ef71d1ded3c72b87660a4/Autocomplete-flows.png?fit=max&auto=format&n=AcBWN86l7cA24wcQ&q=85&s=312f5a27551095ebcbc96868ebcdca26" 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-dev-feat-init-gt-translations/AcBWN86l7cA24wcQ/docs/images/cdy7uua7fh8z/3SKnDuaMzSImxZtDDAoZaz/9ea800fad29ef71d1ded3c72b87660a4/Autocomplete-flows.png?w=280&fit=max&auto=format&n=AcBWN86l7cA24wcQ&q=85&s=af21e01b54fbf9fffbaa232ce7065d97 280w, https://mintcdn.com/docs-dev-feat-init-gt-translations/AcBWN86l7cA24wcQ/docs/images/cdy7uua7fh8z/3SKnDuaMzSImxZtDDAoZaz/9ea800fad29ef71d1ded3c72b87660a4/Autocomplete-flows.png?w=560&fit=max&auto=format&n=AcBWN86l7cA24wcQ&q=85&s=dd44c7912d3eec9db0d4c91f4899d909 560w, https://mintcdn.com/docs-dev-feat-init-gt-translations/AcBWN86l7cA24wcQ/docs/images/cdy7uua7fh8z/3SKnDuaMzSImxZtDDAoZaz/9ea800fad29ef71d1ded3c72b87660a4/Autocomplete-flows.png?w=840&fit=max&auto=format&n=AcBWN86l7cA24wcQ&q=85&s=22404543365027d4d67d3e022dddaab2 840w, https://mintcdn.com/docs-dev-feat-init-gt-translations/AcBWN86l7cA24wcQ/docs/images/cdy7uua7fh8z/3SKnDuaMzSImxZtDDAoZaz/9ea800fad29ef71d1ded3c72b87660a4/Autocomplete-flows.png?w=1100&fit=max&auto=format&n=AcBWN86l7cA24wcQ&q=85&s=4cee1c86849c53a6a3023712ef3924b2 1100w, https://mintcdn.com/docs-dev-feat-init-gt-translations/AcBWN86l7cA24wcQ/docs/images/cdy7uua7fh8z/3SKnDuaMzSImxZtDDAoZaz/9ea800fad29ef71d1ded3c72b87660a4/Autocomplete-flows.png?w=1650&fit=max&auto=format&n=AcBWN86l7cA24wcQ&q=85&s=60387b1ee1367790752c2ac9afdbf7c2 1650w, https://mintcdn.com/docs-dev-feat-init-gt-translations/AcBWN86l7cA24wcQ/docs/images/cdy7uua7fh8z/3SKnDuaMzSImxZtDDAoZaz/9ea800fad29ef71d1ded3c72b87660a4/Autocomplete-flows.png?w=2500&fit=max&auto=format&n=AcBWN86l7cA24wcQ&q=85&s=c2e4d9cf84c01726efea294c791a697c 2500w" />
</Frame>

<Frame>
  <img src="https://mintcdn.com/docs-dev-feat-init-gt-translations/AcBWN86l7cA24wcQ/docs/images/cdy7uua7fh8z/2kjRKozVgrd2a7UJXOANaN/ee5452d7210cd2f13b0e97763f11c82a/Autocomplete-forms.png?fit=max&auto=format&n=AcBWN86l7cA24wcQ&q=85&s=2abe80bd39024c93c026486613d438d2" 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-dev-feat-init-gt-translations/AcBWN86l7cA24wcQ/docs/images/cdy7uua7fh8z/2kjRKozVgrd2a7UJXOANaN/ee5452d7210cd2f13b0e97763f11c82a/Autocomplete-forms.png?w=280&fit=max&auto=format&n=AcBWN86l7cA24wcQ&q=85&s=d5c1f95a30a5daf869635f6f9749289b 280w, https://mintcdn.com/docs-dev-feat-init-gt-translations/AcBWN86l7cA24wcQ/docs/images/cdy7uua7fh8z/2kjRKozVgrd2a7UJXOANaN/ee5452d7210cd2f13b0e97763f11c82a/Autocomplete-forms.png?w=560&fit=max&auto=format&n=AcBWN86l7cA24wcQ&q=85&s=24d831058c187827fc17c9f60709770d 560w, https://mintcdn.com/docs-dev-feat-init-gt-translations/AcBWN86l7cA24wcQ/docs/images/cdy7uua7fh8z/2kjRKozVgrd2a7UJXOANaN/ee5452d7210cd2f13b0e97763f11c82a/Autocomplete-forms.png?w=840&fit=max&auto=format&n=AcBWN86l7cA24wcQ&q=85&s=6cb7917753169d648cdfc23833168964 840w, https://mintcdn.com/docs-dev-feat-init-gt-translations/AcBWN86l7cA24wcQ/docs/images/cdy7uua7fh8z/2kjRKozVgrd2a7UJXOANaN/ee5452d7210cd2f13b0e97763f11c82a/Autocomplete-forms.png?w=1100&fit=max&auto=format&n=AcBWN86l7cA24wcQ&q=85&s=ad634be3585a01ba1451050ac1563fdd 1100w, https://mintcdn.com/docs-dev-feat-init-gt-translations/AcBWN86l7cA24wcQ/docs/images/cdy7uua7fh8z/2kjRKozVgrd2a7UJXOANaN/ee5452d7210cd2f13b0e97763f11c82a/Autocomplete-forms.png?w=1650&fit=max&auto=format&n=AcBWN86l7cA24wcQ&q=85&s=c27d0987d3f0a3c8ad7e4d9297d83d38 1650w, https://mintcdn.com/docs-dev-feat-init-gt-translations/AcBWN86l7cA24wcQ/docs/images/cdy7uua7fh8z/2kjRKozVgrd2a7UJXOANaN/ee5452d7210cd2f13b0e97763f11c82a/Autocomplete-forms.png?w=2500&fit=max&auto=format&n=AcBWN86l7cA24wcQ&q=85&s=d927a7041cfe10de6f35b19f90e2580f 2500w" />
</Frame>
