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

# Comment configurer les métadonnées d’application (client)

> Découvrez comment configurer, mettre à jour et supprimer les métadonnées d’application (client_metadata et clientMetadata).

Les métadonnées du client constituent un champ facultatif stocké dans les propriétés de l’application (client). Elles se composent de clés et de valeurs personnalisables que vous pouvez définir pour chaque application.

Vous pouvez, par exemple, y stocker l’URL de la page d’accueil de l’application (un champ qu’Auth0 ne fournit pas par défaut dans les paramètres de l’application).

<h2 id="where-to-store-client-secrets">
  Où stocker les secrets du client
</h2>

L’endroit où stocker le secret dépend de sa portée :

* S’agit-il d’un seul secret par application ? Alors `client_metadata` est un bon endroit.
* S’agit-il du même secret pour tout le système (c.-à-d. pour toutes les applications ou pour plusieurs d’entre elles) ? Alors les valeurs de configuration de la Rule pourraient être un meilleur choix.
* S’agit-il d’un secret différent pour chaque utilisateur ? Alors il peut être préférable de le stocker dans les `app_metadata` du profil utilisateur.

Les claims dans le ID token ne sont pas chiffrés. Selon le flux que vous utilisez, l’utilisateur pourrait donc être en mesure d’obtenir le token et d’en inspecter le contenu. Auth0 ne recommande **pas** de stocker un secret de cette façon.

<h2 id="configure-application-metadata">
  Configurer les métadonnées de l’application
</h2>

Vous pouvez définir les métadonnées de l’application à l’aide d’Auth0 Dashboard ou de <Tooltip tip="Management API : un produit permettant aux clients d’effectuer des tâches administratives." cta="Voir le glossaire" href="/docs/fr-ca/glossary?term=Management+API">Management API</Tooltip>.

<Tabs>
  <Tab title="Auth0 Dashboard">
    1. Accédez à [Dashboard > Applications > Applications](https://manage.auth0.com/#/applications) et sélectionnez l’application.

    2. Dans l’onglet **Settings (Paramètres)**, faites défiler la page jusqu’en bas et sélectionnez **Advanced Settings (Paramètres avancés)** pour développer la section.

           <Frame>
             <img src="https://mintlify.s3.us-west-1.amazonaws.com/auth0-automated-translations-update/docs/images/cdy7uua7fh8z/7GWHyQloNihda3fuYiVEWQ/b3cced7c53690e6f3cbf7b2e23ff8646/App_Metadata_-_English.png" alt="Dashboard Applications Applications onglet Paramètres Paramètres avancés onglet Métadonnées de l’application" />
           </Frame>

    3. Dans l’onglet **Application Metadata (Métadonnées de l’application)**, vous pouvez :

       * Ajouter des métadonnées en saisissant une clé et une valeur, puis en sélectionnant **+ Add (Ajouter)**.
       * Mettre à jour des métadonnées en saisissant la clé à modifier et sa nouvelle valeur, puis en sélectionnant **+ Add (Ajouter)**.
       * Supprimer des métadonnées en sélectionnant l’icône de corbeille à côté de la paire clé/valeur.

    4. Une fois terminé, sélectionnez **Save Changes (Enregistrer les modifications)**.
  </Tab>

  <Tab title="Management API">
    Lorsque vous créez une application avec le terminal d’applications `POST /api/v2/`, vous pouvez inclure un objet `clientMetadata` pour définir ses métadonnées initiales.

    Pour définir les métadonnées du client d’une application existante, utilisez le terminal [`PATCH /api/v2/clients/{id}`](https://auth0.com/docs/api/management/v2#!/Users/patch_users_by_id) en fournissant un objet d’application doté de la `clientMetadata property`, dont la valeur est un objet contenant les métadonnées que vous souhaitez modifier.

    Par exemple, si vous appelez `PATCH /api/v2/client/myclientid123` avec le corps suivant :

    ```json theme={null}
    { "client_metadata": { "example_key": "example_value" } }
    ```

    Vous obtenez les métadonnées suivantes :

    ```json Example metadata theme={null}
    {
      "name": "example_client",
      "client_metadata": {
        "example_key": "example_value"
      }
      ...
    }
    ```

    Vous pouvez mettre à jour des valeurs de métadonnées existantes avec un appel `PATCH` semblable, en fournissant la nouvelle valeur de la clé. Pour reprendre l’exemple précédent, si votre appel `PATCH` utilise le corps suivant :

    ```json theme={null}
    { "client_metadata": { "example_key": "updated_value" } }
    ```

    Vous obtenez les métadonnées suivantes :

    ```json Updated metadata theme={null}
    {
      "name": "example_client",
      "client_metadata": {
        "example_key": "updated_value"
      }
      ...
    }
    ```

    Vous pouvez supprimer des métadonnées du client avec un appel `PATCH` semblable, en indiquant `null` comme valeur de la clé.
  </Tab>
</Tabs>

<h2 id="view-application-metadata">
  Afficher les métadonnées d’application
</h2>

Les métadonnées sont exposées dans l’objet `Client` sous la forme `client_metadata`, et dans Rules sous la forme `context.clientMetadata`.

Vous pouvez accéder aux métadonnées d’application dans [Actions](/docs/fr-ca/customize/actions):

```js theme={null}
exports.onExecutePostLogin = async (event, api) => {
  if (event.client.metadata.SKIP_VERIFICATION === "yes"){
    return;
  }
  // ... continuer cette Action
}
```

... ou dans [Rules](/docs/fr-ca/customize/rules) :

```javascript theme={null}
function applicationMetadataExample (user, context, callback){
  context.clientMetadata = context.clientMetadata || {};
  if (context.clientMetadata.SKIP_VERIFICATION === "yes"){
    return callback();
  }
  // ... continuer cette règle
}
```

Les métadonnées du client figurent également dans les réponses des terminaux `GET /api/v2/clients` et `GET /api/v2/client/{id}` de la Management API.

<h2 id="limits">
  Limites
</h2>

* Le champ `client_metadata` peut contenir au maximum 10 clés.

* Les clés et les valeurs de `client_metadata` ne peuvent pas dépasser 255 caractères chacune.

* Les clés et les valeurs de `client_metadata` ne peuvent pas contenir de caractères spéciaux UTF-8.
