Comment ajouter un flux web personnalisé dans un e-mail
Objectif de cet article
Découvrez comment ajouter et utiliser un flux web personnalisé dans un e-mail. Un flux web personnalisé vous permet de renseigner de manière dynamique un flux de données à partir d’une URL externe dans un e-mail Klaviyo. Avant d’envoyer un e-mail, Klaviyo effectue une requête HTTP vers l’URL et récupère les données. Le contenu du flux web est ensuite disponible pour être utilisé dans votre e-mail.
La puissance des flux web réside dans le fait qu’ils vous permettent d’utiliser un seul modèle et d’extraire du contenu de façon dynamique : il vous suffit de tenir le flux à jour, et Klaviyo veillera à ce que du contenu récent de votre flux soit intégré à chaque envoi.
Cet article passera en revue l’ajout et l’utilisation d’un flux web personnalisé dans les campagnes et les flux.
Avant de commencer
La première étape pour ajouter du contenu externe dynamique à n’importe quel e-mail dans Klaviyo consiste à créer la source de votre flux web. Votre flux doit :
- Être hébergé à une URL accessible, au format JSON ou XML
- Mesurer 3,3 Mo ou moins
- Ne pas utiliser d’URL de redirection
Klaviyo effectuera une requête HTTP vers l’URL que vous avez spécifiée et récupérera les données de votre flux. Comme les e-mails de flux sont envoyés en continu, Klaviyo maintiendra le contenu de votre flux à jour en interrogeant périodiquement l’URL de votre flux afin d’extraire le contenu actualisé selon l’un des calendriers suivants :
- Actualisation toutes les 15 minutes
Klaviyo tentera d’actualiser votre flux toutes les 15 minutes. Pour ce faire, votre flux doit se charger en moins de cinq secondes et renvoyer une réponse valide.
Bien que Klaviyo actualise les flux web toutes les 15 minutes, l’actualisation peut prendre plus de temps. Pour que les produits de votre flux web soient à jour dans les campagnes, le flux doit être actualisé au moins 30 minutes avant l’envoi d’une campagne.
- Actualisation nocturne
Si le chargement de votre flux prend plus de cinq secondes, après trois heures d’essais, nous commencerons plutôt à essayer de mettre à jour votre flux chaque nuit. Pour les actualisations nocturnes continues, votre flux doit se charger en moins de 30 secondes.
Si nous ne pouvons pas charger votre flux dans les 30 secondes pendant trois nuits consécutives, vous ne pourrez pas utiliser ce flux dans vos e-mails. Les e-mails de flux reposant sur ce flux cesseront d'être envoyés, et les e-mails de campagne et de flux ne seront pas envoyés tant que le flux n'aura pas été supprimé ou que le problème en suspens concernant votre flux n'aura pas été résolu.
Lorsque nous interrogeons votre flux, si nous obtenons une réponse d'erreur, nous ne pouvons pas accéder au contenu de votre flux. Nous suivrons le même schéma que ci-dessus et ferons une nouvelle tentative pendant trois jours au maximum. Dans l'intervalle, les e-mails ne sont pas envoyés.
Si nous avons des difficultés à accéder à votre flux web, vous recevrez des notifications dans l’application et par e-mail pour vous en informer. Une étape de dépannage simple consiste à vérifier de nouveau les exigences du flux et à vous assurer qu’elles correspondent aux paramètres décrits ci-dessus.
Si vous apportez des modifications à un flux — par exemple, réduire la taille pour accélérer le temps de chargement ou corriger un problème à l’origine d’une réponse d’erreur — et que vous souhaitez que Klaviyo tente une nouvelle actualisation, accédez au flux dans l’onglet Flux de données et cliquez sur Mettre à jour le flux de données. Nous allons tester et revalider votre flux. Si votre flux est valide et renvoie une réponse dans les délais, nous reprendrons nos tentatives pour maintenir votre contenu à jour. Il s’agit d’une bonne étape de dépannage à essayer si vous avez des difficultés à accéder à votre flux web, même si vous n’avez pas apporté de modifications.
Filtres Django
Nous prenons en charge l’utilisation des filtres Django pour les variables que vous insérez. Vous trouverez ci-dessous quelques filtres couramment utilisés, et vous pouvez en savoir plus dans notre guide sur l’utilisation des filtres pour personnaliser les variables et le glossaire des filtres de variables.
Limiter le résumé de la publication à X mots
Si vous souhaitez inclure un bref résumé d’un article de blog sous le titre de l’article (et si votre flux fournit ce texte de résumé), vous pouvez utiliser le filtre Truncate.
Pour limiter le résumé d’un article à 250 caractères, par exemple, vous pouvez utiliser :
{{ item.summary|truncatechars:250 }}
Ajouter un flux web personnalisé
Configurer votre flux
- Cliquez sur le nom de votre entreprise dans le coin inférieur gauche de Klaviyo.
- Cliquez sur Paramètres.
- Cliquez sur Autre.
- Cliquez sur Flux web.
- Cliquez sur Ajouter un flux web.
- Renseignez les champs du flux Web comme suit :
- Nom du flux
Vous utiliserez plus tard cet identifiant dans votre modèle pour accéder au contenu du flux. Donnez à votre flux un nom court et descriptif. Nous vous recommandons de nommer les flux en casse chameau (p. ex., "MyDataFeed") ou en TOUTES MAJUSCULES, en remplaçant les espaces par des traits de soulignement (p. ex., "MY_DATA_FEED"). Les espaces ne sont pas autorisés dans les noms de flux. - URL du flux
Le point de terminaison que Klaviyo utilise pour récupérer le contenu du flux (c’est-à-dire l’URL du flux JSON ou XML configuré précédemment). Si votre flux contient des informations privées, nous vous recommandons vivement d’utiliser une URL HTTPS et d’inclure un paramètre de requête nonce afin de sécuriser votre flux. - Méthode de requête
Spécifiez la méthode HTTP qui sera utilisée pour demander votre flux. Si vous ne savez pas lequel choisir, sélectionnez OBTENIR. - Type de contenu
Le format du flux (JSON ou XML). Nous vous recommandons d’utiliser JSON si possible. Pour les flux XML, le flux sera converti en JSON.
- Nom du flux
- Une fois que vous avez rempli tous les champs, cliquez sur Ajouter un flux web. Nous tenterons d’interroger l’URL du flux et de vérifier que votre flux fonctionne correctement. Si nous rencontrons une erreur, vous verrez un message d’erreur et vous ne pourrez pas enregistrer ce nouveau flux tant que le problème n’aura pas été résolu.
- Vous voulez essayer, mais vous n’avez pas votre propre URL de flux Web ? Utilisez la nôtre. Copiez l’URL suivante du Centre d’aide Klaviyo dans le champ URL de flux et essayez-la dans votre propre compte Klaviyo :
https://help.klaviyo.com/api/v2/help_center/en-us/articles.json - Klaviyo valide votre flux et affiche les erreurs potentielles. Une fois validé, vous verrez votre flux dans Klaviyo et il sera prêt à être utilisé dans des e-mails.
Prévisualisez votre flux
Il est utile de prévisualiser un flux web avant de l’ajouter à un e-mail. Pour prévisualiser un flux :
- Sur la page Flux Web, trouvez votre flux.
- Cliquez sur les trois points, puis sélectionnez Modifier.
- Depuis la page des détails du flux, cliquez sur Aperçu.
Lorsque vous prévisualisez votre flux, vous verrez soit le contenu du flux, soit un message d’erreur si nous ne pouvons pas charger le flux.
Si votre flux est un tableau JSON, nous analyserons automatiquement le contenu et afficherons chaque ligne individuellement. S’il s’agit de tout autre format, le plus souvent un dictionnaire JSON, nous afficherons l’intégralité du dictionnaire.
Si vous développez activement votre flux, utilisez le bouton Actualiser pour obtenir la dernière version de votre flux. La page de prévisualisation d'un flux affiche l'intégralité du flux. Si votre flux est volumineux, l'affichage du contenu peut prendre plusieurs secondes. Gardez à l'esprit que si votre flux prend plus de 30 secondes à être interrogé, cela aura un impact sur les performances des e-mails qui dépendent de ce flux.
Maintenant que vous avez ajouté un flux web et prévisualisé son contenu, vous pouvez l’utiliser dans un e-mail.
Utiliser un flux web dans un e-mail
Pour les campagnes, Klaviyo récupérera chaque flux une fois par envoi et stockera le contenu renvoyé. Même si vous envoyez à des milliers de destinataires, Klaviyo n’effectuera pas des milliers de requêtes vers vos serveurs.
Renseigner le contenu du flux dans un modèle
Dans notre exemple de flux web de la section précédente, nous avons un tableau d’articles, où chaque entrée inclut un nom, une URL, un ID d’article, et plus encore. Après l’ajout d’un flux à un e-mail, il est disponible via la variable feeds :
{{ feeds }}
Par exemple, pour le flux JSON ci-dessus, nous pouvons désormais référencer ou afficher le contenu du flux d’articles en incluant cette syntaxe dans notre modèle :
{{ feeds.Klaviyo_Help_Center }}
Passons en revue un exemple dans lequel nous parcourons toutes les entrées du tableau et affichons certaines variables. Nous utiliserons le flux du blog Klaviyo comme exemple ici, et nous parcourrons les images.
- Faites glisser un nouveau bloc de texte dans votre e-mail et placez-le à l’endroit où vous souhaitez que le flux web s’affiche.
- Activez la fonctionnalité Repeat Block/Content Repeat : cliquez dans l’onglet Options d’affichage du bloc de texte, puis cliquez sur Créer des règles de répétition.
- Pour le champ Répéter pour, insérez feeds.YOUR_FEED_NAME, suivi du nom de la ou des variables qui contiennent le tableau que vous souhaitez parcourir.
- Dans notre exemple, comme nous parcourons également la valeur « articles », nous répéterons pour : feeds.Klaviyo_Help_Center.articles.
- Vos données peuvent être imbriquées dans une série de variables. Par exemple, votre flux peut être structuré comme suit : dans ce cas, vous utiliseriez
feeds.YOUR_FEED_NAME.rss.channel.itemcomme Répéter pour.
rss: {
.....
channel: {
.....
item: {
.....}}} - Si vous souhaitez que ce bloc n’itère que sur un certain nombre d’entrées, utilisez le filtre « slice ». Pour utiliser ce filtre, ajustez la valeur Repeat For en ajoutant le filtre à la fin :
feeds.Klaviyo_Help_Center.articles|slice:':3'
Dans cet exemple,|slice:':3'entraînera l’affichage des trois premières entrées uniquement. - Pour le champ Item Alias, insérez :
item - Une fois que vous avez configuré la fonctionnalité Repeat Block/Content Repeat, vous pouvez insérer des variables à l’aide de l’alias « item ».
- Pour identifier et ajouter des variables, ouvrez l’aperçu de votre flux web et reportez-vous à la façon dont vos données sont structurées. Toutes les données imbriquées dans le tableau utilisé dans le champ Repeat for peuvent être utilisées comme variable.
Dans cet exemple, toutes les données affichées dans le tableau articles sont disponibles pour une utilisation dans un e-mail :
- Pour les données de premier niveau, ajoutez simplement item avant le nom de la variable affichée dans vos données. Par exemple, utilisez
{{ item.title }}pour afficher le titre d’un article, ou{{ item.url }}pour afficher l’URL d’un article. - Pour accéder aux données imbriquées dans les variables de premier niveau, utilisez la notation par point (p. ex.,
{{ item.images.thumbnail_url }}). Pour en savoir plus sur les notations par point et les balise de modèle, consultez notre guide des balise de modèle et de la syntaxe des variables. - Lorsque vous prévisualisez votre modèle, vous remarquerez que la fonctionnalité Repeat Block/Content Repeat permettra à ce simple bloc de texte de parcourir automatiquement toutes les entrées de votre flux. Seules les variables que vous spécifiez dans le bloc de texte s’afficheront pour chaque entrée.
- Si vous insérez une image, veuillez noter que vous devrez utiliser un bloc HTML dédié et intégrer l’image dans un
<img src>tag.
Vous avez ajouté un flux Web personnalisé à votre e-mail et pouvez désormais renseigner dynamiquement un flux de données à partir de votre URL externe.
Tester ou valider votre flux
Si vous recevez une notification par e-mail ou dans l’application indiquant que nous avons des difficultés à accéder à votre flux web :
- Accédez à votre flux et cliquez sur le bouton Mettre à jour le flux.
- Une fois la validation terminée, vous pourriez voir deux types de messages d’erreur :
- Réponse non valide
Si nous recevons une réponse d’erreur lorsque nous tentons d’interroger le contenu de votre flux, nous vous indiquerons le code d’état de l’erreur. Vous devrez résoudre le problème à l’origine de cette réponse d’erreur avant que le flux puisse être utilisé correctement dans un e-mail. - Problème de performance
Si nous ne recevons pas de réponse de votre flux dans un délai de 30 secondes, cela entraînera des retards d’envoi. Même si vous avez peut-être pu enregistrer votre flux par le passé, afin de réduire le risque de retards d’envoi, vous devrez résoudre le problème de performance de votre flux avant de le revalider et de l’enregistrer avec succès.
- Réponse non valide
Dans les deux cas, si vous utilisez un flux problématique dans un envoi, cela entraînera des retards d’envoi ou votre e-mail pourra être annulé. Pour les flux, il est également probable que les e-mails ne soient pas envoyés.
Nous vous recommandons de supprimer un flux problématique de tous les e-mails pendant que vous réglez les problèmes en suspens afin d'éviter toute perturbation de l'envoi.