Ce document concerne Recommendations AI, Retail Search et la nouvelle console Retail. Pour utiliser Retail Search dans la phase en disponibilité limitée, contactez le service commercial Cloud.

Si vous n'utilisez que Recommendations AI, restez dans la console Recommendations AI et consultez la documentation sur Recommendations AI.

Événements utilisateur

Cette page décrit l'objet User Event, répertorie les types d'événements utilisateur potentiels et fournit des exemples de données pour tous les types d'événements utilisateur.

L'API Retail utilise des événements utilisateur en temps réel pour générer des recommandations et des résultats de recherche. Lorsque vous importez des données dans l'API Retail, Recommendations AI et Retail Search peuvent utiliser ces données. Vous n'avez donc pas besoin d'importer les mêmes événements deux fois si vous utilisez les deux services.

Pour obtenir de l'aide concernant l'enregistrement des événements utilisateur, consultez la page Enregistrer des événements utilisateur en temps réel.

Types d'événements utilisateur

Vous pouvez enregistrer plusieurs types d'événements utilisateur lorsque les utilisateurs parcourent votre site d'e-commerce :

Nom de l'événement utilisateur Action utilisateur
add-to-cart Permet d'ajouter le produit au panier.
category-page-view Permet d'afficher des pages spéciales, telles que des pages d'offres ou de promotions.
detail-page-view Permet d'afficher la page des détails du produit.
home-page-view Permet d'afficher la page d'accueil.
purchase-complete Permet de finaliser le paiement.
search Permet de rechercher dans le catalogue.
shopping-cart-page-view Permet d'afficher le panier.

Pour en savoir plus sur l'objet UserEvent, consultez la page UserEvent.

Priorité de types d'événements

Pour des résultats de haute qualité, nous vous recommandons d'enregistrer les événements utilisateur pour tous les types d'événements. Le tableau suivant décrit la priorité des différents types d'événements utilisateur. Vous devez enregistrer les événements utilisateur ayant la priorité la plus élevée pour obtenir des modèles de données de qualité.

Priorité Événements utilisateur
Obligatoire pour les expérimentations en direct initiales

add-to-cart

detail-page-view

purchase-complete

home-page-view (pour Recommendations AI)

search (pour Retail Search)

Important pour améliorer la qualité du modèle Recommendations AI au fil du temps

category-page-view

search

shopping-cart-page-view

Exigences et bonnes pratiques relatives aux événements utilisateur

Les tableaux suivants affichent les exigences et les bonnes pratiques concernant les types d'événements utilisateur exploités par Recommendations AI et Retail Search. Vérifiez que vos événements utilisateur répondent à ces exigences afin que l'API Retail puisse générer des résultats de qualité.

Cette section répertorie les éléments suivants :

Si vous utilisez des modèles Recommendations AI, consultez également la section Exigences relatives aux données des événements utilisateur, qui répertorie les exigences supplémentaires en fonction du type de modèle de recommandation et de l'objectif d'optimisation que vous prévoyez d'utiliser.

Exigences de l'API Retail

Assurez-vous que vos événements utilisateur répondent aux exigences suivantes afin que l'API Retail puisse générer des résultats de qualité. Celles-ci s'appliquent à Recommendations AI et à Retail Search.

Type d'événement Exigence Impact
Tous les événements

N'incluez pas de duplication d'événements.

La duplication d'événements peut entraîner des valeurs de métriques incorrectes et avoir un impact négatif sur la qualité du modèle.

Incluez au moins 100 ID de visiteurs uniques pour chaque type d'événement ingéré.

Cela permet de s'assurer que l'API Retail dispose de suffisamment de données pour générer des résultats de qualité.

Le champ Product.name est obligatoire pour tous les produits. Utilisez le nom complet de la ressource du produit plutôt que l'ID produit, qui est le composant final du nom de ressource.

Un événement qui inclut un produit sans champ Product.name ne peut pas être utilisé par l'API Retail.

Les produits inclus dans les événements doivent exister dans votre catalogue de produits.

Le ratio d'événements non associés doit être aussi faible que possible. Un ratio élevé peut avoir un impact négatif sur la qualité des recommandations ou des résultats de recherche.

detail-page-view

Incluez un seul produit par événement.

Impossible d'utiliser l'événement s'il n'existe aucun produit. Si plusieurs produits sont inclus, l'événement est mal formé et ne peut pas être utilisé.

add-to-cart

Incluez un seul produit par événement.

Si plusieurs produits sont inclus, l'événement est incorrect et ne peut pas être utilisé.

purchase-complete

Incluez purchase_transaction.revenue.

Sans ce champ, les modèles d'optimisation des revenus ne seront pas disponibles.

Incluez exactement un champ purchase_transaction.currency_code pour tous les événements d'achat.

Sans ce champ, les événements d'achat génèrent des métriques de revenus incorrectes.

Exigences spécifiques à Recommendations AI

Si vous utilisez Recommendations AI, assurez-vous que vos événements utilisateur répondent aux exigences suivantes.

Si vous utilisez des modèles Recommendations AI, consultez également la section Exigences relatives aux données des événements utilisateur, qui répertorie les exigences supplémentaires en fonction du type de modèle de recommandation et de l'objectif d'optimisation que vous prévoyez d'utiliser.

Type d'événement Exigence Impact
purchase

Ne regroupez pas les paniers multi-articles en plusieurs événements d'achat. Ils doivent rester des événements d'achat uniques incluant plusieurs produits.

Cela permet de garantir que des modèles de co-achat valides sont générés.

Exigences spécifiques à Retail Search

Si vous utilisez Retail Search, assurez-vous que vos événements utilisateur répondent aux exigences suivantes.

Type d'événement Exigence Impact
search

search_query doit exister pour les événements de recherche (à l'exception des événements de navigation).

Le fait de ne pas inclure ce champ peut avoir un impact négatif important sur la qualité et les métriques des résultats de recherche.

L'ID de visiteur d'une requête de recherche doit correspondre à l'ID de visiteur envoyé dans les événements liés à cette requête de recherche.

S'ils ne correspondent pas, les événements sont incorrects et les métriques peuvent être incorrectes.

La liste des ID produit dans les événements de recherche doit correspondre à la liste des produits présentés à l'utilisateur dans son intégralité.

S'ils ne correspondent pas, l'impact négatif sur la qualité des résultats de recherche peut être important, et les métriques seront incorrectes.

Si la recherche utilise un filtre, le champ filter doit exister et être analysé correctement.

Si ce champ n'existe pas, l'API Retail ne peut pas utiliser la partie filtrée des données, ce qui peut avoir un impact négatif sur la qualité des résultats de recherche.

Incluez le champ attribution_token pour relier d'autres événements aux événements de recherche.

Le fait de ne pas inclure de jeton de recherche a un impact très négatif sur la qualité de la recherche et la précision des métriques.

Exigences relatives aux objectifs de recherche

Les objectifs d'optimisation diffèrent en fonction des exigences en termes de données et de volume de données.

Confirmez que vous pouvez répondre aux exigences de données minimales pour votre objectif et collaborez avec l'équipe d'ingénieurs Retail Search pour choisir un objectif d'optimisation spécifique.

La période de collecte des données représente la durée maximale pendant laquelle l'API Retail recherche les événements utilisateur.

Objectif d'optimisation Types d'événements utilisateur Exigence minimale en matière de données Période de collecte de données
Pertinence

Facultatifs, mais vivement recommandés :

  • search
  • detail-page-view
  • add-to-cart
  • purchase-complete

Aucune quantité minimale explicite de données n'est requise pour cet objectif. Retail Search peut offrir de bons résultats sans que les événements utilisateur existants aient lieu. Toutefois, nous vous encourageons vivement à respecter les consignes suivantes pour améliorer la pertinence des résultats :
  • Les événements search contiennent la liste de produits dans l'ordre dans lequel ils sont présentés à l'utilisateur final.
  • Il existe au moins sept jours d'événements utilisateur pour les types d'événements utilisateur répertoriés.
7 jours
Taux de clics
  • search
  • detail-page-view
  • add-to-cart (facultatif, mais vivement recommandé)
Au moins 21 jours d'événements utilisateur de type obligatoire,
OU
(2 000 000 d'événements search
ET
500 000 événements detail-page-view générés à partir de clics sur les pages de recherche
ET
100 produits uniques issus de clics sur les pages de recherche
ET
une moyenne d'au moins 10 clics sur les pages de recherche par produit inclus dans l'index de recherche)
Trois semaines, ou jusqu'à ce que l'exigence minimale en matière de données soit atteinte
Taux de conversion/Revenu
  • search
  • detail-page-view
  • add-to-cart
  • purchase-complete
Les événements search contiennent la liste de produits dans l'ordre dans lequel ils sont présentés à l'utilisateur final
ET
(au moins 28 jours d'événements utilisateur de type obligatoire
OU
(4 000 000 d'événements search
ET
1 000 000 d'événements detail-page-view générés par des clics sur les pages de recherche
ET
une moyenne d'au moins 0,5 événement purchase-complete par produit inclus dans l'index de recherche et généré à partir d'activités de recherche))
Un mois, ou jusqu'à ce que l'exigence minimale en matière de données soit atteinte

Exemples et schémas de types d'événements utilisateur

Cette section fournit les formats de données pour chaque type d'événement compatible avec l'API Retail.

Des exemples sont fournis pour JavaScript Pixel et Tag Manager. Pour BigQuery, le schéma de table complet est fourni pour chaque type.

Pour tous les types d'événements utilisateur, le champ userId est facultatif. Les champs d'informations sur le produit (priceInfo et availability) sont facultatifs.

Remarques :

  • Le champ experimentIds n'est nécessaire que si vous effectuez un test A/B.
  • Le champ attributionToken est facultatif. Il permet de mesurer les performances. Les événements predict, search et detail-page-view générés à partir de clics sur l'API Retail doivent disposer d'un jeton d'attribution pour lier les événements aux recherches ou recommandations générées.
  • Assurez-vous que tous vos événements utilisent une seule devise, en particulier si vous prévoyez d'utiliser Cloud Console pour obtenir des métriques de revenus. L'API Retail n'accepte pas l'utilisation de plusieurs devises par catalogue.

Pour en savoir plus sur l'objet User Event, consultez la page UserEvents.

Ajout au panier

Les lignes suivantes présentent le format d'événement utilisateur add-to-cart.

Champs minimum requis pour l'objet add-to-cart

Les exemples suivants n'affichent que les champs obligatoires du format d'événement utilisateur add-to-cart.

JavaScript Pixel

var user_event = {
  "eventType": "add-to-cart",
  "visitorId": "visitor-id",
  "cartId": "cart-id",
  "productDetails": [{
    "product": {
      "id": "product-id"
    },
    "quantity": product-quantity
  }]
};

Tag Manager

<script>
    dataLayer = dataLayer || [];
    dataLayer.push({
      'cloud_retail': {
        'eventType': 'add-to-cart',
        'visitorId': 'visitor-id',
        // You can also define the visitor ID
        // directly on the Tag Manager tag.
        'cartId': 'cart-id',
        'productDetails': [{
          'product': {
            'id': 'product-id'
          },
          'quantity': product-quantity
        }]
      }
    });
</script>

BigQuery

Il s'agit du schéma JSON complet pour ce type d'événement d'utilisateur. Spécifiez ce schéma lorsque vous créez des tables pour ce type d'événement utilisateur dans BigQuery.

Les modes des champs obligatoires sont définis sur REQUIRED ou REPEATED. Les modes des champs facultatifs sont définis sur NULLABLE.

Notez que le champ eventTime est requis pour l'importation d'événements avec BigQuery. eventTime est une chaîne avec un format d'horodatage.

[
{
"name": "eventType",
"type": "STRING",
"mode": "REQUIRED"
},
{
"name": "visitorId",
"type": "STRING",
"mode": "REQUIRED"
},
{
"name": "eventTime",
"type": "STRING",
"mode": "REQUIRED"
},
{
"name": "productDetails",
"type": "RECORD",
"mode": "REPEATED",
"fields": [
 {
   "name": "product",
   "type": "RECORD",
   "mode": "REQUIRED",
   "fields": [
     {
       "name": "id",
       "type": "STRING",
       "mode": "REQUIRED"
     }
   ]
 },
 {
   "name": "quantity",
   "type": "INTEGER",
   "mode": "REQUIRED"
 }
]
}
]

Affichage de la page de catégorie

Les lignes suivantes présentent le format d'événement utilisateur category-page-view.

Champs minimum requis pour l'objet category-page-view

Les exemples suivants n'affichent que les champs obligatoires du format d'événement utilisateur category-page-view.

Bien qu'une seule catégorie soit généralement associée à une page, le champ pageCategories accepte également une hiérarchie de catégories, que vous pouvez fournir sous forme de liste.

JavaScript Pixel

var user_event = {
  "eventType": "category-page-view",
  "visitorId": "visitor-id",
  "pageCategories": ["category1 > category2"]
};

Tag Manager

<script>
    dataLayer = dataLayer || [];
    dataLayer.push({
      'cloud_retail': {
        'eventType': 'category-page-view',
        'visitorId": 'visitor-id',
        // You can also define the user ID and visitor ID
        // directly on the Tag Manager tag.
        'pageCategories': ['category1 > category2']
      }
    });
</script>

BigQuery

Il s'agit du schéma JSON complet pour ce type d'événement d'utilisateur. Spécifiez ce schéma lorsque vous créez des tables pour ce type d'événement utilisateur dans BigQuery.

Les modes des champs obligatoires sont définis sur REQUIRED ou REPEATED. Les modes des champs facultatifs sont définis sur NULLABLE.

Notez que le champ eventTime est requis pour l'importation d'événements avec BigQuery. eventTime est une chaîne avec un format d'horodatage.

[
{
"name": "eventType",
"type": "STRING",
"mode": "REQUIRED"
},
{
"name": "visitorId",
"type": "STRING",
"mode": "REQUIRED"
},
{
"name": "eventTime",
"type": "STRING",
"mode": "REQUIRED"
},
{
"name": "pageCategories",
"type": "STRING",
"mode": "REPEATED"
}
]

Affichage de la page des détails

Les lignes suivantes présentent le format de données d'événement utilisateur detail-page-view.

Champs minimum requis pour l'objet detail-page-view

Les exemples suivants n'affichent que les champs obligatoires du format d'événement utilisateur detail-page-view.

Dans la plupart des cas, productDetails contient les détails du produit associé, sauf si plusieurs articles sont vendus ensemble au sein d'un lot.

JavaScript Pixel

var user_event = {
  "eventType": "detail-page-view",
  "visitorId": "visitor-id",
  "productDetails": [{
    "product": {
      "id": "product-id"
    }
  }]
};

Tag Manager

<script>
    dataLayer = dataLayer || [];
    dataLayer.push({
      'cloud_retail': {
        'eventType': 'detail-page-view',
        'visitorId': 'visitor-id',
        // You can also define the visitor ID directly on
        // the Tag Manager tag.
        'productDetails': [{
          'product': {
            'id': 'product-id'
          }
        }]
      }
    });
</script>

BigQuery

Il s'agit du schéma JSON complet pour ce type d'événement d'utilisateur. Spécifiez ce schéma lorsque vous créez des tables pour ce type d'événement utilisateur dans BigQuery.

Les modes des champs obligatoires sont définis sur REQUIRED ou REPEATED. Les modes des champs facultatifs sont définis sur NULLABLE.

Notez que le champ eventTime est requis pour l'importation d'événements avec BigQuery. eventTime est une chaîne avec un format d'horodatage.

[
{
"name": "eventType",
"type": "STRING",
"mode": "REQUIRED"
},
{
"name": "visitorId",
"type": "STRING",
"mode": "REQUIRED"
},
{
"name": "eventTime",
"type": "STRING",
"mode": "REQUIRED"
},
{
"name": "productDetails",
"type": "RECORD",
"mode": "REPEATED",
"fields": [
 {
   "name": "product",
   "type": "RECORD",
   "mode": "REQUIRED",
   "fields": [
     {
       "name": "id",
       "type": "STRING",
       "mode": "REQUIRED"
     }
   ]
 }
]
}
]

Affichage de la page d'accueil

Les lignes suivantes présentent le format d'événement utilisateur home-page-view.

Champs minimum requis pour l'objet home-page-view

Les exemples suivants n'affichent que les champs obligatoires du format d'événement utilisateur home-page-view.

JavaScript Pixel

var user_event = {
  "eventType": "home-page-view",
  "visitorId": "visitor-id",
};

Tag Manager

<script>
    dataLayer = dataLayer || [];
    dataLayer.push({
      'cloud_retail': {
        'eventType': 'home-page-view',
        'visitorId': 'visitor-id'
        // You can also define the visitor ID
        // directly on the Tag Manager tag.
      }
    });
</script>

BigQuery

Il s'agit du schéma JSON complet pour ce type d'événement d'utilisateur. Spécifiez ce schéma lorsque vous créez des tables pour ce type d'événement utilisateur dans BigQuery.

Les modes des champs obligatoires sont définis sur REQUIRED ou REPEATED. Les modes des champs facultatifs sont définis sur NULLABLE.

Notez que le champ eventTime est requis pour l'importation d'événements avec BigQuery. eventTime est une chaîne avec un format d'horodatage.

[
{
"name": "eventType",
"type": "STRING",
"mode": "REQUIRED"
},
{
"name": "visitorId",
"type": "STRING",
"mode": "REQUIRED"
},
{
"name": "eventTime",
"type": "STRING",
"mode": "REQUIRED"
}
]

Achat terminé

Les lignes suivantes présentent le format de données d'événement utilisateur purchase-complete.

Champs minimum requis pour l'objet purchase-complete

Les exemples suivants n'affichent que les champs obligatoires du format d'événement utilisateur purchase-complete.

JavaScript Pixel

var user_event = {
  "eventType": "purchase-complete",
  "visitorId": "visitor-id",
  "productDetails": [{
    "product": {
      "id": "product-id"
    },
    "quantity": product-quantity
  }],
  "purchaseTransaction": {
    "revenue": revenue,
    "currencyCode": "currency-code"
  }
};

Tag Manager

<script>
    dataLayer = dataLayer || [];
    dataLayer.push({
      'cloud_retail': {
        'eventType': 'purchase-complete',
        'visitorId': 'visitor-id',
        // You can also define the visitor id directly on
        // the Tag Manager tag.
        'productDetails': [{
          'product': {
            'id': 'product-id'
          },
          'quantity': product-quantity
        }],
        'purchaseTransaction': {
          'revenue': revenue,
          'currencyCode': 'currency-code'
        }
      }
    });
</script>

BigQuery

Il s'agit du schéma JSON complet pour ce type d'événement d'utilisateur. Spécifiez ce schéma lorsque vous créez des tables pour ce type d'événement utilisateur dans BigQuery.

Les modes des champs obligatoires sont définis sur REQUIRED ou REPEATED. Les modes des champs facultatifs sont définis sur NULLABLE.

Notez que le champ eventTime est requis pour l'importation d'événements avec BigQuery. eventTime est une chaîne avec un format d'horodatage.

[
{
"name": "eventType",
"type": "STRING",
"mode": "REQUIRED"
},
{
"name": "visitorId",
"type": "STRING",
"mode": "REQUIRED"
},
{
"name": "eventTime",
"type": "STRING",
"mode": "REQUIRED"
},
{
"name": "productDetails",
"type": "RECORD",
"mode": "REPEATED",
"fields": [
  {
    "name": "product",
    "type": "RECORD",
    "mode": "REQUIRED",
    "fields": [
      {
        "name": "id",
        "type": "STRING",
        "mode": "REQUIRED"
      }
    ]
  },
  {
    "name": "quantity",
    "type": "INTEGER",
    "mode": "REQUIRED"
  }
]
},
{
"name": "purchaseTransaction",
"type": "RECORD",
"mode": "REQUIRED",
"fields": [
 {
   "name": "revenue",
   "type": "FLOAT",
   "mode": "REQUIRED"
 },
 {
   "name": "currencyCode",
   "type": "STRING",
   "mode": "REQUIRED"
 }
]
}
]

Les lignes suivantes présentent le format d'événement utilisateur search.

Champs minimum requis pour l'objet search

Les exemples suivants n'affichent que les champs obligatoires du format d'événement utilisateur search.

Au moins l'un des champs searchQuery ou pageCategories doit être renseigné.

productDetails doit inclure la liste des ID produit présentés à l'utilisateur final sur la page des résultats de recherche.

JavaScript Pixel

var user_event = {
  "eventType": "search",
  "visitorId": "visitor-id",
  "searchQuery": "search-query",
  "pageCategories": ["category1 > category2"],
  "productDetails": [
    {
      "product": {
        "id": "product-id1"
      }
    }, {
      "product": {
        "id": "product-id2"
      }
    }
  ]
};

Tag Manager

<script>
    dataLayer = dataLayer || [];
    dataLayer.push({
      'cloud_retail': {
        'eventType': 'search',
        'visitorId': 'visitor-id',
        // You can also define the visitor ID
        // directly on the Tag Manager tag.
        'searchQuery': 'search-query',
        'pageCategories': ['category1 > category2'],
        'productDetails': [
          {
            'product': {
              'id': 'product-id1'
            }
          }, {
            'product': {
              'id': 'product-id2'
            }
          }
        ]
      }
    });
</script>

BigQuery

Il s'agit du schéma JSON complet pour ce type d'événement d'utilisateur. Spécifiez ce schéma lorsque vous créez des tables pour ce type d'événement utilisateur dans BigQuery.

Les modes des champs obligatoires sont définis sur REQUIRED ou REPEATED. Les modes des champs facultatifs sont définis sur NULLABLE.

Notez que le champ eventTime est requis pour l'importation d'événements avec BigQuery. eventTime est une chaîne avec un format d'horodatage.

[
{
"name": "eventType",
"type": "STRING",
"mode": "REQUIRED"
},
{
"name": "visitorId",
"type": "STRING",
"mode": "REQUIRED"
},
{
"name": "eventTime",
"type": "STRING",
"mode": "REQUIRED"
},
{
"name": "productDetails",
"type": "RECORD",
"mode": "REPEATED",
"fields": [
 {
   "name": "product",
   "type": "RECORD",
   "mode": "REQUIRED",
   "fields": [
     {
       "name": "id",
       "type": "STRING",
       "mode": "REQUIRED"
     }
   ]
 }
]
},
{
"name": "searchQuery",
"type": "STRING",
"mode": "NULLABLE"
},
{
"name": "pageCategories",
"type": "STRING",
"mode": "REPEATED"
}
]

Affichage de la page du panier

Les lignes suivantes présentent le format de données d'événement utilisateur shopping-cart-page-view.

Champs minimum requis pour l'objet shopping-cart-page-view

Les exemples suivants n'affichent que les champs obligatoires du format d'événement utilisateur shopping-cart-page-view.

Fournissez l'objet productDetails, sauf si le panier est vide.

JavaScript Pixel

var user_event = {
  "eventType": "shopping-cart-page-view",
  "visitorId": "visitor-id
  "cartId": "cart-id",
  "productDetails": [{
    "product": {
       "id": "product-id"
     },
     {
       "id": "product-id"
     }
   }]
};

Tag Manager

<script>
    dataLayer = dataLayer || [];
    dataLayer.push({
      'cloud_retail': {
        'eventType': 'shopping-cart-page-view',
        'visitorId': 'visitor-id'
        // You can also define the visitor ID
        // directly on the Tag Manager tag.
        'cartId': 'cart-id',
        'productDetails': [{
          'product': {
            'id': 'product-id'
           },
           {
             'id': 'product-id'
           }
         }]
      }
    });
</script>

BigQuery

Il s'agit du schéma JSON complet pour ce type d'événement d'utilisateur. Spécifiez ce schéma lorsque vous créez des tables pour ce type d'événement utilisateur dans BigQuery.

Les modes des champs obligatoires sont définis sur REQUIRED ou REPEATED. Les modes des champs facultatifs sont définis sur NULLABLE.

Notez que le champ eventTime est requis pour l'importation d'événements avec BigQuery. eventTime est une chaîne avec un format d'horodatage.

[
{
"name": "eventType",
"type": "STRING",
"mode": "REQUIRED"
},
{
"name": "visitorId",
"type": "STRING",
"mode": "REQUIRED"
},
{
"name": "eventTime",
"type": "STRING",
"mode": "REQUIRED"
}
]

Attributs personnalisés

Vous pouvez inclure d'autres attributs et fonctionnalités personnalisés pour les événements utilisateur. Cela peut améliorer les recommandations plus spécifiques de vos utilisateurs lorsque vous utilisez Recommendations AI. Pour ajouter des attributs personnalisés, utilisez attributes lorsque vous enregistrez un événement utilisateur.

Vous pouvez fournir des valeurs de texte personnalisées en utilisant le champ text ou des valeurs numériques personnalisées en utilisant le champ number.

Par exemple, voici la section attributes d'une requête d'enregistrement d'un événement utilisateur :

"attributes": [
  "user_age": {"text": ["teen", "young adult"]},
  "user_location": {"text": ["CA"]}
]

À propos des informations utilisateur

visitorId représente l'identifiant d'utilisateur unique et est requis lorsque vous enregistrez un événement utilisateur.

Les informations sur les utilisateurs (UserInfo) incluses lorsque vous enregistrez un événement utilisateur contiennent la valeur userId. userId est facultatif et peut être utilisé comme identifiant unique et persistant pour un utilisateur sur tous les appareils, chaque fois que ce dernier se connecte à votre site. Lorsque vous enregistrez le userId d'un utilisateur, l'API Retail peut générer des résultats plus personnalisés pour un utilisateur sur plusieurs appareils, tels qu'un appareil mobile et un navigateur Web.

À propos de l'horodatage

Lorsque vous enregistrez un événement utilisateur, veillez à inclure un horodatage précis de l'événement. Des horodatages précis permettent à l'API Retails de stocker les événements dans le bon ordre. Les horodatages sont automatiquement enregistrés pour les événements collectés à l'aide de Tag Manager et du Pixel JavaScript. Lorsque vous importez des événements, vous devez fournir l'horodatage dans le champ eventTime au format spécifié par la norme RFC 3339.

Étape suivante