Nutzerereignisse

Auf dieser Seite wird das Nutzerereignisobjekt beschrieben, einschließlich der Auflistung potenzieller Nutzerereignistypen. Außerdem finden Sie Beispieldaten für alle Nutzerereignistypen.

AI Commerce Search verwendet Nutzerereignisse in Echtzeit, um Empfehlungen und Suchergebnisse zu generieren. Wenn Sie Daten hochladen, können sowohl Empfehlungen als auch die Suche diese Daten verwenden. Sie müssen dieselben Ereignisse also nicht zweimal hochladen, wenn Sie beide Dienste nutzen.

Funktionsweise der Suchattribution

Funktionsweise der Attribution

Übersicht über Nutzerereignistypen

Es gibt mehrere Nutzerereignistypen, die Sie aufzeichnen können, wenn Nutzer Ihre Einzelhandels-Website besuchen:

Name des Nutzerereignisses Nutzeraktion Google Analytics 4 event_name
home-page-view Ruft die Startseite auf. view_homepage
Suchen (Suchen und surfen) Durchsucht den Katalog. view_item_list + [searchQuery ODER pageCategories + filter]
category-page-view (nur Empfehlungen) Zeigt spezielle Seiten an, wie Verkaufs- oder Werbeaktionsseiten. view_item_list + pageCategories
detail-page-view Ruft die Produktdetailseite auf. view_item
add-to-cart Legt Artikel in den Einkaufswagen. add_to_cart
shopping-cart-page-view Ruft den Einkaufswagen auf. view_cart
purchase-complete Schließt den Bestellprozess ab. purchase

Von diesen Ereignistypen werden für die Beliebtheitssignale in AI Commerce Search die folgenden vier verwendet:

  • SEARCH
  • DETAIL_PAGE_VIEW
  • ADD_TO_CART
  • PURCHASE_COMPLETE

Eine ausführliche Liste der GA4-Ereignisfelder finden Sie unter Google Analytics 4-Felder für Nutzerereignisse.

Ausführliche Informationen zum UserEvent-Objekt finden Sie unter UserEvent.

Anforderungen an Nutzerereignisse

In den folgenden Tabellen sind die Anforderungen und Best Practices für Nutzerereignistypen aufgeführt, die für Empfehlungen und die Suche verwendet werden. Prüfen Sie, ob Ihre Nutzerereignisse diese Anforderungen erfüllen, damit mit AI Commerce Search hochwertige Ergebnisse generiert werden können.

In diesem Abschnitt wird Folgendes aufgelistet:

Wenn Sie Empfehlungsmodelle verwenden, lesen Sie auch die Datenanforderungen für Modelltypen. Dort finden Sie zusätzliche Anforderungen, die vom Typ des Empfehlungsmodells und dem Optimierungsziel abhängen, das Sie verwenden möchten.

Messwerte zur Datenqualität für die Suche finden Sie in der Konsole für AI Commerce Search in Gemini Enterprise for Customer Experience auf der Seite Datenqualität. Diese Messwerte geben den Prozentsatz der Produkte und Nutzerereignisse an, die die empfohlenen Standards für die Datenqualität erfüllen. Informationen zum Aufrufen der Suchdatenqualität finden Sie unter Suchleistungsstufen freischalten.

Allgemeine Anforderungen an Nutzerereignisse

Ihre Nutzerereignisse müssen die folgenden Anforderungen erfüllen, damit die AI Commerce Search hochwertige Ergebnisse liefern kann. Sie gelten sowohl für Empfehlungen als auch für die Suche.

Ereignistyp Anforderung Auswirkungen
Alle Termine

Synthetische Daten oder doppelte Ereignisse dürfen nicht enthalten sein.

Synthetische oder doppelte Ereignisse wirken sich negativ auf die Modellqualität aus und verhindern oft ein erfolgreiches Modelltraining. Doppelte Ereignisse können zu falschen Messwertwerten führen.

Geben Sie mindestens 100 eindeutige Besucher-IDs für jeden aufgenommenen Ereignistyp an.

So wird überprüft, ob AI Commerce Search genügend Daten hat, um hochwertige Ergebnisse zu generieren.

Besucher-IDs müssen beim Ereignisimport oder bei der Ereigniserfassung und in API-Anfragen genau gleich formatiert sein.

Wenn Sie ein einheitliches Format für Besucher-IDs verwenden, können Besuchermuster korrekt erkannt und auf Grundlage des Nutzerverhaltens bessere Ergebnisse erzielt werden.

Die in den Ereignissen enthaltenen Produkte sollten in Ihrem Produktkatalog enthalten sein.

Das Verhältnis von nicht verbundenen Ereignissen sollte so niedrig wie möglich sein. Ein hohes Verhältnis kann sich negativ auf die Qualität der Empfehlung oder der Suchergebnisse auswirken.

Nicht verknüpfte Ereignisdaten werden nicht zum Trainieren von Modellen verwendet. Nicht verknüpfte Ereignisse können jedoch später verknüpft werden, nachdem die zugehörigen Produkte aufgenommen wurden. Weitere Informationen finden Sie unter Nutzerereignisse neu verknüpfen.

Einige Nutzerereignisse sollten dieselbe Besucher-ID haben.

Damit gültige Verlaufsdaten für Verhaltenssequenzen erstellt werden können, müssen in AI Commerce Search mehrere Ereignisse mit derselben Besucher-ID zu sehen sein.

visitor123 hat sich beispielsweise fünf Produktdetailseiten angesehen, drei Produkte in den Einkaufswagen gelegt und dann zwei der ursprünglichen fünf Produkte gekauft. Wenn diese Ereignisse alle dieselbe einheitlich formatierte Besucher-ID enthalten, kann AI Commerce Search diese Verhaltenssequenz in ihren Modellen berücksichtigen.

detail-page-view

Fügen Sie genau ein Produkt pro Ereignis ein.

Das Ereignis kann nicht verwendet werden, wenn kein Produkt vorhanden ist. Wenn mehrere Produkte angegeben sind, wird das Ereignis fehlerhaft und kann nicht verwendet werden.

add-to-cart

Fügen Sie genau ein Produkt pro Ereignis ein.

Wenn mehrere Produkte angegeben sind, ist das Ereignis fehlerhaft und kann nicht verwendet werden.

purchase-complete

Schließen Sie purchase_transaction.revenue ein.

purchase-complete-Ereignisse, bei denen das Feld revenue fehlt, werden nicht zum Trainieren von Modellen verwendet.

Schließen Sie genau ein purchase_transaction.currency_code für alle Kaufereignisse ein.

Es gibt keinen Standardwährungscode. Ein Code muss angegeben werden.

Kaufereignisse ohne dieses Feld führen zu falschen Umsatzmesswerten.

Prüfen Sie, ob einige Kaufereignisse mehrere Produkte enthalten.

Wenn Sie einige Kaufereignisse mit mehreren Produkten haben, kann das Modell Muster für gemeinsame Käufe lernen.

Anforderungen für Empfehlungen

Wenn Sie Empfehlungen verwenden, müssen Ihre Nutzerereignisse die folgenden Anforderungen erfüllen.

Wenn Sie Empfehlungsmodelle verwenden, lesen Sie auch die Datenanforderungen für Modelltypen. Dort finden Sie zusätzliche Anforderungen, die vom Typ des Empfehlungsmodells und dem Optimierungsziel abhängen, das Sie verwenden möchten.

Ereignistyp Anforderung Auswirkungen
purchase-complete

Fassen Sie Körbe mit mehreren Artikeln nicht in mehreren Kaufereignissen zusammen. Sie sollten weiterhin als einzelne Kaufereignisse verbleiben, die mehrere Produkte enthalten.

So wird überprüft, ob gültige Muster für gemeinsame Käufe generiert werden.

Suchspezifische Anforderungen

Wenn Sie die Suche verwenden, müssen Ihre Nutzerereignisse die folgenden Mindestanforderungen erfüllen, damit Ergebnisse zurückgegeben werden.

Ereignistyp Anforderung Auswirkungen
search

searchQuery muss für Suchereignisse und pageCategories für Browsing-Ereignisse vorhanden sein.

Wenn Sie dieses Feld nicht angeben, kann sich dies erheblich auf die Qualität und Messwerte der Suchergebnisse auswirken.

Die Besucher-ID in Suchanfragen sollte mit der Besucher-ID übereinstimmen, die in Ereignissen gesendet wurde, die sich auf diese Suchanfrage beziehen.

Wenn sie nicht übereinstimmen, sind die Ereignisse fehlerhaft und die Messwerte sind möglicherweise falsch.

Die Liste der Produkt-IDs in Suchereignissen muss vollständig mit der Liste der Produkte übereinstimmen, die dem Nutzer angezeigt werden.

Wenn sie nicht übereinstimmen, kann die negative Auswirkung auf die Qualität der Suchergebnisse hoch sein und die Messwerte sind falsch.

Wenn bei der Suche ein Filter verwendet wird, muss filter vorhanden sein und korrekt geparst werden.

Wenn dieses Feld nicht vorhanden ist, kann AI Commerce Search den Filterteil der Daten nicht verwenden, was sich negativ auf die Qualität der Suchergebnisse auswirken kann.

Fügen Sie das Feld attribution_token ein, um andere Ereignisse mit Suchereignissen zu verknüpfen.

Wenn Sie kein Attributions-Token einfügen, wird in AI Commerce Search in Gemini Enterprise for Customer Experience ein Fehler ausgelöst. Dies hat erhebliche negative Auswirkungen auf die Suchqualität und die Genauigkeit der Messwerte.

Anforderungen für die Suchmaschinenoptimierung

Damit die Suche die Suchergebnisse automatisch auf Grundlage allgemeiner Nutzertrends optimieren kann, laden Sie die folgenden Daten hoch.

Ereignisse sollten mindestens täglich mit einer maximalen Verzögerung von 24 Stunden hochgeladen werden.

Messwert für Ereignisse Anzahl/Häufigkeit von Ereignissen Beschreibung
Volumen von search-Ereignissen 250.000 in den letzten 90 Tagen

Für die Optimierung der Suchfunktion auf Grundlage der aufgenommenen Ereignisse sind mindestens 250.000 Ereignisse in den letzten 90 Tagen erforderlich.

Es wird empfohlen, Ereignisse mindestens täglich hochzuladen, um eine gute Datenqualität zu gewährleisten. Achten Sie beim Importieren von Verlaufsdaten darauf, dass die Datenverteilung zum neuesten Zeitstempel hin tendiert. Die Anzahl der Ereignisse am letzten Zeitstempel-Tag sollte mindestens der durchschnittlichen täglichen Ereignisanzahl entsprechen.

Volumen von detail-page-view, das einem search-Ereignis zugeordnet wird 500.000 in den letzten 30 Tagen Für die Optimierung von Suchergebnissen anhand von Nutzerereignissen sind mindestens 500.000 Ereignisse erforderlich.
Durchschnittliche Anzahl von detail-page-view-Ereignissen, die einem search-Ereignis pro Produkt zugeordnet werden 10 in den letzten 30 Tagen Erforderlich, um Suchergebnisse anhand der erfassten Ereignisse zu optimieren, sofern keine Ereignisse für die letzten 21 Tage hochgeladen werden.
Anteil der search-Ereignisse mit parsierbaren Filtern 0,1 in den letzten 30 Tagen Empfohlen, um die Reihenfolge dynamischer Attribute in der Suchantwort zu optimieren.
Anteil der gesuchten Produkte mit Preis 0,95 in den letzten 30 Tagen Erforderlich für die Optimierung von Suchergebnissen anhand der erfassten Ereignisse.
Durchschnittliche Anzahl von add-to-cart-Ereignissen, die einem search-Ereignis pro Produkt mit Preis zugeordnet werden 0,5 in den letzten 30 Tagen Empfohlen für umsatzoptimierte Suchergebnisse.
Durchschnittliche Anzahl von purchase-complete-Ereignissen, die einem search-Ereignis pro durchsuchbarem Produkt mit Preis zugeordnet werden 0,5 in den letzten 30 Tagen Empfohlen für umsatzoptimierte Suchergebnisse.

Anforderungen für die Personalisierung der Suche

Für die Personalisierung der Text Search und das Durchsuchen der Suchergebnisse für Ihre Nutzer auf Grundlage ihrer Aktivitäten sind die folgenden Daten erforderlich.

Nachdem Sie die folgenden Daten hochgeladen haben, können die Suchergebnisse automatisch personalisiert werden.

Messwert für Ereignisse Anzahl/Häufigkeit von Ereignissen Beschreibung
Volumen der von der Suche bereitgestellten search-Ereignisse 100.000 in den letzten 30 Tagen

Für die Personalisierung sind mindestens 100.000 Suchereignisse erforderlich,die in den letzten 30 Tagen über die Suche bereitgestellt wurden.

Suchergebnisse werden nicht im Cache gespeichert Weniger als 1% der letzten 100.000 Nutzerereignisse

Suchergebnisse für Text Search oder Browsersuchen sollten nicht im Cache gespeichert werden, wenn Sie die Personalisierung verwenden möchten. Wenn für alle Besucher dieselben Ergebnisse verwendet werden, kann die Suche keine wirklich personalisierten Ergebnisse für einzelne Nutzer liefern. Außerdem besteht das Risiko, dass private Daten von Nutzern offengelegt werden. Die Personalisierung der Suche wird automatisch deaktiviert, wenn Caching erkannt wird.

Wenn Sie nur Suchergebnisse im Cache speichern, kann die Suche trotzdem Stöberergebnisse personalisieren. Wenn Sie hingegen nur Browsergebnisse im Cache speichern, können die Suchergebnisse für Textanfragen weiterhin personalisiert werden.

Übereinstimmungen der Besucher-ID zwischen SearchRequests und Nutzerereignissen Mehr als 10% Übereinstimmung bei den letzten 100.000 Nutzerereignissen Achten Sie darauf, dass die Abstände und die Formatierung der Besucher-ID in SearchRequests und Nutzerereignissen übereinstimmen. Durch eine einheitliche Formatierung der Besucher-ID wird sichergestellt, dass die Suche Nutzeraktivitäten richtig identifizieren kann.

Best Practices für Nutzerereignisse

In diesem Abschnitt werden Best Practices für Nutzerereignisse in AI Commerce Search beschrieben.

Prüfung der Produktimpressionen

Wenn Sie Ereignisse in AI Commerce Search aufnehmen, entweder als bisherige Ereignisse oder als Live-Ereignisse in der Produktion, müssen die folgenden Grenzwerte eingehalten werden, damit das Modell trainiert werden kann (siehe unten).

Die erforderliche Mindestanzahl von Ereignissen ist keine pauschale Zahl. Wenn beispielsweise 150.000 Aufrufe der Detailseite erforderlich sind, dürfen Sie nicht davon ausgehen, dass es sich um 150.000 zufällige Aufrufe der Detailseite handelt. Die Ereignisse müssen mit anderen Ereignissen wie SEARCH oder ADD TO CART in Verbindung stehen.

Das Modell wird anhand der Ereignisse trainiert, insbesondere für die Optimierung der Klickrate, anhand von SEARCH-Ereignissen und dem nachfolgenden Ereignis für die Aufrufe der Detailseite. Jedes Ereignis vom Typ „Detailseite aufrufen“ muss also auf eine Produkt-ID-Liste eines Suchereignisses zurückzuführen sein.

Das gilt auch für die Ereignisse „In den Einkaufswagen“ und „Kaufereignis“. Wenn Sie also eine Zeitachse von Ereignissen mit den Ereigniszeitstempeln für eine bestimmte Besucher-ID erstellen, können Sie das Verhalten von der Suche bis zum Klick oder Kauf ableiten. Wenn Sie also ein zufälliges Ereignis für den Aufruf einer Detailseite finden, das keinem Suchereignis zugeordnet ist, kann dieses Ereignis nicht für das Modelltraining verwendet werden.

Achten Sie also darauf, dass aufgenommene Ereignisse mit einem Suchereignis verknüpft sind. Das bedeutet, dass die Zeitstempel, Besucher-ID und Produkt-ID-Details korrekt sein müssen, damit das Modell trainiert werden kann.

Ereignistyppriorität

Um die besten Ergebnisse zu erzielen, sollten Sie Nutzerereignisse für alle Ereignistypen aufzeichnen. In der folgenden Tabelle wird die Priorität der verschiedenen Nutzerereignistypen beschrieben. Sie müssen die Nutzerereignisse mit der höchsten Priorität protokollieren, um qualitativ hochwertige Datenmodelle zu erhalten.

Priorität Nutzerereignistypen

Erforderlich für erste Live-Tests für Empfehlungen

(Ereignistypen hängen vom Empfehlungsmodelltyp ab)

detail-page-view

add-to-cart

purchase-complete

home-page-view

Zusätzliches Ereignis für Search Live-Test erforderlich

search

Anhand dieser Ereignisse kann AI Commerce Search ermitteln, welches Produkt angeklickt, in den Einkaufswagen gelegt und gekauft wurde. So wird das Modell trainiert, während das Produkt mehr Interaktionen und Conversions erhält. Das hilft, das Produkt für eine optimierte Umsatzsteigerung besser zu ranken.

Außerdem bilden die Nutzerereignisse die Grundlage für die KPI-Messung, einschließlich Umsatz pro Nutzer, CTR und CVR.

Damit ein Modell auf Grundlage von Verlaufsdaten trainiert werden kann, die von Ihrer bisherigen Suchmaschine generiert wurden, sollten Nutzerereignisse zuerst aus Verlaufsdaten zum Website-Engagement ergänzt werden. Diese werden in der Regel von einem Website-Analyseframework bereitgestellt. Möglicherweise müssen Sie die vorhandenen bisherigen Ereignisse in das für AI Commerce Search vorgeschriebene Nutzerereignisschema umwandeln. Dies ist erforderlich, um das Modell für die Umsatzoptimierung zu trainieren. Danach müssen Ereignisse kontinuierlich über „collect“ oder den Bulk-Import an AI Commerce Search gesendet werden.

Attribution von Ereignissen

Der Ablauf von Nutzerereignissen beschreibt, wie Nutzer die Aktivitäten auf der Website ausgeführt haben.

Der ideale User Flow ist:

  1. Der Nutzer führt eine Suche mit einer Anfrage durch.

  2. Der Nutzer ruft Seitenaufrufe für das gewünschte Produkt auf.

  3. Der Nutzer legt das Produkt in den Einkaufswagen, um es zu kaufen.

  4. Der Nutzer führt eine Kauftransaktion für die Produkte aus, die er kaufen möchte.

Ebenso wird erwartet, dass Nutzerereignisse für eine bestimmte Besucher-ID in einem ähnlichen Muster ablaufen. Das bedeutet, dass es auf einer Zeitskala für eine bestimmte Besucher-ID für das gekaufte Produkt kein Ereignis vom Typ „Produkt in den Einkaufswagen“ nach einer Kauftransaktion geben kann.

Der ideale Ereignisfluss sieht so aus:

  • Pfad 1: Suchereignis → Ereignis „Detailseite aufgerufen“ → Ereignis „In den Warenkorb“ → Kaufereignis
  • Pfad 2: Suchereignis → In-den-Warenkorb-Ereignis → Kaufereignis

Bei einem nicht gecachten Search API-Aufruf sieht der Ereignisfluss so aus:

  • Jeder Besucher erhält eine eindeutige Suchantwort und das entsprechende Attributionstoken folgt.
  • Es gibt einen klaren Unterschied zwischen dem Tracking von visitorID1 und visitorID2, da sich das Attributions-Token unterscheidet.

Beispiele für Nutzerereignistypen und Schemas

In diesem Abschnitt finden Sie die Datenformate für jeden unterstützten Ereignistyp.

Beispiele für JavaScript Pixel und Tag Manager werden bereitgestellt. Für BigQuery wird das vollständige Tabellenschema für jeden Typ bereitgestellt.

Für alle Nutzerereignistypen ist userId optional. Die Felder für Produktinformationen (priceInfo und availability) sind optional.

Hinweis:

  • Das Feld experimentIds ist nur erforderlich, wenn Sie einen A/B-Test machen.
  • Das Feld attributionToken ist nur für AI Commerce Search erforderlich. Sie wird verwendet, um die Leistung zu messen. Attributions-Tokens sollten nicht an predict, search und detail-page-view oder an Click-Events gesendet werden.
  • Achten Sie darauf, dass für alle Ihre Ereignisse eine einzige Währung verwendet wird, insbesondere wenn Sie dieGoogle Cloud -Konsole verwenden möchten, um Umsatzmesswerte zu erhalten. Die AI Commerce Search API unterstützt nicht die Verwendung mehrerer Währungen pro Katalog.

Weitere Informationen zum Nutzerereignisobjekt finden Sie in der API-Referenzdokumentation für UserEvent.

In den Einkaufswagen

Im Folgenden sehen Sie das Format für das add-to-cart-Nutzerereignis in einem Beispiel, in dem nur die erforderlichen Felder verwendet werden.

Die Produktmenge in einem add-to-cart-Ereignis muss ein inkrementeller Wert sein, der die Menge des Produkts angibt, das mit dem jeweiligen Nutzerereignis verknüpft ist. Wenn beispielsweise zwei Einheiten eines Produkts in den Einkaufswagen gelegt werden, sollte das Feld „Menge“ für dieses add-to-cart-Ereignis den Wert 2 haben. Bei add-to-cart-Ereignissen ist genau ein Produkt pro Ereignis anzugeben.

Wenn Sie Ereignisse importieren, müssen Sie den Zeitstempel im Feld eventTime im Format gemäß RFC 3339 angeben.

Je nach verwendeter API-Methode oder wenn zusätzliche Felder verwendet werden, sind möglicherweise weitere Felder erforderlich. Wenn das Nutzerereignis beispielsweise mit einer Entität verknüpft ist, müssen Sie das Feld entity angeben. Ausführliche Informationen zu den einzelnen Feldern und dazu, wann sie erforderlich sind, finden Sie in der UserEvent API-Referenzdokumentation.

JavaScript Pixel

var user_event = {
  "eventType": "add-to-cart",
  "visitorId": "visitor-id",
  "productDetails": [{
    "product": {
      "id": "product-id"
    },
    "quantity": { "value": 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.
        'productDetails': [{
          'product': {
            'id': 'product-id'
          },
          'quantity': product-quantity
        }]
      }
    });
</script>

BigQuery

Dies ist das vollständige JSON-Schema für diesen Nutzerereignistyp. Geben Sie dieses Schema an, wenn Sie Tabellen für diesen Nutzerereignistyp in BigQuery erstellen.

Die Modi für Pflichtfelder werden auf REQUIRED oder REPEATED gesetzt. Die Modi für optionale Felder sind auf NULLABLE gesetzt.

Beachten Sie, dass eventTime zum Importieren von Ereignissen mit BigQuery erforderlich ist. eventTime ist ein String mit einem Zeitstempelformat.

[
 {
   "name": "eventType",
   "type": "STRING",
   "mode": "REQUIRED"
 },
 {
   "name": "visitorId",
   "type": "STRING",
   "mode": "REQUIRED"
 },
 {
   "name": "eventTime",
   "type": "STRING",
   "mode": "REQUIRED"
 },
 {
   "name": "experimentIds",
   "type": "STRING",
   "mode": "REPEATED"
 },
 {
   "name": "attributionToken",
   "type": "STRING",
   "mode": "NULLABLE"
 },
 {
   "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": "cartId",
   "type": "STRING",
   "mode": "NULLABLE"
 },
 {
   "name": "userInfo",
   "type": "RECORD",
   "mode": "NULLABLE",
   "fields": [
     {
       "name": "userId",
       "type": "STRING",
       "mode": "NULLABLE"
     },
     {
       "name": "ipAddress",
       "type": "STRING",
       "mode": "NULLABLE"
     },
     {
       "name": "userAgent",
       "type": "STRING",
       "mode": "NULLABLE"
     },
     {
       "name": "directUserRequest",
       "type": "BOOLEAN",
       "mode": "NULLABLE"
     }
   ]
 },
 {
   "name": "uri",
   "type": "STRING",
   "mode": "NULLABLE"
 },
 {
   "name": "referrerUri",
   "type": "STRING",
   "mode": "NULLABLE"
 },
 {
   "name": "pageViewId",
   "type": "STRING",
   "mode": "NULLABLE"
 },
 {
   "name": "entity",
   "type": "STRING",
   "mode": "NULLABLE"
 }
]

Aufruf von Seite „Kategorie“

Im Folgenden sehen Sie das Nutzerereignisformat category-page-view.

In den folgenden Beispielen werden nur die erforderlichen Felder des Nutzerereignisformats category-page-view gezeigt.

Obwohl normalerweise nur eine Kategorie mit einer Seite verknüpft ist, unterstützt das Feld pageCategories auch eine Kategoriehierarchie, die Sie als Liste bereitstellen können.

Wenn Sie Ereignisse importieren, müssen Sie den Zeitstempel im Feld eventTime im Format gemäß RFC 3339 angeben.

Je nach verwendeter API-Methode oder wenn zusätzliche Felder verwendet werden, sind möglicherweise weitere Felder erforderlich. Wenn das Nutzerereignis beispielsweise mit einer Entität verknüpft ist, müssen Sie das Feld entity angeben. Ausführliche Informationen zu den einzelnen Feldern und dazu, wann sie erforderlich sind, finden Sie in der UserEvent API-Referenzdokumentation.

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

Dies ist das vollständige JSON-Schema für diesen Nutzerereignistyp. Geben Sie dieses Schema an, wenn Sie Tabellen für diesen Nutzerereignistyp in BigQuery erstellen.

Die Modi für Pflichtfelder werden auf REQUIRED oder REPEATED gesetzt. Die Modi für optionale Felder sind auf NULLABLE gesetzt.

Beachten Sie, dass eventTime zum Importieren von Ereignissen mit BigQuery erforderlich ist. eventTime ist ein String mit einem Zeitstempelformat.

[
 {
   "name": "eventType",
   "type": "STRING",
   "mode": "REQUIRED"
 },
 {
   "name": "visitorId",
   "type": "STRING",
   "mode": "REQUIRED"
 },
 {
   "name": "eventTime",
   "type": "STRING",
   "mode": "REQUIRED"
 },
 {
   "name": "experimentIds",
   "type": "STRING",
   "mode": "REPEATED"
 },
 {
   "name": "attributionToken",
   "type": "STRING",
   "mode": "NULLABLE"
 },
 {
   "name": "productDetails",
   "type": "RECORD",
   "mode": "REPEATED",
   "fields": [
     {
       "name": "product",
       "type": "RECORD",
       "mode": "REQUIRED",
       "fields": [
         {
           "name": "id",
           "type": "STRING",
           "mode": "REQUIRED"
         }
       ]
     }
   ]
 },
 {
   "name": "pageCategories",
   "type": "STRING",
   "mode": "REPEATED"
 },
 {
   "name": "userInfo",
   "type": "RECORD",
   "mode": "NULLABLE",
   "fields": [
     {
       "name": "userId",
       "type": "STRING",
       "mode": "NULLABLE"
     },
     {
       "name": "ipAddress",
       "type": "STRING",
       "mode": "NULLABLE"
     },
     {
       "name": "userAgent",
       "type": "STRING",
       "mode": "NULLABLE"
     },
     {
       "name": "directUserRequest",
       "type": "BOOLEAN",
       "mode": "NULLABLE"
     }
   ]
 },
 {
   "name": "uri",
   "type": "STRING",
   "mode": "NULLABLE"
 },
 {
   "name": "referrerUri",
   "type": "STRING",
   "mode": "NULLABLE"
 },
 {
   "name": "pageViewId",
   "type": "STRING",
   "mode": "NULLABLE"
 },
 {
   "name": "entity",
   "type": "STRING",
   "mode": "NULLABLE"
 }
]

Detailseitenansicht

Im Folgenden sehen Sie das Datenformat des Nutzerereignisses detail-page-view.

In den folgenden Beispielen werden nur die erforderlichen Felder des Nutzerereignisformats detail-page-view gezeigt.

In den meisten Fällen enthält productDetails Details zum zugehörigen Produkt, es sei denn, mehrere Artikel werden gemeinsam verkauft.

Wenn Sie Ereignisse importieren, müssen Sie den Zeitstempel im Feld eventTime im Format gemäß RFC 3339 angeben.

Je nach verwendeter API-Methode oder wenn zusätzliche Felder verwendet werden, sind möglicherweise weitere Felder erforderlich. Wenn das Nutzerereignis beispielsweise mit einer Entität verknüpft ist, müssen Sie das Feld entity angeben. Ausführliche Informationen zu den einzelnen Feldern und dazu, wann sie erforderlich sind, finden Sie in der UserEvent API-Referenzdokumentation.

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

Dies ist das vollständige JSON-Schema für diesen Nutzerereignistyp. Geben Sie dieses Schema an, wenn Sie Tabellen für diesen Nutzerereignistyp in BigQuery erstellen.

Die Modi für Pflichtfelder werden auf REQUIRED oder REPEATED gesetzt. Die Modi für optionale Felder sind auf NULLABLE gesetzt.

Beachten Sie, dass eventTime zum Importieren von Ereignissen mit BigQuery erforderlich ist. eventTime ist ein String mit einem Zeitstempelformat.

[
 {
   "name": "eventType",
   "type": "STRING",
   "mode": "REQUIRED"
 },
 {
   "name": "visitorId",
   "type": "STRING",
   "mode": "REQUIRED"
 },
 {
   "name": "eventTime",
   "type": "STRING",
   "mode": "REQUIRED"
 },
 {
   "name": "experimentIds",
   "type": "STRING",
   "mode": "REPEATED"
 },
 {
   "name": "attributionToken",
   "type": "STRING",
   "mode": "NULLABLE"
 },
 {
   "name": "productDetails",
   "type": "RECORD",
   "mode": "REPEATED",
   "fields": [
     {
       "name": "product",
       "type": "RECORD",
       "mode": "REQUIRED",
       "fields": [
         {
           "name": "id",
           "type": "STRING",
           "mode": "REQUIRED"
         }
       ]
     }
   ]
 },
 {
   "name": "userInfo",
   "type": "RECORD",
   "mode": "NULLABLE",
   "fields": [
     {
       "name": "userId",
       "type": "STRING",
       "mode": "NULLABLE"
     },
     {
       "name": "ipAddress",
       "type": "STRING",
       "mode": "NULLABLE"
     },
     {
       "name": "userAgent",
       "type": "STRING",
       "mode": "NULLABLE"
     },
     {
       "name": "directUserRequest",
       "type": "BOOLEAN",
       "mode": "NULLABLE"
     }
   ]
 },
 {
   "name": "uri",
   "type": "STRING",
   "mode": "NULLABLE"
 },
 {
   "name": "referrerUri",
   "type": "STRING",
   "mode": "NULLABLE"
 },
 {
   "name": "pageViewId",
   "type": "STRING",
   "mode": "NULLABLE"
 },
 {
   "name": "entity",
   "type": "STRING",
   "mode": "NULLABLE"
 }
]

Startseitenansicht

Im Folgenden sehen Sie das Nutzerereignisformat home-page-view.

In den folgenden Beispielen werden nur die erforderlichen Felder des Nutzerereignisformats home-page-view gezeigt.

Wenn Sie Ereignisse importieren, müssen Sie den Zeitstempel im Feld eventTime im Format gemäß RFC 3339 angeben.

Je nach verwendeter API-Methode oder wenn zusätzliche Felder verwendet werden, sind möglicherweise weitere Felder erforderlich. Wenn das Nutzerereignis beispielsweise mit einer Entität verknüpft ist, müssen Sie das Feld entity angeben. Ausführliche Informationen zu den einzelnen Feldern und dazu, wann sie erforderlich sind, finden Sie in der UserEvent API-Referenzdokumentation.

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

Dies ist das vollständige JSON-Schema für diesen Nutzerereignistyp. Geben Sie dieses Schema an, wenn Sie Tabellen für diesen Nutzerereignistyp in BigQuery erstellen.

Die Modi für Pflichtfelder werden auf REQUIRED oder REPEATED gesetzt. Die Modi für optionale Felder sind auf NULLABLE gesetzt.

Beachten Sie, dass eventTime zum Importieren von Ereignissen mit BigQuery erforderlich ist. eventTime ist ein String mit einem Zeitstempelformat.

[
 {
   "name": "eventType",
   "type": "STRING",
   "mode": "REQUIRED"
 },
 {
   "name": "visitorId",
   "type": "STRING",
   "mode": "REQUIRED"
 },
 {
   "name": "eventTime",
   "type": "STRING",
   "mode": "REQUIRED"
 },
 {
   "name": "experimentIds",
   "type": "STRING",
   "mode": "REPEATED"
 },
 {
   "name": "attributionToken",
   "type": "STRING",
   "mode": "NULLABLE"
 },
 {
   "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": "userInfo",
   "type": "RECORD",
   "mode": "NULLABLE",
   "fields": [
     {
       "name": "userId",
       "type": "STRING",
       "mode": "NULLABLE"
     },
     {
       "name": "ipAddress",
       "type": "STRING",
       "mode": "NULLABLE"
     },
     {
       "name": "userAgent",
       "type": "STRING",
       "mode": "NULLABLE"
     },
     {
       "name": "directUserRequest",
       "type": "BOOLEAN",
       "mode": "NULLABLE"
     }
   ]
 },
 {
   "name": "uri",
   "type": "STRING",
   "mode": "NULLABLE"
 },
 {
   "name": "referrerUri",
   "type": "STRING",
   "mode": "NULLABLE"
 },
 {
   "name": "pageViewId",
   "type": "STRING",
   "mode": "NULLABLE"
 },
 {
   "name": "entity",
   "type": "STRING",
   "mode": "NULLABLE"
 }
]

Kauf abgeschlossen

Im Folgenden sehen Sie das Datenformat des Nutzerereignisses purchase-complete.

In den folgenden Beispielen werden nur die erforderlichen Felder des Nutzerereignisformats purchase-complete gezeigt.

Wenn Sie Ereignisse importieren, müssen Sie den Zeitstempel im Feld eventTime im Format gemäß RFC 3339 angeben.

Je nach verwendeter API-Methode oder wenn zusätzliche Felder verwendet werden, sind möglicherweise weitere Felder erforderlich. Wenn das Nutzerereignis beispielsweise mit einer Entität verknüpft ist, müssen Sie das Feld entity angeben. Ausführliche Informationen zu den einzelnen Feldern und dazu, wann sie erforderlich sind, finden Sie in der UserEvent API-Referenzdokumentation.

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

Dies ist das vollständige JSON-Schema für diesen Nutzerereignistyp. Geben Sie dieses Schema an, wenn Sie Tabellen für diesen Nutzerereignistyp in BigQuery erstellen.

Die Modi für Pflichtfelder werden auf REQUIRED oder REPEATED gesetzt. Die Modi für optionale Felder sind auf NULLABLE gesetzt.

Beachten Sie, dass eventTime zum Importieren von Ereignissen mit BigQuery erforderlich ist. eventTime ist ein String mit einem Zeitstempelformat.

[
 {
   "name": "eventType",
   "type": "STRING",
   "mode": "REQUIRED"
 },
 {
   "name": "visitorId",
   "type": "STRING",
   "mode": "REQUIRED"
 },
 {
   "name": "eventTime",
   "type": "STRING",
   "mode": "REQUIRED"
 },
 {
   "name": "experimentIds",
   "type": "STRING",
   "mode": "REPEATED"
 },
 {
   "name": "attributionToken",
   "type": "STRING",
   "mode": "NULLABLE"
 },
 {
   "name": "productDetails",
   "type": "RECORD",
   "mode": "REPEATED",
   "fields": [
     {
       "name": "product",
       "type": "RECORD",
       "mode": "REQUIRED",
       "fields": [
         {
           "name": "id",
           "type": "STRING",
           "mode": "REQUIRED"
         },
         {
           "name": "priceInfo",
           "type": "RECORD",
           "mode": "NULLABLE",
           "fields": [
             {
               "name": "price",
               "type": "FLOAT",
               "mode": "REQUIRED"
             },
             {
               "name": "originalPrice",
               "type": "FLOAT",
               "mode": "NULLABLE"
             },
             {
               "name": "currencyCode",
               "type": "STRING",
               "mode": "REQUIRED"
             },
             {
               "name": "cost",
               "type": "FLOAT",
               "mode": "NULLABLE"
             }
           ]
         }
       ]
     },
     {
       "name": "quantity",
       "type": "INTEGER",
       "mode": "REQUIRED"
     }
   ]
 },
 {
   "name": "cartId",
   "type": "STRING",
   "mode": "NULLABLE"
 },
 {
   "name": "purchaseTransaction",
   "type": "RECORD",
   "mode": "REQUIRED",
   "fields": [
     {
       "name": "id",
       "type": "STRING",
       "mode": "NULLABLE"
     },
     {
       "name": "revenue",
       "type": "FLOAT",
       "mode": "REQUIRED"
     },
     {
       "name": "tax",
       "type": "FLOAT",
       "mode": "NULLABLE"
     },
     {
       "name": "cost",
       "type": "FLOAT",
       "mode": "NULLABLE"
     },
     {
       "name": "currencyCode",
       "type": "STRING",
       "mode": "REQUIRED"
     }
   ]
 },
 {
   "name": "userInfo",
   "type": "RECORD",
   "mode": "NULLABLE",
   "fields": [
     {
       "name": "userId",
       "type": "STRING",
       "mode": "NULLABLE"
     },
     {
       "name": "ipAddress",
       "type": "STRING",
       "mode": "NULLABLE"
     },
     {
       "name": "userAgent",
       "type": "STRING",
       "mode": "NULLABLE"
     },
     {
       "name": "directUserRequest",
       "type": "BOOLEAN",
       "mode": "NULLABLE"
     }
   ]
 },
 {
   "name": "uri",
   "type": "STRING",
   "mode": "NULLABLE"
 },
 {
   "name": "referrerUri",
   "type": "STRING",
   "mode": "NULLABLE"
 },
 {
   "name": "pageViewId",
   "type": "STRING",
   "mode": "NULLABLE"
 },
 {
   "name": "entity",
   "type": "STRING",
   "mode": "NULLABLE"
 }
]

Im Folgenden sehen Sie das Nutzerereignisformat search.

Mindestens erforderliches search-Objekt

Dies sind die mindestens erforderlichen Felder, damit AI Commerce Search eine Liste mit Suchergebnissen zurückgeben kann:

  • searchQuery wird aus dem Parameter search_term oder aus view_search_results-Ereignissen gelesen.
  • productDetails wird aus dem Parameter items des Ereignisses view_item_list gelesen. Sie sollte die Liste der Produkt-IDs enthalten, die dem Endnutzer auf der Suchergebnisseite angezeigt werden.
  • Mit userEvents werden alle Metadaten erfasst, die für die AI Commerce Search API erforderlich sind, um zu erfahren, wie Endnutzer mit der Website des Kunden interagieren.

In den folgenden Beispielen werden nur die erforderlichen Felder des Nutzerereignisformats search gezeigt.

Wenn Sie Ereignisse importieren, müssen Sie den Zeitstempel im Feld eventTime im Format gemäß RFC 3339 angeben.

Je nach verwendeter API-Methode oder wenn zusätzliche Felder verwendet werden, sind möglicherweise weitere Felder erforderlich. Wenn das Nutzerereignis beispielsweise mit einer Entität verknüpft ist, müssen Sie das Feld entity angeben. Ausführliche Informationen zu den einzelnen Feldern und dazu, wann sie erforderlich sind, finden Sie in der UserEvent API-Referenzdokumentation.

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

Dies ist das vollständige JSON-Schema für diesen Nutzerereignistyp. Geben Sie dieses Schema an, wenn Sie Tabellen für diesen Nutzerereignistyp in BigQuery erstellen.

Die Modi für Pflichtfelder werden auf REQUIRED oder REPEATED gesetzt. Die Modi für optionale Felder sind auf NULLABLE gesetzt.

Beachten Sie, dass eventTime zum Importieren von Ereignissen mit BigQuery erforderlich ist. eventTime ist ein String mit einem Zeitstempelformat.

[
 {
   "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"
 },
 {
   "name": "entity",
   "type": "STRING",
   "mode": "NULLABLE"
 }
]

Automatische Vervollständigung

Dieses Feld ist nur für Suchereignisse erforderlich, wenn Sie Autocomplete verwenden möchten. Für die Suche ist sie nicht erforderlich.

In den folgenden Beispielen sehen Sie das Feld completionDetail, wenn ein Nutzer „sc“ eingibt und in der Vorschlagsliste auf den zweiten Vorschlag „Schuhe“ klickt, um ein Suchereignis auszulösen. Wenn der Nutzer auf keine Vorschläge klickt, bleibt das Feld completionDetail leer.

eventType muss "search" lauten.

completionAttributionToken ist der attributionToken-Wert aus der completeQuery-Antwort.

selectedSuggestion sollte mit searchQuery übereinstimmen.

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"
      }
    }
  ]
  "completionDetail": {
    "completionAttributionToken": "completion_token",
    "selectedSuggestion": "search-query",
    "selectedPosition": completion_position
  }
};

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'
            }
          }
        ]
        "completionDetail": {
          "completionAttributionToken": 'completion_token',
          "selectedSuggestion": 'search-query',
          "selectedPosition": completion_position
        }
      }
    });
</script>

BigQuery

Dies ist das vollständige JSON-Schema für diesen Nutzerereignistyp. Geben Sie dieses Schema an, wenn Sie Tabellen für diesen Nutzerereignistyp in BigQuery erstellen.

Die Modi für Pflichtfelder werden auf REQUIRED oder REPEATED gesetzt. Die Modi für optionale Felder sind auf NULLABLE gesetzt.

Beachten Sie, dass eventTime zum Importieren von Ereignissen mit BigQuery erforderlich ist. eventTime ist ein String mit einem Zeitstempelformat.

[
 {
   "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"
 },
 {
   "name": "completionDetail",
   "type": "RECORD"
   "mode": "NULLABLE"
   "fields": [
     {
       "name": "completionAttributionToken",
       "type": "STRING",
       "mode": "REQUIRED"
     },
     {
       "name": "selectedSuggestion",
       "type": "STRING",
       "mode": "REQUIRED"
     },
     {
       "name": "selectedPosition",
       "type": "INTEGER",
       "mode": "REQUIRED"
     }
    ]
 }
]

Einkaufswagen-Seitenansicht

Im Folgenden sehen Sie das Datenformat des Nutzerereignisses shopping-cart-page-view.

In den folgenden Beispielen werden nur die erforderlichen Felder des Nutzerereignisformats shopping-cart-page-view gezeigt.

Geben Sie die Objekte productDetails und userEvents an, es sei denn, der Warenkorb ist leer.

Wenn Sie Ereignisse importieren, müssen Sie den Zeitstempel im Feld eventTime im Format gemäß RFC 3339 angeben.

Je nach verwendeter API-Methode oder wenn zusätzliche Felder verwendet werden, sind möglicherweise weitere Felder erforderlich. Wenn das Nutzerereignis beispielsweise mit einer Entität verknüpft ist, müssen Sie das Feld entity angeben. Ausführliche Informationen zu den einzelnen Feldern und dazu, wann sie erforderlich sind, finden Sie in der UserEvent API-Referenzdokumentation.

JavaScript Pixel

var user_event = {
  "eventType": "shopping-cart-page-view"",
  "visitorId": "VISITOR-ID"
  "cartId": "CART-ID",
  "productDetails": [{
      "product": {
        "id": "PRODUCT-ID"
      },
      "quantity": PRODUCT-QUANTITY
    }]
};

Ersetzen Sie PRODUCT-ID, PRODUCT-QUANTITY, VISOTOR-ID und CART-ID durch Ihre Produkt-ID, Produktmenge, Sitzungs-ID und Warenkorb-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'
            },
            'quantity': PRODUCT-QUANTITY
          }]
      }
    });
</script>

Ersetzen Sie PRODUCT-ID, PRODUCT-QUANTITY, VISOTOR-ID und CART-ID durch Ihre Produkt-ID, Produktmenge, Sitzungs-ID und Warenkorb-ID.

BigQuery

Dies ist das vollständige JSON-Schema für diesen Nutzerereignistyp. Geben Sie dieses Schema an, wenn Sie Tabellen für diesen Nutzerereignistyp in BigQuery erstellen.

Die Modi für Pflichtfelder werden auf REQUIRED oder REPEATED gesetzt. Die Modi für optionale Felder sind auf NULLABLE gesetzt.

Beachten Sie, dass eventTime zum Importieren von Ereignissen mit BigQuery erforderlich ist. eventTime ist ein String mit einem Zeitstempelformat.

[
 {
   "name": "eventType",
   "type": "STRING",
   "mode": "REQUIRED"
 },
 {
   "name": "visitorId",
   "type": "STRING",
   "mode": "REQUIRED"
 },
 {
   "name": "eventTime",
   "type": "STRING",
   "mode": "REQUIRED"
 },
 {
   "name": "experimentIds",
   "type": "STRING",
   "mode": "REPEATED"
 },
 {
   "name": "attributionToken",
   "type": "STRING",
   "mode": "NULLABLE"
 },
 {
   "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": "cartId",
   "type": "STRING",
   "mode": "NULLABLE"
 },
 {
   "name": "userInfo",
   "type": "RECORD",
   "mode": "NULLABLE",
   "fields": [
     {
       "name": "userId",
       "type": "STRING",
       "mode": "NULLABLE"
     },
     {
       "name": "ipAddress",
       "type": "STRING",
       "mode": "NULLABLE"
     },
     {
       "name": "userAgent",
       "type": "STRING",
       "mode": "NULLABLE"
     },
     {
       "name": "directUserRequest",
       "type": "BOOLEAN",
       "mode": "NULLABLE"
     }
   ]
 },
 {
   "name": "uri",
   "type": "STRING",
   "mode": "NULLABLE"
 },
 {
   "name": "referrerUri",
   "type": "STRING",
   "mode": "NULLABLE"
 },
 {
   "name": "pageViewId",
   "type": "STRING",
   "mode": "NULLABLE"
 },
 {
   "name": "entity",
   "type": "STRING",
   "mode": "NULLABLE"
 }
]

Google Analytics 4-Felder für Nutzerereignisse

In der folgenden Tabelle sehen Sie, wie Google Analytics 4-Felder für Nutzerereignisse AI Commerce Search-Suchfeldern zugeordnet werden.

Bevor Sie Nutzerereignisse aus Google Analytics 4 importieren oder aufzeichnen, müssen Sie dafür sorgen, dass Ihre Google Analytics 4-Nutzerereignisse die folgenden Felder verwenden, damit AI Commerce Search Ihre Daten richtig einbinden kann.

Google Analytics 4 Einzelhandel
ecommerce.purchase_revenue purchaseTransaction.revenue
event_name eventType
event_timestamp eventTime
items.item_id productDetails.product.id
items.price productDetails.product.priceInfo.price
items.quantity productDetails.quantity
Schlüssel:
event_params.key auf "currency"

gesetzt Wert:
event_params.value.string_value
productDetails.product.priceInfo.currencyCode
Schlüssel:
event_params.key auf "currency"

gesetzt Wert:
event_params.value.string_value
purchaseTransaction.currencyCode
Schlüssel:
event_params.key auf "search_term"

gesetzt Wert:
event_params.value.string_value
searchQuery
user_id userInfo.userId
user_pseudo_id visitorId

Nächste Schritte