Class UserEvent (2.51.0)

public final class UserEvent extends GeneratedMessageV3 implements UserEventOrBuilder

UserEvent captures all metadata information Retail API needs to know about how end users interact with customers' website.

Protobuf type google.cloud.retail.v2.UserEvent

Implements

UserEventOrBuilder

Static Fields

ATTRIBUTES_FIELD_NUMBER

public static final int ATTRIBUTES_FIELD_NUMBER
Field Value
Type Description
int

ATTRIBUTION_TOKEN_FIELD_NUMBER

public static final int ATTRIBUTION_TOKEN_FIELD_NUMBER
Field Value
Type Description
int

CART_ID_FIELD_NUMBER

public static final int CART_ID_FIELD_NUMBER
Field Value
Type Description
int

COMPLETION_DETAIL_FIELD_NUMBER

public static final int COMPLETION_DETAIL_FIELD_NUMBER
Field Value
Type Description
int

ENTITY_FIELD_NUMBER

public static final int ENTITY_FIELD_NUMBER
Field Value
Type Description
int

EVENT_TIME_FIELD_NUMBER

public static final int EVENT_TIME_FIELD_NUMBER
Field Value
Type Description
int

EVENT_TYPE_FIELD_NUMBER

public static final int EVENT_TYPE_FIELD_NUMBER
Field Value
Type Description
int

EXPERIMENT_IDS_FIELD_NUMBER

public static final int EXPERIMENT_IDS_FIELD_NUMBER
Field Value
Type Description
int

FILTER_FIELD_NUMBER

public static final int FILTER_FIELD_NUMBER
Field Value
Type Description
int

OFFSET_FIELD_NUMBER

public static final int OFFSET_FIELD_NUMBER
Field Value
Type Description
int

ORDER_BY_FIELD_NUMBER

public static final int ORDER_BY_FIELD_NUMBER
Field Value
Type Description
int

PAGE_CATEGORIES_FIELD_NUMBER

public static final int PAGE_CATEGORIES_FIELD_NUMBER
Field Value
Type Description
int

PAGE_VIEW_ID_FIELD_NUMBER

public static final int PAGE_VIEW_ID_FIELD_NUMBER
Field Value
Type Description
int

PRODUCT_DETAILS_FIELD_NUMBER

public static final int PRODUCT_DETAILS_FIELD_NUMBER
Field Value
Type Description
int

PURCHASE_TRANSACTION_FIELD_NUMBER

public static final int PURCHASE_TRANSACTION_FIELD_NUMBER
Field Value
Type Description
int

REFERRER_URI_FIELD_NUMBER

public static final int REFERRER_URI_FIELD_NUMBER
Field Value
Type Description
int

SEARCH_QUERY_FIELD_NUMBER

public static final int SEARCH_QUERY_FIELD_NUMBER
Field Value
Type Description
int

SESSION_ID_FIELD_NUMBER

public static final int SESSION_ID_FIELD_NUMBER
Field Value
Type Description
int

URI_FIELD_NUMBER

public static final int URI_FIELD_NUMBER
Field Value
Type Description
int

USER_INFO_FIELD_NUMBER

public static final int USER_INFO_FIELD_NUMBER
Field Value
Type Description
int

VISITOR_ID_FIELD_NUMBER

public static final int VISITOR_ID_FIELD_NUMBER
Field Value
Type Description
int

Static Methods

getDefaultInstance()

public static UserEvent getDefaultInstance()
Returns
Type Description
UserEvent

getDescriptor()

public static final Descriptors.Descriptor getDescriptor()
Returns
Type Description
Descriptor

newBuilder()

public static UserEvent.Builder newBuilder()
Returns
Type Description
UserEvent.Builder

newBuilder(UserEvent prototype)

public static UserEvent.Builder newBuilder(UserEvent prototype)
Parameter
Name Description
prototype UserEvent
Returns
Type Description
UserEvent.Builder

parseDelimitedFrom(InputStream input)

public static UserEvent parseDelimitedFrom(InputStream input)
Parameter
Name Description
input InputStream
Returns
Type Description
UserEvent
Exceptions
Type Description
IOException

parseDelimitedFrom(InputStream input, ExtensionRegistryLite extensionRegistry)

public static UserEvent parseDelimitedFrom(InputStream input, ExtensionRegistryLite extensionRegistry)
Parameters
Name Description
input InputStream
extensionRegistry ExtensionRegistryLite
Returns
Type Description
UserEvent
Exceptions
Type Description
IOException

parseFrom(byte[] data)

public static UserEvent parseFrom(byte[] data)
Parameter
Name Description
data byte[]
Returns
Type Description
UserEvent
Exceptions
Type Description
InvalidProtocolBufferException

parseFrom(byte[] data, ExtensionRegistryLite extensionRegistry)

public static UserEvent parseFrom(byte[] data, ExtensionRegistryLite extensionRegistry)
Parameters
Name Description
data byte[]
extensionRegistry ExtensionRegistryLite
Returns
Type Description
UserEvent
Exceptions
Type Description
InvalidProtocolBufferException

parseFrom(ByteString data)

public static UserEvent parseFrom(ByteString data)
Parameter
Name Description
data ByteString
Returns
Type Description
UserEvent
Exceptions
Type Description
InvalidProtocolBufferException

parseFrom(ByteString data, ExtensionRegistryLite extensionRegistry)

public static UserEvent parseFrom(ByteString data, ExtensionRegistryLite extensionRegistry)
Parameters
Name Description
data ByteString
extensionRegistry ExtensionRegistryLite
Returns
Type Description
UserEvent
Exceptions
Type Description
InvalidProtocolBufferException

parseFrom(CodedInputStream input)

public static UserEvent parseFrom(CodedInputStream input)
Parameter
Name Description
input CodedInputStream
Returns
Type Description
UserEvent
Exceptions
Type Description
IOException

parseFrom(CodedInputStream input, ExtensionRegistryLite extensionRegistry)

public static UserEvent parseFrom(CodedInputStream input, ExtensionRegistryLite extensionRegistry)
Parameters
Name Description
input CodedInputStream
extensionRegistry ExtensionRegistryLite
Returns
Type Description
UserEvent
Exceptions
Type Description
IOException

parseFrom(InputStream input)

public static UserEvent parseFrom(InputStream input)
Parameter
Name Description
input InputStream
Returns
Type Description
UserEvent
Exceptions
Type Description
IOException

parseFrom(InputStream input, ExtensionRegistryLite extensionRegistry)

public static UserEvent parseFrom(InputStream input, ExtensionRegistryLite extensionRegistry)
Parameters
Name Description
input InputStream
extensionRegistry ExtensionRegistryLite
Returns
Type Description
UserEvent
Exceptions
Type Description
IOException

parseFrom(ByteBuffer data)

public static UserEvent parseFrom(ByteBuffer data)
Parameter
Name Description
data ByteBuffer
Returns
Type Description
UserEvent
Exceptions
Type Description
InvalidProtocolBufferException

parseFrom(ByteBuffer data, ExtensionRegistryLite extensionRegistry)

public static UserEvent parseFrom(ByteBuffer data, ExtensionRegistryLite extensionRegistry)
Parameters
Name Description
data ByteBuffer
extensionRegistry ExtensionRegistryLite
Returns
Type Description
UserEvent
Exceptions
Type Description
InvalidProtocolBufferException

parser()

public static Parser<UserEvent> parser()
Returns
Type Description
Parser<UserEvent>

Methods

containsAttributes(String key)

public boolean containsAttributes(String key)

Extra user event features to include in the recommendation model.

If you provide custom attributes for ingested user events, also include them in the user events that you associate with prediction requests. Custom attribute formatting must be consistent between imported events and events provided with prediction requests. This lets the Retail API use those custom attributes when training models and serving predictions, which helps improve recommendation quality.

This field needs to pass all below criteria, otherwise an INVALID_ARGUMENT error is returned:

  • The key must be a UTF-8 encoded string with a length limit of 5,000 characters.
  • For text attributes, at most 400 values are allowed. Empty values are not allowed. Each value must be a UTF-8 encoded string with a length limit of 256 characters.
  • For number attributes, at most 400 values are allowed.

    For product recommendations, an example of extra user information is traffic_channel, which is how a user arrives at the site. Users can arrive at the site by coming to the site directly, coming through Google search, or in other ways.

map<string, .google.cloud.retail.v2.CustomAttribute> attributes = 7;

Parameter
Name Description
key String
Returns
Type Description
boolean

equals(Object obj)

public boolean equals(Object obj)
Parameter
Name Description
obj Object
Returns
Type Description
boolean
Overrides

getAttributes() (deprecated)

public Map<String,CustomAttribute> getAttributes()

Use #getAttributesMap() instead.

Returns
Type Description
Map<String,CustomAttribute>

getAttributesCount()

public int getAttributesCount()

Extra user event features to include in the recommendation model.

If you provide custom attributes for ingested user events, also include them in the user events that you associate with prediction requests. Custom attribute formatting must be consistent between imported events and events provided with prediction requests. This lets the Retail API use those custom attributes when training models and serving predictions, which helps improve recommendation quality.

This field needs to pass all below criteria, otherwise an INVALID_ARGUMENT error is returned:

  • The key must be a UTF-8 encoded string with a length limit of 5,000 characters.
  • For text attributes, at most 400 values are allowed. Empty values are not allowed. Each value must be a UTF-8 encoded string with a length limit of 256 characters.
  • For number attributes, at most 400 values are allowed.

    For product recommendations, an example of extra user information is traffic_channel, which is how a user arrives at the site. Users can arrive at the site by coming to the site directly, coming through Google search, or in other ways.

map<string, .google.cloud.retail.v2.CustomAttribute> attributes = 7;

Returns
Type Description
int

getAttributesMap()

public Map<String,CustomAttribute> getAttributesMap()

Extra user event features to include in the recommendation model.

If you provide custom attributes for ingested user events, also include them in the user events that you associate with prediction requests. Custom attribute formatting must be consistent between imported events and events provided with prediction requests. This lets the Retail API use those custom attributes when training models and serving predictions, which helps improve recommendation quality.

This field needs to pass all below criteria, otherwise an INVALID_ARGUMENT error is returned:

  • The key must be a UTF-8 encoded string with a length limit of 5,000 characters.
  • For text attributes, at most 400 values are allowed. Empty values are not allowed. Each value must be a UTF-8 encoded string with a length limit of 256 characters.
  • For number attributes, at most 400 values are allowed.

    For product recommendations, an example of extra user information is traffic_channel, which is how a user arrives at the site. Users can arrive at the site by coming to the site directly, coming through Google search, or in other ways.

map<string, .google.cloud.retail.v2.CustomAttribute> attributes = 7;

Returns
Type Description
Map<String,CustomAttribute>

getAttributesOrDefault(String key, CustomAttribute defaultValue)

public CustomAttribute getAttributesOrDefault(String key, CustomAttribute defaultValue)

Extra user event features to include in the recommendation model.

If you provide custom attributes for ingested user events, also include them in the user events that you associate with prediction requests. Custom attribute formatting must be consistent between imported events and events provided with prediction requests. This lets the Retail API use those custom attributes when training models and serving predictions, which helps improve recommendation quality.

This field needs to pass all below criteria, otherwise an INVALID_ARGUMENT error is returned:

  • The key must be a UTF-8 encoded string with a length limit of 5,000 characters.
  • For text attributes, at most 400 values are allowed. Empty values are not allowed. Each value must be a UTF-8 encoded string with a length limit of 256 characters.
  • For number attributes, at most 400 values are allowed.

    For product recommendations, an example of extra user information is traffic_channel, which is how a user arrives at the site. Users can arrive at the site by coming to the site directly, coming through Google search, or in other ways.

map<string, .google.cloud.retail.v2.CustomAttribute> attributes = 7;

Parameters
Name Description
key String
defaultValue CustomAttribute
Returns
Type Description
CustomAttribute

getAttributesOrThrow(String key)

public CustomAttribute getAttributesOrThrow(String key)

Extra user event features to include in the recommendation model.

If you provide custom attributes for ingested user events, also include them in the user events that you associate with prediction requests. Custom attribute formatting must be consistent between imported events and events provided with prediction requests. This lets the Retail API use those custom attributes when training models and serving predictions, which helps improve recommendation quality.

This field needs to pass all below criteria, otherwise an INVALID_ARGUMENT error is returned:

  • The key must be a UTF-8 encoded string with a length limit of 5,000 characters.
  • For text attributes, at most 400 values are allowed. Empty values are not allowed. Each value must be a UTF-8 encoded string with a length limit of 256 characters.
  • For number attributes, at most 400 values are allowed.

    For product recommendations, an example of extra user information is traffic_channel, which is how a user arrives at the site. Users can arrive at the site by coming to the site directly, coming through Google search, or in other ways.

map<string, .google.cloud.retail.v2.CustomAttribute> attributes = 7;

Parameter
Name Description
key String
Returns
Type Description
CustomAttribute

getAttributionToken()

public String getAttributionToken()

Highly recommended for user events that are the result of PredictionService.Predict. This field enables accurate attribution of recommendation model performance.

The value must be a valid PredictResponse.attribution_token for user events that are the result of PredictionService.Predict. The value must be a valid SearchResponse.attribution_token for user events that are the result of SearchService.Search.

This token enables us to accurately attribute page view or purchase back to the event and the particular predict response containing this clicked/purchased product. If user clicks on product K in the recommendation results, pass PredictResponse.attribution_token as a URL parameter to product K's page. When recording events on product K's page, log the PredictResponse.attribution_token to this field.

string attribution_token = 5;

Returns
Type Description
String

The attributionToken.

getAttributionTokenBytes()

public ByteString getAttributionTokenBytes()

Highly recommended for user events that are the result of PredictionService.Predict. This field enables accurate attribution of recommendation model performance.

The value must be a valid PredictResponse.attribution_token for user events that are the result of PredictionService.Predict. The value must be a valid SearchResponse.attribution_token for user events that are the result of SearchService.Search.

This token enables us to accurately attribute page view or purchase back to the event and the particular predict response containing this clicked/purchased product. If user clicks on product K in the recommendation results, pass PredictResponse.attribution_token as a URL parameter to product K's page. When recording events on product K's page, log the PredictResponse.attribution_token to this field.

string attribution_token = 5;

Returns
Type Description
ByteString

The bytes for attributionToken.

getCartId()

public String getCartId()

The ID or name of the associated shopping cart. This ID is used to associate multiple items added or present in the cart before purchase.

This can only be set for add-to-cart, purchase-complete, or shopping-cart-page-view events.

string cart_id = 8;

Returns
Type Description
String

The cartId.

getCartIdBytes()

public ByteString getCartIdBytes()

The ID or name of the associated shopping cart. This ID is used to associate multiple items added or present in the cart before purchase.

This can only be set for add-to-cart, purchase-complete, or shopping-cart-page-view events.

string cart_id = 8;

Returns
Type Description
ByteString

The bytes for cartId.

getCompletionDetail()

public CompletionDetail getCompletionDetail()

The main auto-completion details related to the event.

This field should be set for search event when autocomplete function is enabled and the user clicks a suggestion for search.

.google.cloud.retail.v2.CompletionDetail completion_detail = 22;

Returns
Type Description
CompletionDetail

The completionDetail.

getCompletionDetailOrBuilder()

public CompletionDetailOrBuilder getCompletionDetailOrBuilder()

The main auto-completion details related to the event.

This field should be set for search event when autocomplete function is enabled and the user clicks a suggestion for search.

.google.cloud.retail.v2.CompletionDetail completion_detail = 22;

Returns
Type Description
CompletionDetailOrBuilder

getDefaultInstanceForType()

public UserEvent getDefaultInstanceForType()
Returns
Type Description
UserEvent

getEntity()

public String getEntity()

The entity for customers that may run multiple different entities, domains, sites or regions, for example, Google US, Google Ads, Waymo, google.com, youtube.com, etc. We recommend that you set this field to get better per-entity search, completion, and prediction results.

string entity = 23;

Returns
Type Description
String

The entity.

getEntityBytes()

public ByteString getEntityBytes()

The entity for customers that may run multiple different entities, domains, sites or regions, for example, Google US, Google Ads, Waymo, google.com, youtube.com, etc. We recommend that you set this field to get better per-entity search, completion, and prediction results.

string entity = 23;

Returns
Type Description
ByteString

The bytes for entity.

getEventTime()

public Timestamp getEventTime()

Only required for UserEventService.ImportUserEvents method. Timestamp of when the user event happened.

.google.protobuf.Timestamp event_time = 3;

Returns
Type Description
Timestamp

The eventTime.

getEventTimeOrBuilder()

public TimestampOrBuilder getEventTimeOrBuilder()

Only required for UserEventService.ImportUserEvents method. Timestamp of when the user event happened.

.google.protobuf.Timestamp event_time = 3;

Returns
Type Description
TimestampOrBuilder

getEventType()

public String getEventType()

Required. User event type. Allowed values are:

  • add-to-cart: Products being added to cart.
  • remove-from-cart: Products being removed from cart.
  • category-page-view: Special pages such as sale or promotion pages viewed.
  • detail-page-view: Products detail page viewed.
  • home-page-view: Homepage viewed.
  • promotion-offered: Promotion is offered to a user.
  • promotion-not-offered: Promotion is not offered to a user.
  • purchase-complete: User finishing a purchase.
  • search: Product search.
  • shopping-cart-page-view: User viewing a shopping cart.

string event_type = 1 [(.google.api.field_behavior) = REQUIRED];

Returns
Type Description
String

The eventType.

getEventTypeBytes()

public ByteString getEventTypeBytes()

Required. User event type. Allowed values are:

  • add-to-cart: Products being added to cart.
  • remove-from-cart: Products being removed from cart.
  • category-page-view: Special pages such as sale or promotion pages viewed.
  • detail-page-view: Products detail page viewed.
  • home-page-view: Homepage viewed.
  • promotion-offered: Promotion is offered to a user.
  • promotion-not-offered: Promotion is not offered to a user.
  • purchase-complete: User finishing a purchase.
  • search: Product search.
  • shopping-cart-page-view: User viewing a shopping cart.

string event_type = 1 [(.google.api.field_behavior) = REQUIRED];

Returns
Type Description
ByteString

The bytes for eventType.

getExperimentIds(int index)

public String getExperimentIds(int index)

A list of identifiers for the independent experiment groups this user event belongs to. This is used to distinguish between user events associated with different experiment setups (e.g. using Retail API, using different recommendation models).

repeated string experiment_ids = 4;

Parameter
Name Description
index int

The index of the element to return.

Returns
Type Description
String

The experimentIds at the given index.

getExperimentIdsBytes(int index)

public ByteString getExperimentIdsBytes(int index)

A list of identifiers for the independent experiment groups this user event belongs to. This is used to distinguish between user events associated with different experiment setups (e.g. using Retail API, using different recommendation models).

repeated string experiment_ids = 4;

Parameter
Name Description
index int

The index of the value to return.

Returns
Type Description
ByteString

The bytes of the experimentIds at the given index.

getExperimentIdsCount()

public int getExperimentIdsCount()

A list of identifiers for the independent experiment groups this user event belongs to. This is used to distinguish between user events associated with different experiment setups (e.g. using Retail API, using different recommendation models).

repeated string experiment_ids = 4;

Returns
Type Description
int

The count of experimentIds.

getExperimentIdsList()

public ProtocolStringList getExperimentIdsList()

A list of identifiers for the independent experiment groups this user event belongs to. This is used to distinguish between user events associated with different experiment setups (e.g. using Retail API, using different recommendation models).

repeated string experiment_ids = 4;

Returns
Type Description
ProtocolStringList

A list containing the experimentIds.

getFilter()

public String getFilter()

The filter syntax consists of an expression language for constructing a predicate from one or more fields of the products being filtered.

See SearchRequest.filter for definition and syntax.

The value must be a UTF-8 encoded string with a length limit of 1,000 characters. Otherwise, an INVALID_ARGUMENT error is returned.

string filter = 16;

Returns
Type Description
String

The filter.

getFilterBytes()

public ByteString getFilterBytes()

The filter syntax consists of an expression language for constructing a predicate from one or more fields of the products being filtered.

See SearchRequest.filter for definition and syntax.

The value must be a UTF-8 encoded string with a length limit of 1,000 characters. Otherwise, an INVALID_ARGUMENT error is returned.

string filter = 16;

Returns
Type Description
ByteString

The bytes for filter.

getOffset()

public int getOffset()

An integer that specifies the current offset for pagination (the 0-indexed starting location, amongst the products deemed by the API as relevant).

See SearchRequest.offset for definition.

If this field is negative, an INVALID_ARGUMENT is returned.

This can only be set for search events. Other event types should not set this field. Otherwise, an INVALID_ARGUMENT error is returned.

int32 offset = 18;

Returns
Type Description
int

The offset.

getOrderBy()

public String getOrderBy()

The order in which products are returned.

See SearchRequest.order_by for definition and syntax.

The value must be a UTF-8 encoded string with a length limit of 1,000 characters. Otherwise, an INVALID_ARGUMENT error is returned.

This can only be set for search events. Other event types should not set this field. Otherwise, an INVALID_ARGUMENT error is returned.

string order_by = 17;

Returns
Type Description
String

The orderBy.

getOrderByBytes()

public ByteString getOrderByBytes()

The order in which products are returned.

See SearchRequest.order_by for definition and syntax.

The value must be a UTF-8 encoded string with a length limit of 1,000 characters. Otherwise, an INVALID_ARGUMENT error is returned.

This can only be set for search events. Other event types should not set this field. Otherwise, an INVALID_ARGUMENT error is returned.

string order_by = 17;

Returns
Type Description
ByteString

The bytes for orderBy.

getPageCategories(int index)

public String getPageCategories(int index)

The categories associated with a category page.

To represent full path of category, use '>' sign to separate different hierarchies. If '>' is part of the category name, replace it with other character(s).

Category pages include special pages such as sales or promotions. For instance, a special sale page may have the category hierarchy: "pageCategories" : ["Sales > 2017 Black Friday Deals"].

Required for category-page-view events. At least one of search_query or page_categories is required for search events. Other event types should not set this field. Otherwise, an INVALID_ARGUMENT error is returned.

repeated string page_categories = 11;

Parameter
Name Description
index int

The index of the element to return.

Returns
Type Description
String

The pageCategories at the given index.

getPageCategoriesBytes(int index)

public ByteString getPageCategoriesBytes(int index)

The categories associated with a category page.

To represent full path of category, use '>' sign to separate different hierarchies. If '>' is part of the category name, replace it with other character(s).

Category pages include special pages such as sales or promotions. For instance, a special sale page may have the category hierarchy: "pageCategories" : ["Sales > 2017 Black Friday Deals"].

Required for category-page-view events. At least one of search_query or page_categories is required for search events. Other event types should not set this field. Otherwise, an INVALID_ARGUMENT error is returned.

repeated string page_categories = 11;

Parameter
Name Description
index int

The index of the value to return.

Returns
Type Description
ByteString

The bytes of the pageCategories at the given index.

getPageCategoriesCount()

public int getPageCategoriesCount()

The categories associated with a category page.

To represent full path of category, use '>' sign to separate different hierarchies. If '>' is part of the category name, replace it with other character(s).

Category pages include special pages such as sales or promotions. For instance, a special sale page may have the category hierarchy: "pageCategories" : ["Sales > 2017 Black Friday Deals"].

Required for category-page-view events. At least one of search_query or page_categories is required for search events. Other event types should not set this field. Otherwise, an INVALID_ARGUMENT error is returned.

repeated string page_categories = 11;

Returns
Type Description
int

The count of pageCategories.

getPageCategoriesList()

public ProtocolStringList getPageCategoriesList()

The categories associated with a category page.

To represent full path of category, use '>' sign to separate different hierarchies. If '>' is part of the category name, replace it with other character(s).

Category pages include special pages such as sales or promotions. For instance, a special sale page may have the category hierarchy: "pageCategories" : ["Sales > 2017 Black Friday Deals"].

Required for category-page-view events. At least one of search_query or page_categories is required for search events. Other event types should not set this field. Otherwise, an INVALID_ARGUMENT error is returned.

repeated string page_categories = 11;

Returns
Type Description
ProtocolStringList

A list containing the pageCategories.

getPageViewId()

public String getPageViewId()

A unique ID of a web page view.

This should be kept the same for all user events triggered from the same pageview. For example, an item detail page view could trigger multiple events as the user is browsing the page. The pageViewId property should be kept the same for all these events so that they can be grouped together properly.

When using the client side event reporting with JavaScript pixel and Google Tag Manager, this value is filled in automatically.

string page_view_id = 15;

Returns
Type Description
String

The pageViewId.

getPageViewIdBytes()

public ByteString getPageViewIdBytes()

A unique ID of a web page view.

This should be kept the same for all user events triggered from the same pageview. For example, an item detail page view could trigger multiple events as the user is browsing the page. The pageViewId property should be kept the same for all these events so that they can be grouped together properly.

When using the client side event reporting with JavaScript pixel and Google Tag Manager, this value is filled in automatically.

string page_view_id = 15;

Returns
Type Description
ByteString

The bytes for pageViewId.

getParserForType()

public Parser<UserEvent> getParserForType()
Returns
Type Description
Parser<UserEvent>
Overrides

getProductDetails(int index)

public ProductDetail getProductDetails(int index)

The main product details related to the event.

This field is optional except for the following event types:

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

    In a search event, this field represents the products returned to the end user on the current page (the end user may have not finished browsing the whole page yet). When a new page is returned to the end user, after pagination/filtering/ordering even for the same query, a new search event with different product_details is desired. The end user may have not finished browsing the whole page yet.

repeated .google.cloud.retail.v2.ProductDetail product_details = 6;

Parameter
Name Description
index int
Returns
Type Description
ProductDetail

getProductDetailsCount()

public int getProductDetailsCount()

The main product details related to the event.

This field is optional except for the following event types:

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

    In a search event, this field represents the products returned to the end user on the current page (the end user may have not finished browsing the whole page yet). When a new page is returned to the end user, after pagination/filtering/ordering even for the same query, a new search event with different product_details is desired. The end user may have not finished browsing the whole page yet.

repeated .google.cloud.retail.v2.ProductDetail product_details = 6;

Returns
Type Description
int

getProductDetailsList()

public List<ProductDetail> getProductDetailsList()

The main product details related to the event.

This field is optional except for the following event types:

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

    In a search event, this field represents the products returned to the end user on the current page (the end user may have not finished browsing the whole page yet). When a new page is returned to the end user, after pagination/filtering/ordering even for the same query, a new search event with different product_details is desired. The end user may have not finished browsing the whole page yet.

repeated .google.cloud.retail.v2.ProductDetail product_details = 6;

Returns
Type Description
List<ProductDetail>

getProductDetailsOrBuilder(int index)

public ProductDetailOrBuilder getProductDetailsOrBuilder(int index)

The main product details related to the event.

This field is optional except for the following event types:

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

    In a search event, this field represents the products returned to the end user on the current page (the end user may have not finished browsing the whole page yet). When a new page is returned to the end user, after pagination/filtering/ordering even for the same query, a new search event with different product_details is desired. The end user may have not finished browsing the whole page yet.

repeated .google.cloud.retail.v2.ProductDetail product_details = 6;

Parameter
Name Description
index int
Returns
Type Description
ProductDetailOrBuilder

getProductDetailsOrBuilderList()

public List<? extends ProductDetailOrBuilder> getProductDetailsOrBuilderList()

The main product details related to the event.

This field is optional except for the following event types:

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

    In a search event, this field represents the products returned to the end user on the current page (the end user may have not finished browsing the whole page yet). When a new page is returned to the end user, after pagination/filtering/ordering even for the same query, a new search event with different product_details is desired. The end user may have not finished browsing the whole page yet.

repeated .google.cloud.retail.v2.ProductDetail product_details = 6;

Returns
Type Description
List<? extends com.google.cloud.retail.v2.ProductDetailOrBuilder>

getPurchaseTransaction()

public PurchaseTransaction getPurchaseTransaction()

A transaction represents the entire purchase transaction.

Required for purchase-complete events. Other event types should not set this field. Otherwise, an INVALID_ARGUMENT error is returned.

.google.cloud.retail.v2.PurchaseTransaction purchase_transaction = 9;

Returns
Type Description
PurchaseTransaction

The purchaseTransaction.

getPurchaseTransactionOrBuilder()

public PurchaseTransactionOrBuilder getPurchaseTransactionOrBuilder()

A transaction represents the entire purchase transaction.

Required for purchase-complete events. Other event types should not set this field. Otherwise, an INVALID_ARGUMENT error is returned.

.google.cloud.retail.v2.PurchaseTransaction purchase_transaction = 9;

Returns
Type Description
PurchaseTransactionOrBuilder

getReferrerUri()

public String getReferrerUri()

The referrer URL of the current page.

When using the client side event reporting with JavaScript pixel and Google Tag Manager, this value is filled in automatically.

string referrer_uri = 14;

Returns
Type Description
String

The referrerUri.

getReferrerUriBytes()

public ByteString getReferrerUriBytes()

The referrer URL of the current page.

When using the client side event reporting with JavaScript pixel and Google Tag Manager, this value is filled in automatically.

string referrer_uri = 14;

Returns
Type Description
ByteString

The bytes for referrerUri.

getSearchQuery()

public String getSearchQuery()

The user's search query.

See SearchRequest.query for definition.

The value must be a UTF-8 encoded string with a length limit of 5,000 characters. Otherwise, an INVALID_ARGUMENT error is returned.

At least one of search_query or page_categories is required for search events. Other event types should not set this field. Otherwise, an INVALID_ARGUMENT error is returned.

string search_query = 10;

Returns
Type Description
String

The searchQuery.

getSearchQueryBytes()

public ByteString getSearchQueryBytes()

The user's search query.

See SearchRequest.query for definition.

The value must be a UTF-8 encoded string with a length limit of 5,000 characters. Otherwise, an INVALID_ARGUMENT error is returned.

At least one of search_query or page_categories is required for search events. Other event types should not set this field. Otherwise, an INVALID_ARGUMENT error is returned.

string search_query = 10;

Returns
Type Description
ByteString

The bytes for searchQuery.

getSerializedSize()

public int getSerializedSize()
Returns
Type Description
int
Overrides

getSessionId()

public String getSessionId()

A unique identifier for tracking a visitor session with a length limit of 128 bytes. A session is an aggregation of an end user behavior in a time span.

A general guideline to populate the sesion_id:

  1. If user has no activity for 30 min, a new session_id should be assigned.
  2. The session_id should be unique across users, suggest use uuid or add visitor_id as prefix.

string session_id = 21;

Returns
Type Description
String

The sessionId.

getSessionIdBytes()

public ByteString getSessionIdBytes()

A unique identifier for tracking a visitor session with a length limit of 128 bytes. A session is an aggregation of an end user behavior in a time span.

A general guideline to populate the sesion_id:

  1. If user has no activity for 30 min, a new session_id should be assigned.
  2. The session_id should be unique across users, suggest use uuid or add visitor_id as prefix.

string session_id = 21;

Returns
Type Description
ByteString

The bytes for sessionId.

getUri()

public String getUri()

Complete URL (window.location.href) of the user's current page.

When using the client side event reporting with JavaScript pixel and Google Tag Manager, this value is filled in automatically. Maximum length 5,000 characters.

string uri = 13;

Returns
Type Description
String

The uri.

getUriBytes()

public ByteString getUriBytes()

Complete URL (window.location.href) of the user's current page.

When using the client side event reporting with JavaScript pixel and Google Tag Manager, this value is filled in automatically. Maximum length 5,000 characters.

string uri = 13;

Returns
Type Description
ByteString

The bytes for uri.

getUserInfo()

public UserInfo getUserInfo()

User information.

.google.cloud.retail.v2.UserInfo user_info = 12;

Returns
Type Description
UserInfo

The userInfo.

getUserInfoOrBuilder()

public UserInfoOrBuilder getUserInfoOrBuilder()

User information.

.google.cloud.retail.v2.UserInfo user_info = 12;

Returns
Type Description
UserInfoOrBuilder

getVisitorId()

public String getVisitorId()

Required. A unique identifier for tracking visitors.

For example, this could be implemented with an HTTP cookie, which should be able to uniquely identify a visitor on a single device. This unique identifier should not change if the visitor log in/out of the website.

Don't set the field to the same fixed ID for different users. This mixes the event history of those users together, which results in degraded model quality.

The field must be a UTF-8 encoded string with a length limit of 128 characters. Otherwise, an INVALID_ARGUMENT error is returned.

The field should not contain PII or user-data. We recommend to use Google Analytics Client ID for this field.

string visitor_id = 2 [(.google.api.field_behavior) = REQUIRED];

Returns
Type Description
String

The visitorId.

getVisitorIdBytes()

public ByteString getVisitorIdBytes()

Required. A unique identifier for tracking visitors.

For example, this could be implemented with an HTTP cookie, which should be able to uniquely identify a visitor on a single device. This unique identifier should not change if the visitor log in/out of the website.

Don't set the field to the same fixed ID for different users. This mixes the event history of those users together, which results in degraded model quality.

The field must be a UTF-8 encoded string with a length limit of 128 characters. Otherwise, an INVALID_ARGUMENT error is returned.

The field should not contain PII or user-data. We recommend to use Google Analytics Client ID for this field.

string visitor_id = 2 [(.google.api.field_behavior) = REQUIRED];

Returns
Type Description
ByteString

The bytes for visitorId.

hasCompletionDetail()

public boolean hasCompletionDetail()

The main auto-completion details related to the event.

This field should be set for search event when autocomplete function is enabled and the user clicks a suggestion for search.

.google.cloud.retail.v2.CompletionDetail completion_detail = 22;

Returns
Type Description
boolean

Whether the completionDetail field is set.

hasEventTime()

public boolean hasEventTime()

Only required for UserEventService.ImportUserEvents method. Timestamp of when the user event happened.

.google.protobuf.Timestamp event_time = 3;

Returns
Type Description
boolean

Whether the eventTime field is set.

hasPurchaseTransaction()

public boolean hasPurchaseTransaction()

A transaction represents the entire purchase transaction.

Required for purchase-complete events. Other event types should not set this field. Otherwise, an INVALID_ARGUMENT error is returned.

.google.cloud.retail.v2.PurchaseTransaction purchase_transaction = 9;

Returns
Type Description
boolean

Whether the purchaseTransaction field is set.

hasUserInfo()

public boolean hasUserInfo()

User information.

.google.cloud.retail.v2.UserInfo user_info = 12;

Returns
Type Description
boolean

Whether the userInfo field is set.

hashCode()

public int hashCode()
Returns
Type Description
int
Overrides

internalGetFieldAccessorTable()

protected GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
Returns
Type Description
FieldAccessorTable
Overrides

internalGetMapFieldReflection(int number)

protected MapFieldReflectionAccessor internalGetMapFieldReflection(int number)
Parameter
Name Description
number int
Returns
Type Description
com.google.protobuf.MapFieldReflectionAccessor
Overrides
com.google.protobuf.GeneratedMessageV3.internalGetMapFieldReflection(int)

isInitialized()

public final boolean isInitialized()
Returns
Type Description
boolean
Overrides

newBuilderForType()

public UserEvent.Builder newBuilderForType()
Returns
Type Description
UserEvent.Builder

newBuilderForType(GeneratedMessageV3.BuilderParent parent)

protected UserEvent.Builder newBuilderForType(GeneratedMessageV3.BuilderParent parent)
Parameter
Name Description
parent BuilderParent
Returns
Type Description
UserEvent.Builder
Overrides

newInstance(GeneratedMessageV3.UnusedPrivateParameter unused)

protected Object newInstance(GeneratedMessageV3.UnusedPrivateParameter unused)
Parameter
Name Description
unused UnusedPrivateParameter
Returns
Type Description
Object
Overrides

toBuilder()

public UserEvent.Builder toBuilder()
Returns
Type Description
UserEvent.Builder

writeTo(CodedOutputStream output)

public void writeTo(CodedOutputStream output)
Parameter
Name Description
output CodedOutputStream
Overrides
Exceptions
Type Description
IOException