- 2.57.0 (latest)
- 2.56.0
- 2.55.0
- 2.54.0
- 2.53.0
- 2.51.0
- 2.50.0
- 2.49.0
- 2.48.0
- 2.47.0
- 2.46.0
- 2.45.0
- 2.44.0
- 2.43.0
- 2.42.0
- 2.41.0
- 2.39.0
- 2.38.0
- 2.37.0
- 2.36.0
- 2.35.0
- 2.34.0
- 2.33.0
- 2.32.0
- 2.31.0
- 2.30.0
- 2.29.0
- 2.26.0
- 2.25.0
- 2.24.0
- 2.23.0
- 2.22.0
- 2.21.0
- 2.20.0
- 2.19.0
- 2.18.0
- 2.17.0
- 2.16.0
- 2.15.0
- 2.14.0
- 2.13.0
- 2.11.0
- 2.10.0
- 2.9.0
- 2.8.0
- 2.7.0
- 2.6.0
- 2.5.1
- 2.4.0
- 2.3.0
- 2.2.3
- 2.1.0
- 2.0.19
public static final class UserEvent.Builder extends GeneratedMessageV3.Builder<UserEvent.Builder> 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
Inheritance
Object > AbstractMessageLite.Builder<MessageType,BuilderType> > AbstractMessage.Builder<BuilderType> > GeneratedMessageV3.Builder > UserEvent.BuilderImplements
UserEventOrBuilderStatic Methods
getDescriptor()
public static final Descriptors.Descriptor getDescriptor()
Type | Description |
Descriptor |
Methods
addAllExperimentIds(Iterable<String> values)
public UserEvent.Builder addAllExperimentIds(Iterable<String> values)
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;
Name | Description |
values | Iterable<String> The experimentIds to add. |
Type | Description |
UserEvent.Builder | This builder for chaining. |
addAllPageCategories(Iterable<String> values)
public UserEvent.Builder addAllPageCategories(Iterable<String> values)
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, please 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;
Name | Description |
values | Iterable<String> The pageCategories to add. |
Type | Description |
UserEvent.Builder | This builder for chaining. |
addAllProductDetails(Iterable<? extends ProductDetail> values)
public UserEvent.Builder addAllProductDetails(Iterable<? extends ProductDetail> values)
The main product details related to the event. This field is required for the following event types:
add-to-cart
detail-page-view
purchase-complete
search
In asearch
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 newsearch
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;
Name | Description |
values | Iterable<? extends com.google.cloud.retail.v2.ProductDetail> |
Type | Description |
UserEvent.Builder |
addExperimentIds(String value)
public UserEvent.Builder addExperimentIds(String value)
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;
Name | Description |
value | String The experimentIds to add. |
Type | Description |
UserEvent.Builder | This builder for chaining. |
addExperimentIdsBytes(ByteString value)
public UserEvent.Builder addExperimentIdsBytes(ByteString value)
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;
Name | Description |
value | ByteString The bytes of the experimentIds to add. |
Type | Description |
UserEvent.Builder | This builder for chaining. |
addPageCategories(String value)
public UserEvent.Builder addPageCategories(String value)
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, please 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;
Name | Description |
value | String The pageCategories to add. |
Type | Description |
UserEvent.Builder | This builder for chaining. |
addPageCategoriesBytes(ByteString value)
public UserEvent.Builder addPageCategoriesBytes(ByteString value)
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, please 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;
Name | Description |
value | ByteString The bytes of the pageCategories to add. |
Type | Description |
UserEvent.Builder | This builder for chaining. |
addProductDetails(ProductDetail value)
public UserEvent.Builder addProductDetails(ProductDetail value)
The main product details related to the event. This field is required for the following event types:
add-to-cart
detail-page-view
purchase-complete
search
In asearch
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 newsearch
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;
Name | Description |
value | ProductDetail |
Type | Description |
UserEvent.Builder |
addProductDetails(ProductDetail.Builder builderForValue)
public UserEvent.Builder addProductDetails(ProductDetail.Builder builderForValue)
The main product details related to the event. This field is required for the following event types:
add-to-cart
detail-page-view
purchase-complete
search
In asearch
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 newsearch
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;
Name | Description |
builderForValue | ProductDetail.Builder |
Type | Description |
UserEvent.Builder |
addProductDetails(int index, ProductDetail value)
public UserEvent.Builder addProductDetails(int index, ProductDetail value)
The main product details related to the event. This field is required for the following event types:
add-to-cart
detail-page-view
purchase-complete
search
In asearch
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 newsearch
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;
Name | Description |
index | int |
value | ProductDetail |
Type | Description |
UserEvent.Builder |
addProductDetails(int index, ProductDetail.Builder builderForValue)
public UserEvent.Builder addProductDetails(int index, ProductDetail.Builder builderForValue)
The main product details related to the event. This field is required for the following event types:
add-to-cart
detail-page-view
purchase-complete
search
In asearch
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 newsearch
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;
Name | Description |
index | int |
builderForValue | ProductDetail.Builder |
Type | Description |
UserEvent.Builder |
addProductDetailsBuilder()
public ProductDetail.Builder addProductDetailsBuilder()
The main product details related to the event. This field is required for the following event types:
add-to-cart
detail-page-view
purchase-complete
search
In asearch
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 newsearch
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;
Type | Description |
ProductDetail.Builder |
addProductDetailsBuilder(int index)
public ProductDetail.Builder addProductDetailsBuilder(int index)
The main product details related to the event. This field is required for the following event types:
add-to-cart
detail-page-view
purchase-complete
search
In asearch
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 newsearch
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;
Name | Description |
index | int |
Type | Description |
ProductDetail.Builder |
addRepeatedField(Descriptors.FieldDescriptor field, Object value)
public UserEvent.Builder addRepeatedField(Descriptors.FieldDescriptor field, Object value)
Name | Description |
field | FieldDescriptor |
value | Object |
Type | Description |
UserEvent.Builder |
build()
public UserEvent build()
Type | Description |
UserEvent |
buildPartial()
public UserEvent buildPartial()
Type | Description |
UserEvent |
clear()
public UserEvent.Builder clear()
Type | Description |
UserEvent.Builder |
clearAttributes()
public UserEvent.Builder clearAttributes()
Type | Description |
UserEvent.Builder |
clearAttributionToken()
public UserEvent.Builder clearAttributionToken()
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;
Type | Description |
UserEvent.Builder | This builder for chaining. |
clearCartId()
public UserEvent.Builder clearCartId()
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;
Type | Description |
UserEvent.Builder | This builder for chaining. |
clearCompletionDetail()
public UserEvent.Builder clearCompletionDetail()
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;
Type | Description |
UserEvent.Builder |
clearEventTime()
public UserEvent.Builder clearEventTime()
Only required for UserEventService.ImportUserEvents method. Timestamp of when the user event happened.
.google.protobuf.Timestamp event_time = 3;
Type | Description |
UserEvent.Builder |
clearEventType()
public UserEvent.Builder clearEventType()
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];
Type | Description |
UserEvent.Builder | This builder for chaining. |
clearExperimentIds()
public UserEvent.Builder clearExperimentIds()
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;
Type | Description |
UserEvent.Builder | This builder for chaining. |
clearField(Descriptors.FieldDescriptor field)
public UserEvent.Builder clearField(Descriptors.FieldDescriptor field)
Name | Description |
field | FieldDescriptor |
Type | Description |
UserEvent.Builder |
clearFilter()
public UserEvent.Builder clearFilter()
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;
Type | Description |
UserEvent.Builder | This builder for chaining. |
clearOffset()
public UserEvent.Builder clearOffset()
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;
Type | Description |
UserEvent.Builder | This builder for chaining. |
clearOneof(Descriptors.OneofDescriptor oneof)
public UserEvent.Builder clearOneof(Descriptors.OneofDescriptor oneof)
Name | Description |
oneof | OneofDescriptor |
Type | Description |
UserEvent.Builder |
clearOrderBy()
public UserEvent.Builder clearOrderBy()
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;
Type | Description |
UserEvent.Builder | This builder for chaining. |
clearPageCategories()
public UserEvent.Builder clearPageCategories()
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, please 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;
Type | Description |
UserEvent.Builder | This builder for chaining. |
clearPageViewId()
public UserEvent.Builder clearPageViewId()
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;
Type | Description |
UserEvent.Builder | This builder for chaining. |
clearProductDetails()
public UserEvent.Builder clearProductDetails()
The main product details related to the event. This field is required for the following event types:
add-to-cart
detail-page-view
purchase-complete
search
In asearch
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 newsearch
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;
Type | Description |
UserEvent.Builder |
clearPurchaseTransaction()
public UserEvent.Builder clearPurchaseTransaction()
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;
Type | Description |
UserEvent.Builder |
clearReferrerUri()
public UserEvent.Builder clearReferrerUri()
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;
Type | Description |
UserEvent.Builder | This builder for chaining. |
clearSearchQuery()
public UserEvent.Builder clearSearchQuery()
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;
Type | Description |
UserEvent.Builder | This builder for chaining. |
clearSessionId()
public UserEvent.Builder clearSessionId()
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:
- If user has no activity for 30 min, a new session_id should be assigned.
- The session_id should be unique across users, suggest use uuid or add visitor_id as prefix.
string session_id = 21;
Type | Description |
UserEvent.Builder | This builder for chaining. |
clearUri()
public UserEvent.Builder clearUri()
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;
Type | Description |
UserEvent.Builder | This builder for chaining. |
clearUserInfo()
public UserEvent.Builder clearUserInfo()
User information.
.google.cloud.retail.v2.UserInfo user_info = 12;
Type | Description |
UserEvent.Builder |
clearVisitorId()
public UserEvent.Builder clearVisitorId()
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. 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 Analystics Client ID for this field.
string visitor_id = 2 [(.google.api.field_behavior) = REQUIRED];
Type | Description |
UserEvent.Builder | This builder for chaining. |
clone()
public UserEvent.Builder clone()
Type | Description |
UserEvent.Builder |
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;
Name | Description |
key | String |
Type | Description |
boolean |
getAttributes()
public Map<String,CustomAttribute> getAttributes()
Use #getAttributesMap() instead.
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;
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;
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;
Name | Description |
key | String |
defaultValue | CustomAttribute |
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;
Name | Description |
key | String |
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;
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;
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;
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;
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;
Type | Description |
CompletionDetail | The completionDetail. |
getCompletionDetailBuilder()
public CompletionDetail.Builder getCompletionDetailBuilder()
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;
Type | Description |
CompletionDetail.Builder |
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;
Type | Description |
CompletionDetailOrBuilder |
getDefaultInstanceForType()
public UserEvent getDefaultInstanceForType()
Type | Description |
UserEvent |
getDescriptorForType()
public Descriptors.Descriptor getDescriptorForType()
Type | Description |
Descriptor |
getEventTime()
public Timestamp getEventTime()
Only required for UserEventService.ImportUserEvents method. Timestamp of when the user event happened.
.google.protobuf.Timestamp event_time = 3;
Type | Description |
Timestamp | The eventTime. |
getEventTimeBuilder()
public Timestamp.Builder getEventTimeBuilder()
Only required for UserEventService.ImportUserEvents method. Timestamp of when the user event happened.
.google.protobuf.Timestamp event_time = 3;
Type | Description |
Builder |
getEventTimeOrBuilder()
public TimestampOrBuilder getEventTimeOrBuilder()
Only required for UserEventService.ImportUserEvents method. Timestamp of when the user event happened.
.google.protobuf.Timestamp event_time = 3;
Type | Description |
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];
Type | Description |
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];
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;
Name | Description |
index | int The index of the element to return. |
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;
Name | Description |
index | int The index of the value to return. |
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;
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;
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;
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;
Type | Description |
ByteString | The bytes for filter. |
getMutableAttributes()
public Map<String,CustomAttribute> getMutableAttributes()
Use alternate mutation accessors instead.
Type | Description |
Map<String,CustomAttribute> |
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;
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;
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;
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, please 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;
Name | Description |
index | int The index of the element to return. |
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, please 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;
Name | Description |
index | int The index of the value to return. |
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, please 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;
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, please 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;
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;
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;
Type | Description |
ByteString | The bytes for pageViewId. |
getProductDetails(int index)
public ProductDetail getProductDetails(int index)
The main product details related to the event. This field is required for the following event types:
add-to-cart
detail-page-view
purchase-complete
search
In asearch
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 newsearch
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;
Name | Description |
index | int |
Type | Description |
ProductDetail |
getProductDetailsBuilder(int index)
public ProductDetail.Builder getProductDetailsBuilder(int index)
The main product details related to the event. This field is required for the following event types:
add-to-cart
detail-page-view
purchase-complete
search
In asearch
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 newsearch
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;
Name | Description |
index | int |
Type | Description |
ProductDetail.Builder |
getProductDetailsBuilderList()
public List<ProductDetail.Builder> getProductDetailsBuilderList()
The main product details related to the event. This field is required for the following event types:
add-to-cart
detail-page-view
purchase-complete
search
In asearch
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 newsearch
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;
Type | Description |
List<Builder> |
getProductDetailsCount()
public int getProductDetailsCount()
The main product details related to the event. This field is required for the following event types:
add-to-cart
detail-page-view
purchase-complete
search
In asearch
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 newsearch
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;
Type | Description |
int |
getProductDetailsList()
public List<ProductDetail> getProductDetailsList()
The main product details related to the event. This field is required for the following event types:
add-to-cart
detail-page-view
purchase-complete
search
In asearch
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 newsearch
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;
Type | Description |
List<ProductDetail> |
getProductDetailsOrBuilder(int index)
public ProductDetailOrBuilder getProductDetailsOrBuilder(int index)
The main product details related to the event. This field is required for the following event types:
add-to-cart
detail-page-view
purchase-complete
search
In asearch
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 newsearch
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;
Name | Description |
index | int |
Type | Description |
ProductDetailOrBuilder |
getProductDetailsOrBuilderList()
public List<? extends ProductDetailOrBuilder> getProductDetailsOrBuilderList()
The main product details related to the event. This field is required for the following event types:
add-to-cart
detail-page-view
purchase-complete
search
In asearch
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 newsearch
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;
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;
Type | Description |
PurchaseTransaction | The purchaseTransaction. |
getPurchaseTransactionBuilder()
public PurchaseTransaction.Builder getPurchaseTransactionBuilder()
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;
Type | Description |
PurchaseTransaction.Builder |
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;
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;
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;
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;
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;
Type | Description |
ByteString | The bytes for searchQuery. |
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:
- If user has no activity for 30 min, a new session_id should be assigned.
- The session_id should be unique across users, suggest use uuid or add visitor_id as prefix.
string session_id = 21;
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:
- If user has no activity for 30 min, a new session_id should be assigned.
- The session_id should be unique across users, suggest use uuid or add visitor_id as prefix.
string session_id = 21;
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;
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;
Type | Description |
ByteString | The bytes for uri. |
getUserInfo()
public UserInfo getUserInfo()
User information.
.google.cloud.retail.v2.UserInfo user_info = 12;
Type | Description |
UserInfo | The userInfo. |
getUserInfoBuilder()
public UserInfo.Builder getUserInfoBuilder()
User information.
.google.cloud.retail.v2.UserInfo user_info = 12;
Type | Description |
UserInfo.Builder |
getUserInfoOrBuilder()
public UserInfoOrBuilder getUserInfoOrBuilder()
User information.
.google.cloud.retail.v2.UserInfo user_info = 12;
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. 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 Analystics Client ID for this field.
string visitor_id = 2 [(.google.api.field_behavior) = REQUIRED];
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. 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 Analystics Client ID for this field.
string visitor_id = 2 [(.google.api.field_behavior) = REQUIRED];
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;
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;
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;
Type | Description |
boolean | Whether the purchaseTransaction field is set. |
hasUserInfo()
public boolean hasUserInfo()
User information.
.google.cloud.retail.v2.UserInfo user_info = 12;
Type | Description |
boolean | Whether the userInfo field is set. |
internalGetFieldAccessorTable()
protected GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
Type | Description |
FieldAccessorTable |
internalGetMapField(int number)
protected MapField internalGetMapField(int number)
Name | Description |
number | int |
Type | Description |
MapField |
internalGetMutableMapField(int number)
protected MapField internalGetMutableMapField(int number)
Name | Description |
number | int |
Type | Description |
MapField |
isInitialized()
public final boolean isInitialized()
Type | Description |
boolean |
mergeCompletionDetail(CompletionDetail value)
public UserEvent.Builder mergeCompletionDetail(CompletionDetail value)
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;
Name | Description |
value | CompletionDetail |
Type | Description |
UserEvent.Builder |
mergeEventTime(Timestamp value)
public UserEvent.Builder mergeEventTime(Timestamp value)
Only required for UserEventService.ImportUserEvents method. Timestamp of when the user event happened.
.google.protobuf.Timestamp event_time = 3;
Name | Description |
value | Timestamp |
Type | Description |
UserEvent.Builder |
mergeFrom(UserEvent other)
public UserEvent.Builder mergeFrom(UserEvent other)
Name | Description |
other | UserEvent |
Type | Description |
UserEvent.Builder |
mergeFrom(CodedInputStream input, ExtensionRegistryLite extensionRegistry)
public UserEvent.Builder mergeFrom(CodedInputStream input, ExtensionRegistryLite extensionRegistry)
Name | Description |
input | CodedInputStream |
extensionRegistry | ExtensionRegistryLite |
Type | Description |
UserEvent.Builder |
Type | Description |
IOException |
mergeFrom(Message other)
public UserEvent.Builder mergeFrom(Message other)
Name | Description |
other | Message |
Type | Description |
UserEvent.Builder |
mergePurchaseTransaction(PurchaseTransaction value)
public UserEvent.Builder mergePurchaseTransaction(PurchaseTransaction value)
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;
Name | Description |
value | PurchaseTransaction |
Type | Description |
UserEvent.Builder |
mergeUnknownFields(UnknownFieldSet unknownFields)
public final UserEvent.Builder mergeUnknownFields(UnknownFieldSet unknownFields)
Name | Description |
unknownFields | UnknownFieldSet |
Type | Description |
UserEvent.Builder |
mergeUserInfo(UserInfo value)
public UserEvent.Builder mergeUserInfo(UserInfo value)
User information.
.google.cloud.retail.v2.UserInfo user_info = 12;
Name | Description |
value | UserInfo |
Type | Description |
UserEvent.Builder |
putAllAttributes(Map<String,CustomAttribute> values)
public UserEvent.Builder putAllAttributes(Map<String,CustomAttribute> values)
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;
Name | Description |
values | Map<String,CustomAttribute> |
Type | Description |
UserEvent.Builder |
putAttributes(String key, CustomAttribute value)
public UserEvent.Builder putAttributes(String key, CustomAttribute value)
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;
Name | Description |
key | String |
value | CustomAttribute |
Type | Description |
UserEvent.Builder |
removeAttributes(String key)
public UserEvent.Builder removeAttributes(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;
Name | Description |
key | String |
Type | Description |
UserEvent.Builder |
removeProductDetails(int index)
public UserEvent.Builder removeProductDetails(int index)
The main product details related to the event. This field is required for the following event types:
add-to-cart
detail-page-view
purchase-complete
search
In asearch
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 newsearch
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;
Name | Description |
index | int |
Type | Description |
UserEvent.Builder |
setAttributionToken(String value)
public UserEvent.Builder setAttributionToken(String value)
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;
Name | Description |
value | String The attributionToken to set. |
Type | Description |
UserEvent.Builder | This builder for chaining. |
setAttributionTokenBytes(ByteString value)
public UserEvent.Builder setAttributionTokenBytes(ByteString value)
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;
Name | Description |
value | ByteString The bytes for attributionToken to set. |
Type | Description |
UserEvent.Builder | This builder for chaining. |
setCartId(String value)
public UserEvent.Builder setCartId(String value)
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;
Name | Description |
value | String The cartId to set. |
Type | Description |
UserEvent.Builder | This builder for chaining. |
setCartIdBytes(ByteString value)
public UserEvent.Builder setCartIdBytes(ByteString value)
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;
Name | Description |
value | ByteString The bytes for cartId to set. |
Type | Description |
UserEvent.Builder | This builder for chaining. |
setCompletionDetail(CompletionDetail value)
public UserEvent.Builder setCompletionDetail(CompletionDetail value)
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;
Name | Description |
value | CompletionDetail |
Type | Description |
UserEvent.Builder |
setCompletionDetail(CompletionDetail.Builder builderForValue)
public UserEvent.Builder setCompletionDetail(CompletionDetail.Builder builderForValue)
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;
Name | Description |
builderForValue | CompletionDetail.Builder |
Type | Description |
UserEvent.Builder |
setEventTime(Timestamp value)
public UserEvent.Builder setEventTime(Timestamp value)
Only required for UserEventService.ImportUserEvents method. Timestamp of when the user event happened.
.google.protobuf.Timestamp event_time = 3;
Name | Description |
value | Timestamp |
Type | Description |
UserEvent.Builder |
setEventTime(Timestamp.Builder builderForValue)
public UserEvent.Builder setEventTime(Timestamp.Builder builderForValue)
Only required for UserEventService.ImportUserEvents method. Timestamp of when the user event happened.
.google.protobuf.Timestamp event_time = 3;
Name | Description |
builderForValue | Builder |
Type | Description |
UserEvent.Builder |
setEventType(String value)
public UserEvent.Builder setEventType(String value)
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];
Name | Description |
value | String The eventType to set. |
Type | Description |
UserEvent.Builder | This builder for chaining. |
setEventTypeBytes(ByteString value)
public UserEvent.Builder setEventTypeBytes(ByteString value)
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];
Name | Description |
value | ByteString The bytes for eventType to set. |
Type | Description |
UserEvent.Builder | This builder for chaining. |
setExperimentIds(int index, String value)
public UserEvent.Builder setExperimentIds(int index, String value)
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;
Name | Description |
index | int The index to set the value at. |
value | String The experimentIds to set. |
Type | Description |
UserEvent.Builder | This builder for chaining. |
setField(Descriptors.FieldDescriptor field, Object value)
public UserEvent.Builder setField(Descriptors.FieldDescriptor field, Object value)
Name | Description |
field | FieldDescriptor |
value | Object |
Type | Description |
UserEvent.Builder |
setFilter(String value)
public UserEvent.Builder setFilter(String value)
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;
Name | Description |
value | String The filter to set. |
Type | Description |
UserEvent.Builder | This builder for chaining. |
setFilterBytes(ByteString value)
public UserEvent.Builder setFilterBytes(ByteString value)
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;
Name | Description |
value | ByteString The bytes for filter to set. |
Type | Description |
UserEvent.Builder | This builder for chaining. |
setOffset(int value)
public UserEvent.Builder setOffset(int value)
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;
Name | Description |
value | int The offset to set. |
Type | Description |
UserEvent.Builder | This builder for chaining. |
setOrderBy(String value)
public UserEvent.Builder setOrderBy(String value)
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;
Name | Description |
value | String The orderBy to set. |
Type | Description |
UserEvent.Builder | This builder for chaining. |
setOrderByBytes(ByteString value)
public UserEvent.Builder setOrderByBytes(ByteString value)
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;
Name | Description |
value | ByteString The bytes for orderBy to set. |
Type | Description |
UserEvent.Builder | This builder for chaining. |
setPageCategories(int index, String value)
public UserEvent.Builder setPageCategories(int index, String value)
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, please 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;
Name | Description |
index | int The index to set the value at. |
value | String The pageCategories to set. |
Type | Description |
UserEvent.Builder | This builder for chaining. |
setPageViewId(String value)
public UserEvent.Builder setPageViewId(String value)
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;
Name | Description |
value | String The pageViewId to set. |
Type | Description |
UserEvent.Builder | This builder for chaining. |
setPageViewIdBytes(ByteString value)
public UserEvent.Builder setPageViewIdBytes(ByteString value)
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;
Name | Description |
value | ByteString The bytes for pageViewId to set. |
Type | Description |
UserEvent.Builder | This builder for chaining. |
setProductDetails(int index, ProductDetail value)
public UserEvent.Builder setProductDetails(int index, ProductDetail value)
The main product details related to the event. This field is required for the following event types:
add-to-cart
detail-page-view
purchase-complete
search
In asearch
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 newsearch
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;
Name | Description |
index | int |
value | ProductDetail |
Type | Description |
UserEvent.Builder |
setProductDetails(int index, ProductDetail.Builder builderForValue)
public UserEvent.Builder setProductDetails(int index, ProductDetail.Builder builderForValue)
The main product details related to the event. This field is required for the following event types:
add-to-cart
detail-page-view
purchase-complete
search
In asearch
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 newsearch
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;
Name | Description |
index | int |
builderForValue | ProductDetail.Builder |
Type | Description |
UserEvent.Builder |
setPurchaseTransaction(PurchaseTransaction value)
public UserEvent.Builder setPurchaseTransaction(PurchaseTransaction value)
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;
Name | Description |
value | PurchaseTransaction |
Type | Description |
UserEvent.Builder |
setPurchaseTransaction(PurchaseTransaction.Builder builderForValue)
public UserEvent.Builder setPurchaseTransaction(PurchaseTransaction.Builder builderForValue)
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;
Name | Description |
builderForValue | PurchaseTransaction.Builder |
Type | Description |
UserEvent.Builder |
setReferrerUri(String value)
public UserEvent.Builder setReferrerUri(String value)
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;
Name | Description |
value | String The referrerUri to set. |
Type | Description |
UserEvent.Builder | This builder for chaining. |
setReferrerUriBytes(ByteString value)
public UserEvent.Builder setReferrerUriBytes(ByteString value)
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;
Name | Description |
value | ByteString The bytes for referrerUri to set. |
Type | Description |
UserEvent.Builder | This builder for chaining. |
setRepeatedField(Descriptors.FieldDescriptor field, int index, Object value)
public UserEvent.Builder setRepeatedField(Descriptors.FieldDescriptor field, int index, Object value)
Name | Description |
field | FieldDescriptor |
index | int |
value | Object |
Type | Description |
UserEvent.Builder |
setSearchQuery(String value)
public UserEvent.Builder setSearchQuery(String value)
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;
Name | Description |
value | String The searchQuery to set. |
Type | Description |
UserEvent.Builder | This builder for chaining. |
setSearchQueryBytes(ByteString value)
public UserEvent.Builder setSearchQueryBytes(ByteString value)
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;
Name | Description |
value | ByteString The bytes for searchQuery to set. |
Type | Description |
UserEvent.Builder | This builder for chaining. |
setSessionId(String value)
public UserEvent.Builder setSessionId(String value)
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:
- If user has no activity for 30 min, a new session_id should be assigned.
- The session_id should be unique across users, suggest use uuid or add visitor_id as prefix.
string session_id = 21;
Name | Description |
value | String The sessionId to set. |
Type | Description |
UserEvent.Builder | This builder for chaining. |
setSessionIdBytes(ByteString value)
public UserEvent.Builder setSessionIdBytes(ByteString value)
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:
- If user has no activity for 30 min, a new session_id should be assigned.
- The session_id should be unique across users, suggest use uuid or add visitor_id as prefix.
string session_id = 21;
Name | Description |
value | ByteString The bytes for sessionId to set. |
Type | Description |
UserEvent.Builder | This builder for chaining. |
setUnknownFields(UnknownFieldSet unknownFields)
public final UserEvent.Builder setUnknownFields(UnknownFieldSet unknownFields)
Name | Description |
unknownFields | UnknownFieldSet |
Type | Description |
UserEvent.Builder |
setUri(String value)
public UserEvent.Builder setUri(String value)
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;
Name | Description |
value | String The uri to set. |
Type | Description |
UserEvent.Builder | This builder for chaining. |
setUriBytes(ByteString value)
public UserEvent.Builder setUriBytes(ByteString value)
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;
Name | Description |
value | ByteString The bytes for uri to set. |
Type | Description |
UserEvent.Builder | This builder for chaining. |
setUserInfo(UserInfo value)
public UserEvent.Builder setUserInfo(UserInfo value)
User information.
.google.cloud.retail.v2.UserInfo user_info = 12;
Name | Description |
value | UserInfo |
Type | Description |
UserEvent.Builder |
setUserInfo(UserInfo.Builder builderForValue)
public UserEvent.Builder setUserInfo(UserInfo.Builder builderForValue)
User information.
.google.cloud.retail.v2.UserInfo user_info = 12;
Name | Description |
builderForValue | UserInfo.Builder |
Type | Description |
UserEvent.Builder |
setVisitorId(String value)
public UserEvent.Builder setVisitorId(String value)
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. 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 Analystics Client ID for this field.
string visitor_id = 2 [(.google.api.field_behavior) = REQUIRED];
Name | Description |
value | String The visitorId to set. |
Type | Description |
UserEvent.Builder | This builder for chaining. |
setVisitorIdBytes(ByteString value)
public UserEvent.Builder setVisitorIdBytes(ByteString value)
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. 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 Analystics Client ID for this field.
string visitor_id = 2 [(.google.api.field_behavior) = REQUIRED];
Name | Description |
value | ByteString The bytes for visitorId to set. |
Type | Description |
UserEvent.Builder | This builder for chaining. |