# Contenu connecté

Le contenu connecté est une fonctionnalité des [modèles Liquid](/fr/product/personalization/liquid-templates/) qui vous permet de récupérer et d'utiliser dynamiquement des données d'une source externe, comme un service web, directement dans vos messages e-mail ou de notification push. Cette fonctionnalité permet une personnalisation en temps réel en récupérant des données JSON à partir d'une URL spécifiée et en les enregistrant dans une variable qui peut être utilisée dans votre contenu.

## Principaux cas d'utilisation

-   **Recommandations de produits** : Affichez des listes de produits personnalisées adaptées à chaque utilisateur.
-   **Codes promotionnels** : Insérez des codes promotionnels uniques générés par un service backend.

## Prérequis

*   Pour utiliser le Contenu Connecté, vous devez avoir votre propre service backend qui génère et fournit les données requises (par ex., codes promotionnels, recommandations de produits) en fonction de l'**ID utilisateur, du HWID ou de tags personnalisés**. Pushwoosh récupère ensuite ces données avant d'envoyer un message.

## Guide de mise en œuvre étape par étape

<Aside type="caution" icon="setting" title="Assistance d'un développeur requise">
Vous aurez besoin de l'aide de votre équipe de développement pour utiliser le contenu connecté. Partagez ce guide avec eux pour commencer.
</Aside>

### Étape 1. Configurer le service backend

Le service backend doit :

*   Accepter une requête contenant des paramètres spécifiques à l'utilisateur (par ex., `userId`). Le Contenu Connecté prend en charge `UserID`, `HWID`, ou tout tag personnalisé que vous avez configuré dans votre projet.
*   Retourner une réponse JSON avec les données requises. Ce contenu peut ensuite être inséré dynamiquement dans les messages.

<Aside type="note" title="Comment ça marche">

Le service backend agit comme un fournisseur de données, répondant aux requêtes HTTP avec des informations spécifiques à l'utilisateur.

1.  Pushwoosh envoie une requête à votre backend, en passant des identifiants spécifiques à l'utilisateur comme paramètres de requête.
2.  Votre backend traite la requête et récupère les données demandées.
3.  Votre backend retourne une réponse JSON.
4.  Avant d'envoyer un message, Pushwoosh récupère la réponse JSON du service backend et utilise les valeurs retournées (par ex., le `code`) dynamiquement dans le contenu du message.

**Exemple de réponse**

```
{ "code": "SPECIALOFFERFORUSER12345" }
```
</Aside>

### Étape 2. Créer un préréglage avec du Contenu connecté dans Pushwoosh

1.  Dans l'éditeur de contenu [Push](/fr/product/content/push-presets/) ou [d'e-mail](/fr/product/content/email-content/drag-and-drop-email-editor/), insérez la syntaxe du Contenu Connecté dans le champ du message.

**Exemple**

```
{% connected_content http://your-backend-url.com?userId={{ ${userid} }} :save result %}  
```
**Décomposition de la syntaxe**
| | |
| ----- | ----- |
| `connected_content` | Récupère les données JSON de l'URL backend spécifiée. |
| `http://your-backend-url.com` | Le point de terminaison backend qui retourne les données requises au format JSON. |
| `userId={{ ${userid} }}` | Un paramètre de requête dynamique qui transmet l'ID utilisateur au backend. À l'intérieur de `connected_content`, entourez une variable de `${}`. Dans le texte du message, écrivez `{{userid}}` sans. |
| `:save result` | Stocke la réponse JSON récupérée dans la variable `result` pour une utilisation dans les modèles Liquid. |

![Insérer la syntaxe du Contenu Connecté](/connectedcontent.webp)

**Authentification (optionnel)**

Si votre service backend nécessite une authentification, vous pouvez inclure une clé API ou un jeton dans la requête de Contenu Connecté pour garantir un accès sécurisé.

```
{% connected_content http://your-backend-url.com?userId={{ ${userid} }}&auth=YOUR_API_KEY :save result %}  
```

Vous pouvez également envoyer des données d'authentification (ou toute autre donnée) sous forme d'en-têtes HTTP en utilisant le paramètre optionnel `:headers` — un objet JSON de noms et de valeurs d'en-têtes.

```
{% connected_content http://your-backend-url.com?userId={{ ${userid} }} :headers {"Authorization": "Bearer YOUR_TOKEN", "X-Api-Key": "YOUR_API_KEY"} :save result %}  
```
| | |
| ----- | ----- |
| `:headers {...}` | Un objet JSON d'en-têtes HTTP envoyés avec la requête, par ex. `Authorization: Bearer <token>`. |

<Aside type="caution" title="Valeurs statiques uniquement">
Les variables de personnalisation `${}` ne fonctionnent qu'à l'intérieur de l'URL. Les valeurs à l'intérieur de `:headers` sont statiques et ne sont pas interpolées.
</Aside>

<Aside type="danger" title="Ne mettez pas d'identifiants dans l'URL">
Préférez `:headers` à un paramètre de requête URL (par ex. `&auth=YOUR_API_KEY`) pour les clés API et les jetons : si la récupération échoue, l'URL de la requête est écrite dans les journaux, exposant une clé qui y est placée. Les valeurs à l'intérieur de `:headers` ne sont jamais journalisées.

Le contenu connecté nécessite également que les modèles de contenu Liquid soient activés pour votre compte. Si ce n'est pas le cas, l'ensemble du tag `connected_content` — y compris toute clé à l'intérieur — est envoyé à chaque destinataire sous forme de texte littéral au lieu d'être rendu. Contactez le [Support Pushwoosh](https://help.pushwoosh.com/hc/en-us/requests/new) si vous n'êtes pas sûr que votre compte ait cette fonctionnalité activée.
</Aside>

**Utiliser des tags dans le Contenu connecté**

Pour inclure la valeur d'un tag, ajoutez-la à l'URL comme paramètre de requête sous la même forme `{{ ${tag_name} }}`. Écrite sous la forme `{{ tag_name }}` dans le tag `connected_content`, la valeur est envoyée vide.

```
{% connected_content http://your-backend-url.com?userId={{ ${userid} }}&lang={{ ${Language} }} :save result %} 
```

2.  Ensuite, ajoutez le texte du message en incorporant les **données récupérées**, comme ceci :

```

Hey, {{userid}}, grab your personal promo code - {{result.code}} 
```

![Ajouter le texte du message avec les **données récupérées**](/connectedcontent-1.webp)

3.  Après avoir finalisé le contenu du message et configuré les paramètres du préréglage, enregistrez-le pour le réutiliser dans les campagnes.

<video src="/connectedcontent-2.webm" title="Envoyer un message avec du contenu connecté" autoplay loop muted playsinline />

### Étape 3. Envoyer un message en utilisant le préréglage configuré

Envoyez un message avec ce préréglage en utilisant le [push ponctuel](/fr/product/messaging-channels/push-notifications/send-push-notifications/one-time-push/#how-to-send-a-push-notification-using-the-one-time-push-form) ou le [formulaire d'e-mail](/fr/product/messaging-channels/emails/sending-emails/send-one-time-emails/) ou un [customer journey](/fr/product/customer-journey/pushwoosh-journey-overview/).

<Aside type="caution" title="Important">
Si le service renvoie un statut autre que HTTP 200 OK, l'e-mail ou la notification push ne sera pas envoyé. Cela garantit que votre communication n'est envoyée que si les données nécessaires sont récupérées avec succès.
</Aside>