> This is a page from the ElevenLabs documentation. For a complete page index, fetch https://elevenlabs.io/docs/llms.txt. For the full documentation in a single file, fetch https://elevenlabs.io/docs/llms-full.txt.

# Personnalisation

## Vue d’ensemble

La personnalisation vous permet d’adapter le comportement de votre agent à chaque utilisateur, pour des conversations plus naturelles et pertinentes dans leur contexte. ElevenLabs propose plusieurs approches de personnalisation :

1. **Variables dynamiques** : injectez des valeurs d’exécution dans les prompts et les messages
2. **Remplacements** : remplacez entièrement les prompts système ou les messages
3. **Webhooks d’initialisation de conversation** : récupérez ces données depuis votre serveur au démarrage d’une conversation

## Méthodes de personnalisation

#### [Variables dynamiques](/docs/fr/eleven-agents/customization/personalization/dynamic-variables)

Définissez des valeurs d’exécution à l’aide de la syntaxe `{{ var_name }}` afin de personnaliser les messages, les prompts
système et les outils de votre agent.

#### [Remplacements](/docs/fr/eleven-agents/customization/personalization/overrides)

Remplacez entièrement les prompts système, les premiers messages, la langue ou les paramètres vocaux pour chaque
conversation.

#### [Webhooks d’initialisation de conversation](/docs/fr/eleven-agents/customization/personalization#conversation-initiation-webhooks)

Récupérez des variables dynamiques et des remplacements depuis votre serveur pour les conversations entrantes.

## Structure des données client d’initialisation de conversation

L’objet `conversation_initiation_client_data` définit les éléments personnalisables au démarrage d’une conversation. Les clients peuvent l’envoyer directement. Un webhook d’initialisation de conversation renvoie le même objet.

```json
{
  "type": "conversation_initiation_client_data",
  "conversation_config_override": {
    "agent": {
      "prompt": {
        "prompt": "overriding system prompt",
        "llm": "gpt-5.6-luna"
      },
      "first_message": "overriding first message",
      "language": "en"
    },
    "tts": {
      "voice_id": "voice-id-here"
    },
    "conversation": {
      "text_only": false
    },
    "asr": {
      "keywords": ["Acme Corp", "Contoso"]
    }
  },
  "custom_llm_extra_body": {
    "temperature": 0.7,
    "max_tokens": 100
  },
  "dynamic_variables": {
    "string_var": "text value",
    "number_var": 1.2,
    "integer_var": 123,
    "boolean_var": true
  },
  "user_id": "your_custom_user_id",
  "branch_id": "agtbrch_xxxx",
  "environment": "production"
}
```

> **Warning**
>
> Les variables dynamiques système, celles dont le préfixe est `system__`, ne peuvent pas être envoyées ni remplacées dans la
> charge utile d’initialisation du client. Seules les variables dynamiques personnalisées peuvent être définies via le champ `dynamic_variables`.

## Webhooks d’initialisation de conversation

Pour la téléphonie et la messagerie entrantes, ElevenAgents peut récupérer ces données d’initialisation depuis votre serveur plutôt que depuis le client. Lorsque le webhook est activé, ElevenAgents envoie une requête `POST` et applique le JSON que vous renvoyez.

Configurez l’URL du webhook et les secrets d’en-tête dans les [paramètres des agents](https://elevenlabs.io/app/agents/settings). Dans l’onglet **Sécurité** de l’agent, activez **Récupérer les données client d’initialisation depuis un webhook** ainsi que tous les champs de remplacement que votre réponse peut inclure.

Le webhook s’exécute pour une nouvelle conversation entrante sur Twilio Voice, Exotel, un trunk SIP, WhatsApp ou Twilio SMS lorsque les données client d’initialisation ne sont pas déjà présentes. Il s’exécute également pour les sessions [Amazon Connect](/docs/fr/eleven-agents/phone-numbers/c-caa-s-integrations/amazon-connect#dynamic-variables), où votre réponse est fusionnée avec le contexte de contact fourni par Amazon Connect.

Les appels sortants via Twilio Voice, Exotel, SIP et WhatsApp ne le déclenchent que si la requête sortante n’incluait pas `conversation_initiation_client_data`. Les messages WhatsApp sortants ne le déclenchent jamais. Transmettez plutôt les variables dynamiques dans la requête sortante.

Il ne s’exécute pas pour les conversations via widget ou SDK, les autres intégrations de messagerie, ni les fils WhatsApp et SMS repris.

> **Warning**
>
> Les conversations de prévisualisation lancées depuis la page des paramètres de l’agent ne déclenchent pas les webhooks
> d’initialisation de conversation. Lors de vos tests dans Prévisualisation, utilisez les espaces réservés **Variables dynamiques** dans l’éditeur d’agent.
> Ces espaces réservés ne sont pas utilisés dans les conversations entrantes en production.

ElevenAgents envoie le contexte de l’appelant dans le corps de la requête :

```json
{
  "caller_id": "+15551234567",
  "called_number": "+15557654321",
  "agent_id": "agent_7101k5zvyjhmfg983brhmhkd98n6",
  "call_sid": "CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
  "conversation_id": "conv_8901k5zvyjhmfg983brhmhkd98n6"
}
```

`caller_id` et `called_number` sont des numéros de téléphone sur Twilio, Exotel, SIP et SMS. Pour les messages WhatsApp entrants, il s’agit de l’ID utilisateur WhatsApp et de l’ID de votre numéro de téléphone WhatsApp. Pour les appels sortants, `caller_id` correspond à votre numéro et `called_number` à la personne appelée. `call_sid` est le SID d’appel du fournisseur pour la téléphonie et une chaîne vide pour WhatsApp, SMS et Amazon Connect. Les appels SIP peuvent également inclure `call_id` et `sip_headers`. Les sessions Amazon Connect incluent `call_id`, défini sur l’ID du contact.

Votre réponse doit respecter la structure `conversation_initiation_client_data` ci-dessus. Incluez toutes les variables dynamiques personnalisées définies par l’agent. Les remplacements sont facultatifs et doivent être activés dans **Sécurité**. Le corps de la réponse HTTP doit faire 256 Ko ou moins (262 144 octets).

Un webhook en échec ou expiré peut empêcher le démarrage de la conversation. Pour la configuration de Twilio, consultez [Personnalisation Twilio](/docs/fr/eleven-agents/customization/personalization/twilio-personalization). Ce webhook est distinct des [webhooks post-appel](/docs/fr/eleven-agents/workflows/post-call-webhooks).

## Choisir la bonne approche

<thead>
  <tr>
    <th>
      Méthode
    </th>

    <th>
      Idéal pour
    </th>

    <th>
      Implémentation
    </th>
  </tr>
</thead>

<tbody>
  <tr>
    <td>
      **Variables dynamiques**
    </td>

    <td>
      * Insérer des données propres à l’utilisateur dans du contenu modélisé - Maintenir un comportement cohérent de l’agent
        avec des détails personnalisés - Personnaliser les paramètres des outils
    </td>

    <td>
      Définissez des variables avec 

      `{{ variable_name }}`

       et transmettez les valeurs à l’exécution
    </td>
  </tr>

  <tr>
    <td>
      **Remplacements**
    </td>

    <td>
      * Modifier entièrement le comportement de l’agent selon l’utilisateur - Changer de langue ou de voix - Applications
        héritées (envisagez de migrer vers les variables dynamiques)
    </td>

    <td>
      Activez des autorisations de remplacement spécifiques dans les paramètres de sécurité et transmettez le contenu de
      remplacement complet
    </td>
  </tr>

  <tr>
    <td>
      **Webhooks d’initialisation de conversation**
    </td>

    <td>
      * Personnaliser depuis votre serveur les conversations entrantes Twilio, SIP, WhatsApp ou SMS -
        Rechercher le contexte de l’appelant avant le début de la conversation
    </td>

    <td>
      Activez le webhook dans les paramètres de sécurité et renvoyez `conversation_initiation_client_data`
    </td>
  </tr>
</tbody>

## En savoir plus

* [Documentation sur les variables dynamiques](/docs/fr/eleven-agents/customization/personalization/dynamic-variables)
* [Documentation sur les remplacements](/docs/fr/eleven-agents/customization/personalization/overrides)
* [Personnalisation Twilio](/docs/fr/eleven-agents/customization/personalization/twilio-personalization)