Class UserEvent (2.18.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
TypeDescription
int

ATTRIBUTION_TOKEN_FIELD_NUMBER

public static final int ATTRIBUTION_TOKEN_FIELD_NUMBER
Field Value
TypeDescription
int

CART_ID_FIELD_NUMBER

public static final int CART_ID_FIELD_NUMBER
Field Value
TypeDescription
int

COMPLETION_DETAIL_FIELD_NUMBER

public static final int COMPLETION_DETAIL_FIELD_NUMBER
Field Value
TypeDescription
int

ENTITY_FIELD_NUMBER

public static final int ENTITY_FIELD_NUMBER
Field Value
TypeDescription
int

EVENT_TIME_FIELD_NUMBER

public static final int EVENT_TIME_FIELD_NUMBER
Field Value
TypeDescription
int

EVENT_TYPE_FIELD_NUMBER

public static final int EVENT_TYPE_FIELD_NUMBER
Field Value
TypeDescription
int

EXPERIMENT_IDS_FIELD_NUMBER

public static final int EXPERIMENT_IDS_FIELD_NUMBER
Field Value
TypeDescription
int

FILTER_FIELD_NUMBER

public static final int FILTER_FIELD_NUMBER
Field Value
TypeDescription
int

OFFSET_FIELD_NUMBER

public static final int OFFSET_FIELD_NUMBER
Field Value
TypeDescription
int

ORDER_BY_FIELD_NUMBER

public static final int ORDER_BY_FIELD_NUMBER
Field Value
TypeDescription
int

PAGE_CATEGORIES_FIELD_NUMBER

public static final int PAGE_CATEGORIES_FIELD_NUMBER
Field Value
TypeDescription
int

PAGE_VIEW_ID_FIELD_NUMBER

public static final int PAGE_VIEW_ID_FIELD_NUMBER
Field Value
TypeDescription
int

PRODUCT_DETAILS_FIELD_NUMBER

public static final int PRODUCT_DETAILS_FIELD_NUMBER
Field Value
TypeDescription
int

PURCHASE_TRANSACTION_FIELD_NUMBER

public static final int PURCHASE_TRANSACTION_FIELD_NUMBER
Field Value
TypeDescription
int

REFERRER_URI_FIELD_NUMBER

public static final int REFERRER_URI_FIELD_NUMBER
Field Value
TypeDescription
int

SEARCH_QUERY_FIELD_NUMBER

public static final int SEARCH_QUERY_FIELD_NUMBER
Field Value
TypeDescription
int

SESSION_ID_FIELD_NUMBER

public static final int SESSION_ID_FIELD_NUMBER
Field Value
TypeDescription
int

URI_FIELD_NUMBER

public static final int URI_FIELD_NUMBER
Field Value
TypeDescription
int

USER_INFO_FIELD_NUMBER

public static final int USER_INFO_FIELD_NUMBER
Field Value
TypeDescription
int

VISITOR_ID_FIELD_NUMBER

public static final int VISITOR_ID_FIELD_NUMBER
Field Value
TypeDescription
int

Static Methods

getDefaultInstance()

public static UserEvent getDefaultInstance()
Returns
TypeDescription
UserEvent

getDescriptor()

public static final Descriptors.Descriptor getDescriptor()
Returns
TypeDescription
Descriptor

newBuilder()

public static UserEvent.Builder newBuilder()
Returns
TypeDescription
UserEvent.Builder

newBuilder(UserEvent prototype)

public static UserEvent.Builder newBuilder(UserEvent prototype)
Parameter
NameDescription
prototypeUserEvent
Returns
TypeDescription
UserEvent.Builder

parseDelimitedFrom(InputStream input)

public static UserEvent parseDelimitedFrom(InputStream input)
Parameter
NameDescription
inputInputStream
Returns
TypeDescription
UserEvent
Exceptions
TypeDescription
IOException

parseDelimitedFrom(InputStream input, ExtensionRegistryLite extensionRegistry)

public static UserEvent parseDelimitedFrom(InputStream input, ExtensionRegistryLite extensionRegistry)
Parameters
NameDescription
inputInputStream
extensionRegistryExtensionRegistryLite
Returns
TypeDescription
UserEvent
Exceptions
TypeDescription
IOException

parseFrom(byte[] data)

public static UserEvent parseFrom(byte[] data)
Parameter
NameDescription
databyte[]
Returns
TypeDescription
UserEvent
Exceptions
TypeDescription
InvalidProtocolBufferException

parseFrom(byte[] data, ExtensionRegistryLite extensionRegistry)

public static UserEvent parseFrom(byte[] data, ExtensionRegistryLite extensionRegistry)
Parameters
NameDescription
databyte[]
extensionRegistryExtensionRegistryLite
Returns
TypeDescription
UserEvent
Exceptions
TypeDescription
InvalidProtocolBufferException

parseFrom(ByteString data)

public static UserEvent parseFrom(ByteString data)
Parameter
NameDescription
dataByteString
Returns
TypeDescription
UserEvent
Exceptions
TypeDescription
InvalidProtocolBufferException

parseFrom(ByteString data, ExtensionRegistryLite extensionRegistry)

public static UserEvent parseFrom(ByteString data, ExtensionRegistryLite extensionRegistry)
Parameters
NameDescription
dataByteString
extensionRegistryExtensionRegistryLite
Returns
TypeDescription
UserEvent
Exceptions
TypeDescription
InvalidProtocolBufferException

parseFrom(CodedInputStream input)

public static UserEvent parseFrom(CodedInputStream input)
Parameter
NameDescription
inputCodedInputStream
Returns
TypeDescription
UserEvent
Exceptions
TypeDescription
IOException

parseFrom(CodedInputStream input, ExtensionRegistryLite extensionRegistry)

public static UserEvent parseFrom(CodedInputStream input, ExtensionRegistryLite extensionRegistry)
Parameters
NameDescription
inputCodedInputStream
extensionRegistryExtensionRegistryLite
Returns
TypeDescription
UserEvent
Exceptions
TypeDescription
IOException

parseFrom(InputStream input)

public static UserEvent parseFrom(InputStream input)
Parameter
NameDescription
inputInputStream
Returns
TypeDescription
UserEvent
Exceptions
TypeDescription
IOException

parseFrom(InputStream input, ExtensionRegistryLite extensionRegistry)

public static UserEvent parseFrom(InputStream input, ExtensionRegistryLite extensionRegistry)
Parameters
NameDescription
inputInputStream
extensionRegistryExtensionRegistryLite
Returns
TypeDescription
UserEvent
Exceptions
TypeDescription
IOException

parseFrom(ByteBuffer data)

public static UserEvent parseFrom(ByteBuffer data)
Parameter
NameDescription
dataByteBuffer
Returns
TypeDescription
UserEvent
Exceptions
TypeDescription
InvalidProtocolBufferException

parseFrom(ByteBuffer data, ExtensionRegistryLite extensionRegistry)

public static UserEvent parseFrom(ByteBuffer data, ExtensionRegistryLite extensionRegistry)
Parameters
NameDescription
dataByteBuffer
extensionRegistryExtensionRegistryLite
Returns
TypeDescription
UserEvent
Exceptions
TypeDescription
InvalidProtocolBufferException

parser()

public static Parser<UserEvent> parser()
Returns
TypeDescription
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
NameDescription
keyString
Returns
TypeDescription
boolean

equals(Object obj)

public boolean equals(Object obj)
Parameter
NameDescription
objObject
Returns
TypeDescription
boolean
Overrides

getAttributes()

public Map<String,CustomAttribute> getAttributes()

Use #getAttributesMap() instead.

Returns
TypeDescription
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
TypeDescription
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
TypeDescription
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
NameDescription
keyString
defaultValueCustomAttribute
Returns
TypeDescription
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
NameDescription
keyString
Returns
TypeDescription
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
TypeDescription
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
TypeDescription
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
TypeDescription
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
TypeDescription
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
TypeDescription
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
TypeDescription
CompletionDetailOrBuilder

getDefaultInstanceForType()

public UserEvent getDefaultInstanceForType()
Returns
TypeDescription
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. It is recommended to set this field to get better per-entity search, completion and prediction results.

string entity = 23;

Returns
TypeDescription
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. It is recommended to set this field to get better per-entity search, completion and prediction results.

string entity = 23;

Returns
TypeDescription
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
TypeDescription
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
TypeDescription
TimestampOrBuilder

getEventType()

public String getEventType()

Required. User event type. Allowed values are:

  • add-to-cart: Products being added to 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
TypeDescription
String

The eventType.

getEventTypeBytes()

public ByteString getEventTypeBytes()

Required. User event type. Allowed values are:

  • add-to-cart: Products being added to 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
TypeDescription
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
NameDescription
indexint

The index of the element to return.

Returns
TypeDescription
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
NameDescription
indexint

The index of the value to return.

Returns
TypeDescription
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
TypeDescription
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
TypeDescription
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
TypeDescription
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
TypeDescription
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
TypeDescription
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
TypeDescription
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
TypeDescription
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
NameDescription
indexint

The index of the element to return.

Returns
TypeDescription
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
NameDescription
indexint

The index of the value to return.

Returns
TypeDescription
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
TypeDescription
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
TypeDescription
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
TypeDescription
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
TypeDescription
ByteString

The bytes for pageViewId.

getParserForType()

public Parser<UserEvent> getParserForType()
Returns
TypeDescription
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
NameDescription
indexint
Returns
TypeDescription
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
TypeDescription
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
TypeDescription
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
NameDescription
indexint
Returns
TypeDescription
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
TypeDescription
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
TypeDescription
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
TypeDescription
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
TypeDescription
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
TypeDescription
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
TypeDescription
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
TypeDescription
ByteString

The bytes for searchQuery.

getSerializedSize()

public int getSerializedSize()
Returns
TypeDescription
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
TypeDescription
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
TypeDescription
ByteString

The bytes for sessionId.

getUnknownFields()

public final UnknownFieldSet getUnknownFields()
Returns
TypeDescription
UnknownFieldSet
Overrides

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
TypeDescription
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
TypeDescription
ByteString

The bytes for uri.

getUserInfo()

public UserInfo getUserInfo()

User information.

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

Returns
TypeDescription
UserInfo

The userInfo.

getUserInfoOrBuilder()

public UserInfoOrBuilder getUserInfoOrBuilder()

User information.

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

Returns
TypeDescription
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
TypeDescription
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
TypeDescription
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
TypeDescription
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
TypeDescription
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
TypeDescription
boolean

Whether the purchaseTransaction field is set.

hasUserInfo()

public boolean hasUserInfo()

User information.

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

Returns
TypeDescription
boolean

Whether the userInfo field is set.

hashCode()

public int hashCode()
Returns
TypeDescription
int
Overrides

internalGetFieldAccessorTable()

protected GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
Returns
TypeDescription
FieldAccessorTable
Overrides

internalGetMapField(int number)

protected MapField internalGetMapField(int number)
Parameter
NameDescription
numberint
Returns
TypeDescription
MapField
Overrides

isInitialized()

public final boolean isInitialized()
Returns
TypeDescription
boolean
Overrides

newBuilderForType()

public UserEvent.Builder newBuilderForType()
Returns
TypeDescription
UserEvent.Builder

newBuilderForType(GeneratedMessageV3.BuilderParent parent)

protected UserEvent.Builder newBuilderForType(GeneratedMessageV3.BuilderParent parent)
Parameter
NameDescription
parentBuilderParent
Returns
TypeDescription
UserEvent.Builder
Overrides

newInstance(GeneratedMessageV3.UnusedPrivateParameter unused)

protected Object newInstance(GeneratedMessageV3.UnusedPrivateParameter unused)
Parameter
NameDescription
unusedUnusedPrivateParameter
Returns
TypeDescription
Object
Overrides

toBuilder()

public UserEvent.Builder toBuilder()
Returns
TypeDescription
UserEvent.Builder

writeTo(CodedOutputStream output)

public void writeTo(CodedOutputStream output)
Parameter
NameDescription
outputCodedOutputStream
Overrides
Exceptions
TypeDescription
IOException