Passer au contenu

Objets imbriqués dans les événements personnalisés

Cette page explique comment envoyer des données JSON imbriquées en tant que propriétés d’événements personnalisés et d’achats, et comment utiliser ces objets imbriqués dans votre envoi de messages.

Vous pouvez utiliser des objets imbriqués (c’est-à-dire des objets qui se trouvent à l’intérieur d’un autre objet) pour envoyer des données JSON imbriquées en tant que propriétés d’événements personnalisés et d’achats. Ces données imbriquées peuvent être utilisées pour créer des modèles d’informations personnalisées dans les messages, déclencher l’envoi de messages et segmenter les utilisateurs.

Considérations

  • Les données imbriquées sont prises en charge pour les événements personnalisés et les événements d’achat, mais pas pour les autres types d’événements.
  • Les objets de propriétés d’événement contenant des valeurs de type tableau ou objet peuvent avoir un payload de propriétés d’événement allant jusqu’à 100 Ko.
  • Les schémas de propriétés d’événement ne peuvent pas être générés pour les événements d’achat.
  • Les schémas de propriétés d’événement sont générés par échantillonnage des événements personnalisés des dernières 24 heures.

Versions minimales du SDK

Les versions suivantes du SDK prennent en charge les objets imbriqués :

Étape 1 : Générer un schéma

Vous pouvez accéder aux données imbriquées de votre événement personnalisé en générant un schéma pour chaque événement avec des propriétés de l’événement imbriqué. Pour générer un schéma :

  1. Allez dans Data Settings > Custom Events.
  2. Sélectionnez Manage Properties pour les événements avec des propriétés imbriquées.
  3. Sélectionnez le bouton pour générer le schéma. Pour afficher le schéma, sélectionnez le bouton plus .

Sélectionnez le bouton pour générer le schéma. Pour afficher le schéma, sélectionnez le bouton plus.

Si de nouvelles propriétés sont envoyées par la suite, elles ne figureront pas dans le schéma tant qu’il n’aura pas été régénéré. Les schémas peuvent être régénérés toutes les 24 heures.

Étape 2 : Utiliser l’objet imbriqué

Vous pouvez référencer les données imbriquées lors de la segmentation et de la personnalisation. Notez qu’un schéma n’est pas requis. Consultez les sections suivantes pour des exemples d’utilisation :

Corps de la requête API

Voici un exemple /users/track avec un événement personnalisé « Created Playlist ». Après la création d’une playlist, capturez les propriétés de la playlist en envoyant :

  • Une requête API qui répertorie « songs » comme propriété
  • Un tableau des propriétés imbriquées des chansons
...
"properties": {
  "songs": [
    {
      "title": "Smells Like Teen Spirit",
      "artist": "Nirvana",
      "album": {
        "name": "Nevermind",
        "yearReleased": "1991"
      }
    },
    {
      "title": "While My Guitar Gently Weeps",
      "artist": "the Beatles",
      "album": {
        "name": "The Beatles",
        "yearReleased": "1968"
      }
    }
  ]
}
...

Voici un exemple /users/track avec un événement personnalisé « Ordered ». Après la finalisation d’une commande, capturez les propriétés de cette commande en envoyant :

  • Une requête API qui répertorie r_details comme propriété
  • Les propriétés imbriquées de cette commande
...
"properties": {
  "r_details": {
    "name": "SandwichEmperor",
    "identifier": "12345678",
    "location" : {
      "city": "Montclair",
      "state": "NJ"
    }
  }
}
...

Modèles Liquid

Voici comment créer un modèle Liquid qui référence les propriétés imbriquées demandées dans la requête API précédente.

Modèle Liquid dans un message déclenché par l’événement « Created Playlist » :

{{event_properties.${songs}[0].album.name}} : « Nevermind »
{{event_properties.${songs}[1].title}} : « While My Guitar Gently Weeps »

Modèle Liquid dans un message déclenché par l’événement « Ordered » :

{{event_properties.${r_details}.location.city}} : « Montclair »

Déclenchement de messages

Pour utiliser ces propriétés afin de déclencher une campagne ou un Canvas, sélectionnez votre événement personnalisé ou achat, puis ajoutez un filtre Nested Property. Les déclencheurs eCommerce Place Order et Update Cart acceptent les mêmes types de filtres.

Déclenchement d’une campagne avec des propriétés imbriquées depuis l’événement « Created Playlist » :

Un utilisateur choisissant une propriété imbriquée pour les filtres de propriétés sur un événement personnalisé.

La condition de déclenchement songs[].album.yearReleased « is » « 1968 » correspondra à un événement où l’une des chansons possède un album sorti en 1968. Nous utilisons la notation entre crochets [] pour parcourir les tableaux, et la correspondance se fait si un élément quelconque du tableau parcouru correspond à la propriété d’événement.

Déclenchement d’une campagne avec des propriétés imbriquées depuis l’événement « Ordered » :

Un utilisateur ajoutant le filtre de propriété r_details.name est SandwichEmperor pour un événement personnalisé.

r_details.name : « SandwichEmperor »
r_details.location.city : « Montclair »

Segmentation

Pour segmenter les utilisateurs en fonction des propriétés d’événement imbriquées, vous devez utiliser les extensions de segments. Une fois que vous avez généré un schéma, l’explorateur d’objets imbriqués s’affichera dans la section de segmentation.

Capture d'écran relative à la segmentation.

La segmentation utilise la même notation que le déclenchement (voir Déclenchement de messages).

Pour modifier ou créer des extensions de segments, vous aurez besoin de la permission « Edit Segments ».

Personnalisation

À l’aide de la fenêtre modale Add Personalization, sélectionnez Advanced Event Properties comme type de personnalisation. Cela permet d’ajouter des propriétés d’événement imbriquées une fois qu’un schéma a été généré.

Utilisation de la fenêtre modale Add Personalization pour sélectionner Advanced Event Properties comme type de personnalisation. Cela permet d'ajouter des propriétés d'événement imbriquées une fois qu'un schéma a été généré.

Tester les objets imbriqués dans les messages

L’outil Preview & Test du tableau de bord ne prend pas en charge l’ajout de données fictives pour les objets imbriqués ou les attributs personnalisés imbriqués. Pour tester des messages qui font référence à des données imbriquées via Liquid, vous pouvez prévisualiser les messages avec des attributs imbriqués en tant qu’utilisateur existant possédant cet attribut imbriqué, ou prévisualiser les messages avec des propriétés d’événement personnalisé en lançant une Campaign en direct vers des utilisateurs test.

Attributs personnalisés imbriqués

  1. Importez les attributs imbriqués dans le profil de l’utilisateur test via l’API.
  2. Dans votre Campaign ou Canvas, accédez à Preview & Test.
  3. Sélectionnez Preview as user et recherchez l’utilisateur test. Le Liquid se résoudra en utilisant les attributs imbriqués réels présents sur le profil de cet utilisateur.

Propriétés d’événement imbriquées

Les propriétés d’événement imbriquées ne peuvent pas être prévisualisées dans le tableau de bord, car elles nécessitent un déclencheur d’événement en direct. Pour les tester :

  1. Créez une Campaign ou une étape du Canvas qui cible uniquement vos utilisateurs test et qui est déclenchée par (ou fait référence à) l’événement personnalisé avec des propriétés imbriquées.
  2. Lancez la Campaign vers votre audience test.
  3. Enregistrez l’événement personnalisé avec le payload de l’objet imbriqué sur le profil de votre utilisateur test (via l’API ou le SDK).
  4. Vérifiez que le message s’affiche correctement avec les valeurs des propriétés imbriquées.

Questions fréquemment posées

L’utilisation d’objets imbriqués enregistre-t-elle des points de donnée supplémentaires ?

Il n’y a aucun changement dans la façon dont nous enregistrons les points de donnée suite à l’ajout de cette fonctionnalité. La segmentation basée sur les objets imbriqués utilise les extensions de segments, qui ne consomment pas de points de donnée supplémentaires.

Quelle quantité de données imbriquées peut être envoyée ?

Si une ou plusieurs des propriétés de l’événement contiennent des données imbriquées, le payload maximum pour l’ensemble des propriétés combinées d’un événement est de 100 Ko. Toute requête dépassant cette limite de taille sera rejetée.

New Stuff!