> ## Documentation Index
> Fetch the complete documentation index at: https://translations.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

> Découvrez comment utiliser des variables dans Forms pour Actions.

# Variables et fonctions utilitaires

Les variables vous permettent d’accéder aux données contenues dans Forms et Flows afin de 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, l’effet est le même qu’avec une variable `undefined`.
* Vous pouvez utiliser des opérateurs de coalescence des nuls 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 des clients avec Forms et Flows.

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

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

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

* L’objet `user`, qui donne 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`, qui donne accès aux propriétés suivantes :

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

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

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

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

  * `custome_domain.domain`
  * `custome_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..."
    },
    "custom_domain": {
      "domain": "example.com",
      "domain_metadata": {
        "key": "value"
      }
    }
  }
  ```
</Accordion>

Par exemple :  `{{context.user.user_id}}` fait référence à `user_id` de l’objet `user`.

<Frame>
  <img src="https://mintcdn.com/translations/3nS3prIggmJG9TUI/docs/images/cdy7uua7fh8z/3B8DRhXO2wGqeqSFb8KbQv/0a61cdbbb7f1d290950a2ddb9857aac3/Contex-variable.png?fit=max&auto=format&n=3nS3prIggmJG9TUI&q=85&s=e80cd658d3ef49e3b24690d13fd86bf6" 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/translations/3nS3prIggmJG9TUI/docs/images/cdy7uua7fh8z/3B8DRhXO2wGqeqSFb8KbQv/0a61cdbbb7f1d290950a2ddb9857aac3/Contex-variable.png?w=280&fit=max&auto=format&n=3nS3prIggmJG9TUI&q=85&s=f2652302f345197cc909d530dda53798 280w, https://mintcdn.com/translations/3nS3prIggmJG9TUI/docs/images/cdy7uua7fh8z/3B8DRhXO2wGqeqSFb8KbQv/0a61cdbbb7f1d290950a2ddb9857aac3/Contex-variable.png?w=560&fit=max&auto=format&n=3nS3prIggmJG9TUI&q=85&s=3197e74981653c0be27ba5f58094623d 560w, https://mintcdn.com/translations/3nS3prIggmJG9TUI/docs/images/cdy7uua7fh8z/3B8DRhXO2wGqeqSFb8KbQv/0a61cdbbb7f1d290950a2ddb9857aac3/Contex-variable.png?w=840&fit=max&auto=format&n=3nS3prIggmJG9TUI&q=85&s=4fe0fa65ee4c47dc7030b31c20c5384c 840w, https://mintcdn.com/translations/3nS3prIggmJG9TUI/docs/images/cdy7uua7fh8z/3B8DRhXO2wGqeqSFb8KbQv/0a61cdbbb7f1d290950a2ddb9857aac3/Contex-variable.png?w=1100&fit=max&auto=format&n=3nS3prIggmJG9TUI&q=85&s=4113fcdc09945701806d18054239bc9b 1100w, https://mintcdn.com/translations/3nS3prIggmJG9TUI/docs/images/cdy7uua7fh8z/3B8DRhXO2wGqeqSFb8KbQv/0a61cdbbb7f1d290950a2ddb9857aac3/Contex-variable.png?w=1650&fit=max&auto=format&n=3nS3prIggmJG9TUI&q=85&s=425d300ae777c370105a292622de5775 1650w, https://mintcdn.com/translations/3nS3prIggmJG9TUI/docs/images/cdy7uua7fh8z/3B8DRhXO2wGqeqSFb8KbQv/0a61cdbbb7f1d290950a2ddb9857aac3/Contex-variable.png?w=2500&fit=max&auto=format&n=3nS3prIggmJG9TUI&q=85&s=49f492d1e906b41b7849e9e2d43be02d 2500w" />
</Frame>

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

Les variables de champ contiennent les données recueillies auprès de l’utilisateur à partir des champs de saisie du formulaire, ainsi que les données des champs masqués. Les données de chaque champ varient selon son type. Par exemple : `{{fields.first_name}}` fait référence à la valeur saisie dans un champ dont l’ID est `first_name`.

<Frame>
  <img src="https://mintcdn.com/translations/pvjQqAy3EB2TK6NP/docs/images/cdy7uua7fh8z/4D42A6ww4XvFxweoxh04Rd/016c2ed9d25bc2267ed3ed31bf8b2bf6/form-fields-variable.png?fit=max&auto=format&n=pvjQqAy3EB2TK6NP&q=85&s=4db948288f9a3982a1287ae7eb3f97f6" 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/translations/pvjQqAy3EB2TK6NP/docs/images/cdy7uua7fh8z/4D42A6ww4XvFxweoxh04Rd/016c2ed9d25bc2267ed3ed31bf8b2bf6/form-fields-variable.png?w=280&fit=max&auto=format&n=pvjQqAy3EB2TK6NP&q=85&s=749968f77f9168cc53083818b6a81292 280w, https://mintcdn.com/translations/pvjQqAy3EB2TK6NP/docs/images/cdy7uua7fh8z/4D42A6ww4XvFxweoxh04Rd/016c2ed9d25bc2267ed3ed31bf8b2bf6/form-fields-variable.png?w=560&fit=max&auto=format&n=pvjQqAy3EB2TK6NP&q=85&s=49f1001a64dcac22c9757f7b31809203 560w, https://mintcdn.com/translations/pvjQqAy3EB2TK6NP/docs/images/cdy7uua7fh8z/4D42A6ww4XvFxweoxh04Rd/016c2ed9d25bc2267ed3ed31bf8b2bf6/form-fields-variable.png?w=840&fit=max&auto=format&n=pvjQqAy3EB2TK6NP&q=85&s=675820d38333007ffd12a464d032bfc2 840w, https://mintcdn.com/translations/pvjQqAy3EB2TK6NP/docs/images/cdy7uua7fh8z/4D42A6ww4XvFxweoxh04Rd/016c2ed9d25bc2267ed3ed31bf8b2bf6/form-fields-variable.png?w=1100&fit=max&auto=format&n=pvjQqAy3EB2TK6NP&q=85&s=642063495310f8a9d2756e98fb9ad1a4 1100w, https://mintcdn.com/translations/pvjQqAy3EB2TK6NP/docs/images/cdy7uua7fh8z/4D42A6ww4XvFxweoxh04Rd/016c2ed9d25bc2267ed3ed31bf8b2bf6/form-fields-variable.png?w=1650&fit=max&auto=format&n=pvjQqAy3EB2TK6NP&q=85&s=e79262a29f91494dde115d5d7a07f6b2 1650w, https://mintcdn.com/translations/pvjQqAy3EB2TK6NP/docs/images/cdy7uua7fh8z/4D42A6ww4XvFxweoxh04Rd/016c2ed9d25bc2267ed3ed31bf8b2bf6/form-fields-variable.png?w=2500&fit=max&auto=format&n=pvjQqAy3EB2TK6NP&q=85&s=39f69225b5d034ce4860d6adc33b150f 2500w" />
</Frame>

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

Lorsqu’une action de Flow est exécutée, elle génère un objet de sortie auquel il est possible de faire référence dans les actions suivantes. Par exemple : `{{actions.generate_otp.code}}` fait référence au code de sortie de l’action dont l’ID est `generate_otp`.

<Frame>
  <img src="https://mintcdn.com/translations/6GE5Z24GDCZehiJ9/docs/images/cdy7uua7fh8z/6jYtEdYqSGXm3DDv0mxQ0o/2d48012629745e07137bf6ba42f4d829/flow-output-variable.png?fit=max&auto=format&n=6GE5Z24GDCZehiJ9&q=85&s=31ada4c6ab06b407fcb45d522223ad15" 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/translations/6GE5Z24GDCZehiJ9/docs/images/cdy7uua7fh8z/6jYtEdYqSGXm3DDv0mxQ0o/2d48012629745e07137bf6ba42f4d829/flow-output-variable.png?w=280&fit=max&auto=format&n=6GE5Z24GDCZehiJ9&q=85&s=7194e7f42b8b25f1b8a62a7beccc39e5 280w, https://mintcdn.com/translations/6GE5Z24GDCZehiJ9/docs/images/cdy7uua7fh8z/6jYtEdYqSGXm3DDv0mxQ0o/2d48012629745e07137bf6ba42f4d829/flow-output-variable.png?w=560&fit=max&auto=format&n=6GE5Z24GDCZehiJ9&q=85&s=f3ba6754f5bccbd52dae0685b9755021 560w, https://mintcdn.com/translations/6GE5Z24GDCZehiJ9/docs/images/cdy7uua7fh8z/6jYtEdYqSGXm3DDv0mxQ0o/2d48012629745e07137bf6ba42f4d829/flow-output-variable.png?w=840&fit=max&auto=format&n=6GE5Z24GDCZehiJ9&q=85&s=86302e4b5c81c7c386744ffba1c01071 840w, https://mintcdn.com/translations/6GE5Z24GDCZehiJ9/docs/images/cdy7uua7fh8z/6jYtEdYqSGXm3DDv0mxQ0o/2d48012629745e07137bf6ba42f4d829/flow-output-variable.png?w=1100&fit=max&auto=format&n=6GE5Z24GDCZehiJ9&q=85&s=4e92862337226690de3e94ba9f936234 1100w, https://mintcdn.com/translations/6GE5Z24GDCZehiJ9/docs/images/cdy7uua7fh8z/6jYtEdYqSGXm3DDv0mxQ0o/2d48012629745e07137bf6ba42f4d829/flow-output-variable.png?w=1650&fit=max&auto=format&n=6GE5Z24GDCZehiJ9&q=85&s=07c70fb92a3a745bf502be0372cba767 1650w, https://mintcdn.com/translations/6GE5Z24GDCZehiJ9/docs/images/cdy7uua7fh8z/6jYtEdYqSGXm3DDv0mxQ0o/2d48012629745e07137bf6ba42f4d829/flow-output-variable.png?w=2500&fit=max&auto=format&n=6GE5Z24GDCZehiJ9&q=85&s=87b426ecb8a273e2944910f6586e3494 2500w" />
</Frame>

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

Vous pouvez stocker des variables pour les partager avec les flux suivants, 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 peuvent pas être consultées en dehors de ce parcours. Par exemple : `{{vars.external_id}}` fait référence à la valeur d’une variable partagée ayant pour ID `external_id`.

<Frame>
  <img src="https://mintcdn.com/translations/pvjQqAy3EB2TK6NP/docs/images/cdy7uua7fh8z/4571ExRTHL0KZKJKX9pNwj/abb631b8608a6356b0e5b3784cf8b02f/flow-shared-variable.png?fit=max&auto=format&n=pvjQqAy3EB2TK6NP&q=85&s=c3800820997f3f2c68702b337b879b79" 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/translations/pvjQqAy3EB2TK6NP/docs/images/cdy7uua7fh8z/4571ExRTHL0KZKJKX9pNwj/abb631b8608a6356b0e5b3784cf8b02f/flow-shared-variable.png?w=280&fit=max&auto=format&n=pvjQqAy3EB2TK6NP&q=85&s=b16c02d636b0cd4db1f596dd57f722f5 280w, https://mintcdn.com/translations/pvjQqAy3EB2TK6NP/docs/images/cdy7uua7fh8z/4571ExRTHL0KZKJKX9pNwj/abb631b8608a6356b0e5b3784cf8b02f/flow-shared-variable.png?w=560&fit=max&auto=format&n=pvjQqAy3EB2TK6NP&q=85&s=cbdebe6a94a56d16a1d1201a86987a4c 560w, https://mintcdn.com/translations/pvjQqAy3EB2TK6NP/docs/images/cdy7uua7fh8z/4571ExRTHL0KZKJKX9pNwj/abb631b8608a6356b0e5b3784cf8b02f/flow-shared-variable.png?w=840&fit=max&auto=format&n=pvjQqAy3EB2TK6NP&q=85&s=9a21b967f39862c7dbfd6efd38596705 840w, https://mintcdn.com/translations/pvjQqAy3EB2TK6NP/docs/images/cdy7uua7fh8z/4571ExRTHL0KZKJKX9pNwj/abb631b8608a6356b0e5b3784cf8b02f/flow-shared-variable.png?w=1100&fit=max&auto=format&n=pvjQqAy3EB2TK6NP&q=85&s=36c410e86e05780673c6e011e646219a 1100w, https://mintcdn.com/translations/pvjQqAy3EB2TK6NP/docs/images/cdy7uua7fh8z/4571ExRTHL0KZKJKX9pNwj/abb631b8608a6356b0e5b3784cf8b02f/flow-shared-variable.png?w=1650&fit=max&auto=format&n=pvjQqAy3EB2TK6NP&q=85&s=e0e658d35da133711d9ff7e2323262eb 1650w, https://mintcdn.com/translations/pvjQqAy3EB2TK6NP/docs/images/cdy7uua7fh8z/4571ExRTHL0KZKJKX9pNwj/abb631b8608a6356b0e5b3784cf8b02f/flow-shared-variable.png?w=2500&fit=max&auto=format&n=pvjQqAy3EB2TK6NP&q=85&s=253e133a52172269912693b398153a7a 2500w" />
</Frame>

<Warning>
  Les 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 référencez 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)}}` permet de transformer la valeur du champ dont l’ID est `privacy_policies` à l’aide de la fonction `toString()`.

<Frame>
  <img src="https://mintcdn.com/translations/eVsQcTnbClN-oB7d/docs/images/cdy7uua7fh8z/1gyox33XJEtdkT43NppblT/0e878cc5ae2bde11b4207e105bbac6c5/flow-helper-functions.png?fit=max&auto=format&n=eVsQcTnbClN-oB7d&q=85&s=844a6465e7af13922ac164c5172bf24d" 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/translations/eVsQcTnbClN-oB7d/docs/images/cdy7uua7fh8z/1gyox33XJEtdkT43NppblT/0e878cc5ae2bde11b4207e105bbac6c5/flow-helper-functions.png?w=280&fit=max&auto=format&n=eVsQcTnbClN-oB7d&q=85&s=81c91ffc87b08d5eb0c599815eb735a4 280w, https://mintcdn.com/translations/eVsQcTnbClN-oB7d/docs/images/cdy7uua7fh8z/1gyox33XJEtdkT43NppblT/0e878cc5ae2bde11b4207e105bbac6c5/flow-helper-functions.png?w=560&fit=max&auto=format&n=eVsQcTnbClN-oB7d&q=85&s=5ef9181d01b7f396568ad17e8f8ec1a0 560w, https://mintcdn.com/translations/eVsQcTnbClN-oB7d/docs/images/cdy7uua7fh8z/1gyox33XJEtdkT43NppblT/0e878cc5ae2bde11b4207e105bbac6c5/flow-helper-functions.png?w=840&fit=max&auto=format&n=eVsQcTnbClN-oB7d&q=85&s=f2595c0d7689a494d107dc788ae4f9e9 840w, https://mintcdn.com/translations/eVsQcTnbClN-oB7d/docs/images/cdy7uua7fh8z/1gyox33XJEtdkT43NppblT/0e878cc5ae2bde11b4207e105bbac6c5/flow-helper-functions.png?w=1100&fit=max&auto=format&n=eVsQcTnbClN-oB7d&q=85&s=989e55682c42f6e49424d9ba2eebfd0e 1100w, https://mintcdn.com/translations/eVsQcTnbClN-oB7d/docs/images/cdy7uua7fh8z/1gyox33XJEtdkT43NppblT/0e878cc5ae2bde11b4207e105bbac6c5/flow-helper-functions.png?w=1650&fit=max&auto=format&n=eVsQcTnbClN-oB7d&q=85&s=259543f026bf961ac119cedfa58e19c6 1650w, https://mintcdn.com/translations/eVsQcTnbClN-oB7d/docs/images/cdy7uua7fh8z/1gyox33XJEtdkT43NppblT/0e878cc5ae2bde11b4207e105bbac6c5/flow-helper-functions.png?w=2500&fit=max&auto=format&n=eVsQcTnbClN-oB7d&q=85&s=c6e349a5a8f32458c5268a5caa3ff563 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) }} // true&lt;br /&gt;&lt;br /&gt;\{\{ functions.toBoolean(0) }} // false`            |
| `length(value)`                          | Renvoie la longueur de la valeur du paramètre.                                                                                                                                                                                                                                                | `{{ functions.length('auth0') }} // 5`                                                                           |
| `mask(value)`                            | Masque une valeur pour éviter qu’elle soit exposé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 minimales et maximales incluses.                                                                                                                                                                                                        | `{{ 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 de valeurs ou d'une chaîne comprise entre les index de début et de fin.                                                                                                                                                                                      | `{{ functions.slice( 'example', 3, 5) }} // 'mp'`                                                                |
| `toString(value)`                        | Convertit la valeur en chaîne.                                                                                                                                                                                                                                                                | `{{ functions.toString(123) }} // '123'`                                                                         |
| `substring(value, start, end)`           | Retourne une partie d’une valeur comprise entre les indices de début et de fin. 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)`                      | Renvoie la date fournie au format UNIX.                                                                                                                                                                                                                                                       | `{{ functions.toTimestamp('2021-04-30T10:02:50.876Z') }} // 1619776970`                                          |
| `toTimestamp(date)`                      | Renvoie la date fournie au format UNIX.                                                                                                                                                                                                                                                       | `{{ functions.toTimestamp('2021-04-30T10:02:50.876Z') }} // 1619776970`                                          |
| `toLowerCase(value)`                     | Renvoie une nouvelle chaîne convertie en minuscules.                                                                                                                                                                                                                                          | `{{ functions.toLowerCase('JohnDoe 1234') }} // johndoe 1234`                                                    |
| `toUpperCase(value)`                     | Renvoie une nouvelle chaîne convertie 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 valeur de substitution.                                                                                                                                                                   | `{{ 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 valeur de substitution. Si pattern 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élimitées par 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 valeur donnée parmi ses éléments.                                                                                                                                                                                                                          | `{{ functions.includes(['auth0', 'identity', 'authentication'], 'identity') }} // true`                          |
| `indexOf(collection, item, fromIndex?)`  | Renvoie le premier indice auquel un élément donné se trouve dans le tableau, ou -1 s’il n’est pas présent.                                                                                                                                                                                    | `{{ 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 en SHA1.                                                                                                                                                                                                                                                            | `{{ functions.sha1('auth0') }} // b4ec5339...`                                                                   |
| `sha256(value)`                          | Renvoie une valeur hachée en SHA256.                                                                                                                                                                                                                                                          | `{{ functions.sha256('auth0') }} // d9082bdc...`                                                                 |
| `sha512(value)`                          | Renvoie une valeur hachée en 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 ID explicites
</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 repérer 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 ID existants
</div>

Si une variable est déjà utilisée et que vous devez modifier l’ID, repérez où vous y faites référence et mettez cet ID à jour en conséquence afin d’éviter des 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**](/fr-CA/docs/customize/forms/flows/flow-execution-and-debugger) pour résoudre les problèmes liés à la variable.

<div id="use-the-autocomplete-menu">
  ### Utilisez le menu d’autocomplétion
</div>

Le menu d’autocomplétion vous aide à trouver et à référencer correctement les variables existantes.

<Frame>
  <img src="https://mintcdn.com/translations/3nS3prIggmJG9TUI/docs/images/cdy7uua7fh8z/3SKnDuaMzSImxZtDDAoZaz/9ea800fad29ef71d1ded3c72b87660a4/Autocomplete-flows.png?fit=max&auto=format&n=3nS3prIggmJG9TUI&q=85&s=c0b31bd289dbe02e967429a89cc875ba" 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/translations/3nS3prIggmJG9TUI/docs/images/cdy7uua7fh8z/3SKnDuaMzSImxZtDDAoZaz/9ea800fad29ef71d1ded3c72b87660a4/Autocomplete-flows.png?w=280&fit=max&auto=format&n=3nS3prIggmJG9TUI&q=85&s=2da5136f2cf142758f6e33d3d5b4c68d 280w, https://mintcdn.com/translations/3nS3prIggmJG9TUI/docs/images/cdy7uua7fh8z/3SKnDuaMzSImxZtDDAoZaz/9ea800fad29ef71d1ded3c72b87660a4/Autocomplete-flows.png?w=560&fit=max&auto=format&n=3nS3prIggmJG9TUI&q=85&s=ed9ef91a1ba0accd12f0b88eb172d3f8 560w, https://mintcdn.com/translations/3nS3prIggmJG9TUI/docs/images/cdy7uua7fh8z/3SKnDuaMzSImxZtDDAoZaz/9ea800fad29ef71d1ded3c72b87660a4/Autocomplete-flows.png?w=840&fit=max&auto=format&n=3nS3prIggmJG9TUI&q=85&s=f7fe2cf44b584282af00bfe75beb873a 840w, https://mintcdn.com/translations/3nS3prIggmJG9TUI/docs/images/cdy7uua7fh8z/3SKnDuaMzSImxZtDDAoZaz/9ea800fad29ef71d1ded3c72b87660a4/Autocomplete-flows.png?w=1100&fit=max&auto=format&n=3nS3prIggmJG9TUI&q=85&s=ee50fd7bfdbee53ad58310799fe27b1d 1100w, https://mintcdn.com/translations/3nS3prIggmJG9TUI/docs/images/cdy7uua7fh8z/3SKnDuaMzSImxZtDDAoZaz/9ea800fad29ef71d1ded3c72b87660a4/Autocomplete-flows.png?w=1650&fit=max&auto=format&n=3nS3prIggmJG9TUI&q=85&s=3ac1c9b641f77d3e442676b83a20a8aa 1650w, https://mintcdn.com/translations/3nS3prIggmJG9TUI/docs/images/cdy7uua7fh8z/3SKnDuaMzSImxZtDDAoZaz/9ea800fad29ef71d1ded3c72b87660a4/Autocomplete-flows.png?w=2500&fit=max&auto=format&n=3nS3prIggmJG9TUI&q=85&s=8e1f5883e0460ef26b2a5c3e764febca 2500w" />
</Frame>

<Frame>
  <img src="https://mintcdn.com/translations/Dcx0M11uuptU53TX/docs/images/cdy7uua7fh8z/2kjRKozVgrd2a7UJXOANaN/ee5452d7210cd2f13b0e97763f11c82a/Autocomplete-forms.png?fit=max&auto=format&n=Dcx0M11uuptU53TX&q=85&s=22a3bdc81cd74c96cdef8470e60ee20b" alt="Dashboard > Actions > Forms > Formulaire" 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/translations/Dcx0M11uuptU53TX/docs/images/cdy7uua7fh8z/2kjRKozVgrd2a7UJXOANaN/ee5452d7210cd2f13b0e97763f11c82a/Autocomplete-forms.png?w=280&fit=max&auto=format&n=Dcx0M11uuptU53TX&q=85&s=34e352877f8f4e3e0b0454d12697b7f2 280w, https://mintcdn.com/translations/Dcx0M11uuptU53TX/docs/images/cdy7uua7fh8z/2kjRKozVgrd2a7UJXOANaN/ee5452d7210cd2f13b0e97763f11c82a/Autocomplete-forms.png?w=560&fit=max&auto=format&n=Dcx0M11uuptU53TX&q=85&s=daea0970636a77da3620fd80acfb35c6 560w, https://mintcdn.com/translations/Dcx0M11uuptU53TX/docs/images/cdy7uua7fh8z/2kjRKozVgrd2a7UJXOANaN/ee5452d7210cd2f13b0e97763f11c82a/Autocomplete-forms.png?w=840&fit=max&auto=format&n=Dcx0M11uuptU53TX&q=85&s=8a7f6ed4ceedc0bdcd347e6b5a3155e9 840w, https://mintcdn.com/translations/Dcx0M11uuptU53TX/docs/images/cdy7uua7fh8z/2kjRKozVgrd2a7UJXOANaN/ee5452d7210cd2f13b0e97763f11c82a/Autocomplete-forms.png?w=1100&fit=max&auto=format&n=Dcx0M11uuptU53TX&q=85&s=1318d218d5feb9177cf1d3af0677b6c1 1100w, https://mintcdn.com/translations/Dcx0M11uuptU53TX/docs/images/cdy7uua7fh8z/2kjRKozVgrd2a7UJXOANaN/ee5452d7210cd2f13b0e97763f11c82a/Autocomplete-forms.png?w=1650&fit=max&auto=format&n=Dcx0M11uuptU53TX&q=85&s=d912e2acdda53eb4c072f01967f16875 1650w, https://mintcdn.com/translations/Dcx0M11uuptU53TX/docs/images/cdy7uua7fh8z/2kjRKozVgrd2a7UJXOANaN/ee5452d7210cd2f13b0e97763f11c82a/Autocomplete-forms.png?w=2500&fit=max&auto=format&n=Dcx0M11uuptU53TX&q=85&s=e5c331a474cc8add10e642c4b6781fcb 2500w" />
</Frame>
