Class UserEvent.Builder

  • All Implemented Interfaces:
    UserEventOrBuilder, com.google.protobuf.Message.Builder, com.google.protobuf.MessageLite.Builder, com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder, Cloneable
    Enclosing class:
    UserEvent

    public static final class UserEvent.Builder
    extends com.google.protobuf.GeneratedMessageV3.Builder<UserEvent.Builder>
    implements UserEventOrBuilder
     UserEvent captures all metadata information Discovery Engine API needs to
     know about how end users interact with customers' website.
     
    Protobuf type google.cloud.discoveryengine.v1.UserEvent
    • Method Detail

      • getDescriptor

        public static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
      • internalGetMapField

        protected com.google.protobuf.MapField internalGetMapField​(int number)
        Overrides:
        internalGetMapField in class com.google.protobuf.GeneratedMessageV3.Builder<UserEvent.Builder>
      • internalGetMutableMapField

        protected com.google.protobuf.MapField internalGetMutableMapField​(int number)
        Overrides:
        internalGetMutableMapField in class com.google.protobuf.GeneratedMessageV3.Builder<UserEvent.Builder>
      • internalGetFieldAccessorTable

        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
        Specified by:
        internalGetFieldAccessorTable in class com.google.protobuf.GeneratedMessageV3.Builder<UserEvent.Builder>
      • clear

        public UserEvent.Builder clear()
        Specified by:
        clear in interface com.google.protobuf.Message.Builder
        Specified by:
        clear in interface com.google.protobuf.MessageLite.Builder
        Overrides:
        clear in class com.google.protobuf.GeneratedMessageV3.Builder<UserEvent.Builder>
      • getDescriptorForType

        public com.google.protobuf.Descriptors.Descriptor getDescriptorForType()
        Specified by:
        getDescriptorForType in interface com.google.protobuf.Message.Builder
        Specified by:
        getDescriptorForType in interface com.google.protobuf.MessageOrBuilder
        Overrides:
        getDescriptorForType in class com.google.protobuf.GeneratedMessageV3.Builder<UserEvent.Builder>
      • getDefaultInstanceForType

        public UserEvent getDefaultInstanceForType()
        Specified by:
        getDefaultInstanceForType in interface com.google.protobuf.MessageLiteOrBuilder
        Specified by:
        getDefaultInstanceForType in interface com.google.protobuf.MessageOrBuilder
      • build

        public UserEvent build()
        Specified by:
        build in interface com.google.protobuf.Message.Builder
        Specified by:
        build in interface com.google.protobuf.MessageLite.Builder
      • buildPartial

        public UserEvent buildPartial()
        Specified by:
        buildPartial in interface com.google.protobuf.Message.Builder
        Specified by:
        buildPartial in interface com.google.protobuf.MessageLite.Builder
      • clone

        public UserEvent.Builder clone()
        Specified by:
        clone in interface com.google.protobuf.Message.Builder
        Specified by:
        clone in interface com.google.protobuf.MessageLite.Builder
        Overrides:
        clone in class com.google.protobuf.GeneratedMessageV3.Builder<UserEvent.Builder>
      • setField

        public UserEvent.Builder setField​(com.google.protobuf.Descriptors.FieldDescriptor field,
                                          Object value)
        Specified by:
        setField in interface com.google.protobuf.Message.Builder
        Overrides:
        setField in class com.google.protobuf.GeneratedMessageV3.Builder<UserEvent.Builder>
      • clearField

        public UserEvent.Builder clearField​(com.google.protobuf.Descriptors.FieldDescriptor field)
        Specified by:
        clearField in interface com.google.protobuf.Message.Builder
        Overrides:
        clearField in class com.google.protobuf.GeneratedMessageV3.Builder<UserEvent.Builder>
      • clearOneof

        public UserEvent.Builder clearOneof​(com.google.protobuf.Descriptors.OneofDescriptor oneof)
        Specified by:
        clearOneof in interface com.google.protobuf.Message.Builder
        Overrides:
        clearOneof in class com.google.protobuf.GeneratedMessageV3.Builder<UserEvent.Builder>
      • setRepeatedField

        public UserEvent.Builder setRepeatedField​(com.google.protobuf.Descriptors.FieldDescriptor field,
                                                  int index,
                                                  Object value)
        Specified by:
        setRepeatedField in interface com.google.protobuf.Message.Builder
        Overrides:
        setRepeatedField in class com.google.protobuf.GeneratedMessageV3.Builder<UserEvent.Builder>
      • addRepeatedField

        public UserEvent.Builder addRepeatedField​(com.google.protobuf.Descriptors.FieldDescriptor field,
                                                  Object value)
        Specified by:
        addRepeatedField in interface com.google.protobuf.Message.Builder
        Overrides:
        addRepeatedField in class com.google.protobuf.GeneratedMessageV3.Builder<UserEvent.Builder>
      • mergeFrom

        public UserEvent.Builder mergeFrom​(com.google.protobuf.Message other)
        Specified by:
        mergeFrom in interface com.google.protobuf.Message.Builder
        Overrides:
        mergeFrom in class com.google.protobuf.AbstractMessage.Builder<UserEvent.Builder>
      • isInitialized

        public final boolean isInitialized()
        Specified by:
        isInitialized in interface com.google.protobuf.MessageLiteOrBuilder
        Overrides:
        isInitialized in class com.google.protobuf.GeneratedMessageV3.Builder<UserEvent.Builder>
      • mergeFrom

        public UserEvent.Builder mergeFrom​(com.google.protobuf.CodedInputStream input,
                                           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                    throws IOException
        Specified by:
        mergeFrom in interface com.google.protobuf.Message.Builder
        Specified by:
        mergeFrom in interface com.google.protobuf.MessageLite.Builder
        Overrides:
        mergeFrom in class com.google.protobuf.AbstractMessage.Builder<UserEvent.Builder>
        Throws:
        IOException
      • getEventType

        public String getEventType()
         Required. User event type. Allowed values are:
        
         Generic values:
        
         * `search`: Search for Documents.
         * `view-item`: Detailed page view of a Document.
         * `view-item-list`: View of a panel or ordered list of Documents.
         * `view-home-page`: View of the home page.
         * `view-category-page`: View of a category page, e.g. Home > Men > Jeans
        
         Retail-related values:
        
         * `add-to-cart`: Add an item(s) to cart, e.g. in Retail online shopping
         * `purchase`: Purchase an item(s)
        
         Media-related values:
        
         * `media-play`: Start/resume watching a video, playing a song, etc.
         * `media-complete`: Finished or stopped midway through a video, song, etc.
         
        string event_type = 1 [(.google.api.field_behavior) = REQUIRED];
        Specified by:
        getEventType in interface UserEventOrBuilder
        Returns:
        The eventType.
      • getEventTypeBytes

        public com.google.protobuf.ByteString getEventTypeBytes()
         Required. User event type. Allowed values are:
        
         Generic values:
        
         * `search`: Search for Documents.
         * `view-item`: Detailed page view of a Document.
         * `view-item-list`: View of a panel or ordered list of Documents.
         * `view-home-page`: View of the home page.
         * `view-category-page`: View of a category page, e.g. Home > Men > Jeans
        
         Retail-related values:
        
         * `add-to-cart`: Add an item(s) to cart, e.g. in Retail online shopping
         * `purchase`: Purchase an item(s)
        
         Media-related values:
        
         * `media-play`: Start/resume watching a video, playing a song, etc.
         * `media-complete`: Finished or stopped midway through a video, song, etc.
         
        string event_type = 1 [(.google.api.field_behavior) = REQUIRED];
        Specified by:
        getEventTypeBytes in interface UserEventOrBuilder
        Returns:
        The bytes for eventType.
      • setEventType

        public UserEvent.Builder setEventType​(String value)
         Required. User event type. Allowed values are:
        
         Generic values:
        
         * `search`: Search for Documents.
         * `view-item`: Detailed page view of a Document.
         * `view-item-list`: View of a panel or ordered list of Documents.
         * `view-home-page`: View of the home page.
         * `view-category-page`: View of a category page, e.g. Home > Men > Jeans
        
         Retail-related values:
        
         * `add-to-cart`: Add an item(s) to cart, e.g. in Retail online shopping
         * `purchase`: Purchase an item(s)
        
         Media-related values:
        
         * `media-play`: Start/resume watching a video, playing a song, etc.
         * `media-complete`: Finished or stopped midway through a video, song, etc.
         
        string event_type = 1 [(.google.api.field_behavior) = REQUIRED];
        Parameters:
        value - The eventType to set.
        Returns:
        This builder for chaining.
      • clearEventType

        public UserEvent.Builder clearEventType()
         Required. User event type. Allowed values are:
        
         Generic values:
        
         * `search`: Search for Documents.
         * `view-item`: Detailed page view of a Document.
         * `view-item-list`: View of a panel or ordered list of Documents.
         * `view-home-page`: View of the home page.
         * `view-category-page`: View of a category page, e.g. Home > Men > Jeans
        
         Retail-related values:
        
         * `add-to-cart`: Add an item(s) to cart, e.g. in Retail online shopping
         * `purchase`: Purchase an item(s)
        
         Media-related values:
        
         * `media-play`: Start/resume watching a video, playing a song, etc.
         * `media-complete`: Finished or stopped midway through a video, song, etc.
         
        string event_type = 1 [(.google.api.field_behavior) = REQUIRED];
        Returns:
        This builder for chaining.
      • setEventTypeBytes

        public UserEvent.Builder setEventTypeBytes​(com.google.protobuf.ByteString value)
         Required. User event type. Allowed values are:
        
         Generic values:
        
         * `search`: Search for Documents.
         * `view-item`: Detailed page view of a Document.
         * `view-item-list`: View of a panel or ordered list of Documents.
         * `view-home-page`: View of the home page.
         * `view-category-page`: View of a category page, e.g. Home > Men > Jeans
        
         Retail-related values:
        
         * `add-to-cart`: Add an item(s) to cart, e.g. in Retail online shopping
         * `purchase`: Purchase an item(s)
        
         Media-related values:
        
         * `media-play`: Start/resume watching a video, playing a song, etc.
         * `media-complete`: Finished or stopped midway through a video, song, etc.
         
        string event_type = 1 [(.google.api.field_behavior) = REQUIRED];
        Parameters:
        value - The bytes for eventType to set.
        Returns:
        This builder for chaining.
      • getUserPseudoId

        public String getUserPseudoId()
         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.
        
         Do not 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](https://developers.google.com/analytics/devguides/collection/analyticsjs/field-reference#clientId)
         for this field.
         
        string user_pseudo_id = 2 [(.google.api.field_behavior) = REQUIRED];
        Specified by:
        getUserPseudoId in interface UserEventOrBuilder
        Returns:
        The userPseudoId.
      • getUserPseudoIdBytes

        public com.google.protobuf.ByteString getUserPseudoIdBytes()
         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.
        
         Do not 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](https://developers.google.com/analytics/devguides/collection/analyticsjs/field-reference#clientId)
         for this field.
         
        string user_pseudo_id = 2 [(.google.api.field_behavior) = REQUIRED];
        Specified by:
        getUserPseudoIdBytes in interface UserEventOrBuilder
        Returns:
        The bytes for userPseudoId.
      • setUserPseudoId

        public UserEvent.Builder setUserPseudoId​(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.
        
         Do not 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](https://developers.google.com/analytics/devguides/collection/analyticsjs/field-reference#clientId)
         for this field.
         
        string user_pseudo_id = 2 [(.google.api.field_behavior) = REQUIRED];
        Parameters:
        value - The userPseudoId to set.
        Returns:
        This builder for chaining.
      • clearUserPseudoId

        public UserEvent.Builder clearUserPseudoId()
         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.
        
         Do not 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](https://developers.google.com/analytics/devguides/collection/analyticsjs/field-reference#clientId)
         for this field.
         
        string user_pseudo_id = 2 [(.google.api.field_behavior) = REQUIRED];
        Returns:
        This builder for chaining.
      • setUserPseudoIdBytes

        public UserEvent.Builder setUserPseudoIdBytes​(com.google.protobuf.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.
        
         Do not 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](https://developers.google.com/analytics/devguides/collection/analyticsjs/field-reference#clientId)
         for this field.
         
        string user_pseudo_id = 2 [(.google.api.field_behavior) = REQUIRED];
        Parameters:
        value - The bytes for userPseudoId to set.
        Returns:
        This builder for chaining.
      • hasEventTime

        public boolean hasEventTime()
         Only required for
         [UserEventService.ImportUserEvents][google.cloud.discoveryengine.v1.UserEventService.ImportUserEvents]
         method. Timestamp of when the user event happened.
         
        .google.protobuf.Timestamp event_time = 3;
        Specified by:
        hasEventTime in interface UserEventOrBuilder
        Returns:
        Whether the eventTime field is set.
      • getEventTime

        public com.google.protobuf.Timestamp getEventTime()
         Only required for
         [UserEventService.ImportUserEvents][google.cloud.discoveryengine.v1.UserEventService.ImportUserEvents]
         method. Timestamp of when the user event happened.
         
        .google.protobuf.Timestamp event_time = 3;
        Specified by:
        getEventTime in interface UserEventOrBuilder
        Returns:
        The eventTime.
      • setEventTime

        public UserEvent.Builder setEventTime​(com.google.protobuf.Timestamp value)
         Only required for
         [UserEventService.ImportUserEvents][google.cloud.discoveryengine.v1.UserEventService.ImportUserEvents]
         method. Timestamp of when the user event happened.
         
        .google.protobuf.Timestamp event_time = 3;
      • setEventTime

        public UserEvent.Builder setEventTime​(com.google.protobuf.Timestamp.Builder builderForValue)
         Only required for
         [UserEventService.ImportUserEvents][google.cloud.discoveryengine.v1.UserEventService.ImportUserEvents]
         method. Timestamp of when the user event happened.
         
        .google.protobuf.Timestamp event_time = 3;
      • mergeEventTime

        public UserEvent.Builder mergeEventTime​(com.google.protobuf.Timestamp value)
         Only required for
         [UserEventService.ImportUserEvents][google.cloud.discoveryengine.v1.UserEventService.ImportUserEvents]
         method. Timestamp of when the user event happened.
         
        .google.protobuf.Timestamp event_time = 3;
      • clearEventTime

        public UserEvent.Builder clearEventTime()
         Only required for
         [UserEventService.ImportUserEvents][google.cloud.discoveryengine.v1.UserEventService.ImportUserEvents]
         method. Timestamp of when the user event happened.
         
        .google.protobuf.Timestamp event_time = 3;
      • getEventTimeBuilder

        public com.google.protobuf.Timestamp.Builder getEventTimeBuilder()
         Only required for
         [UserEventService.ImportUserEvents][google.cloud.discoveryengine.v1.UserEventService.ImportUserEvents]
         method. Timestamp of when the user event happened.
         
        .google.protobuf.Timestamp event_time = 3;
      • getEventTimeOrBuilder

        public com.google.protobuf.TimestampOrBuilder getEventTimeOrBuilder()
         Only required for
         [UserEventService.ImportUserEvents][google.cloud.discoveryengine.v1.UserEventService.ImportUserEvents]
         method. Timestamp of when the user event happened.
         
        .google.protobuf.Timestamp event_time = 3;
        Specified by:
        getEventTimeOrBuilder in interface UserEventOrBuilder
      • hasUserInfo

        public boolean hasUserInfo()
         Information about the end user.
         
        .google.cloud.discoveryengine.v1.UserInfo user_info = 4;
        Specified by:
        hasUserInfo in interface UserEventOrBuilder
        Returns:
        Whether the userInfo field is set.
      • getUserInfo

        public UserInfo getUserInfo()
         Information about the end user.
         
        .google.cloud.discoveryengine.v1.UserInfo user_info = 4;
        Specified by:
        getUserInfo in interface UserEventOrBuilder
        Returns:
        The userInfo.
      • setUserInfo

        public UserEvent.Builder setUserInfo​(UserInfo value)
         Information about the end user.
         
        .google.cloud.discoveryengine.v1.UserInfo user_info = 4;
      • setUserInfo

        public UserEvent.Builder setUserInfo​(UserInfo.Builder builderForValue)
         Information about the end user.
         
        .google.cloud.discoveryengine.v1.UserInfo user_info = 4;
      • mergeUserInfo

        public UserEvent.Builder mergeUserInfo​(UserInfo value)
         Information about the end user.
         
        .google.cloud.discoveryengine.v1.UserInfo user_info = 4;
      • clearUserInfo

        public UserEvent.Builder clearUserInfo()
         Information about the end user.
         
        .google.cloud.discoveryengine.v1.UserInfo user_info = 4;
      • getUserInfoBuilder

        public UserInfo.Builder getUserInfoBuilder()
         Information about the end user.
         
        .google.cloud.discoveryengine.v1.UserInfo user_info = 4;
      • getDirectUserRequest

        public boolean getDirectUserRequest()
         Should set to true if the request is made directly from the end user, in
         which case the
         [UserEvent.user_info.user_agent][google.cloud.discoveryengine.v1.UserInfo.user_agent]
         can be populated from the HTTP request.
        
         This flag should be set only if the API request is made directly from the
         end user such as a mobile app (and not if a gateway or a server is
         processing and pushing the user events).
        
         This should not be set when using the JavaScript tag in
         [UserEventService.CollectUserEvent][google.cloud.discoveryengine.v1.UserEventService.CollectUserEvent].
         
        bool direct_user_request = 5;
        Specified by:
        getDirectUserRequest in interface UserEventOrBuilder
        Returns:
        The directUserRequest.
      • setDirectUserRequest

        public UserEvent.Builder setDirectUserRequest​(boolean value)
         Should set to true if the request is made directly from the end user, in
         which case the
         [UserEvent.user_info.user_agent][google.cloud.discoveryengine.v1.UserInfo.user_agent]
         can be populated from the HTTP request.
        
         This flag should be set only if the API request is made directly from the
         end user such as a mobile app (and not if a gateway or a server is
         processing and pushing the user events).
        
         This should not be set when using the JavaScript tag in
         [UserEventService.CollectUserEvent][google.cloud.discoveryengine.v1.UserEventService.CollectUserEvent].
         
        bool direct_user_request = 5;
        Parameters:
        value - The directUserRequest to set.
        Returns:
        This builder for chaining.
      • clearDirectUserRequest

        public UserEvent.Builder clearDirectUserRequest()
         Should set to true if the request is made directly from the end user, in
         which case the
         [UserEvent.user_info.user_agent][google.cloud.discoveryengine.v1.UserInfo.user_agent]
         can be populated from the HTTP request.
        
         This flag should be set only if the API request is made directly from the
         end user such as a mobile app (and not if a gateway or a server is
         processing and pushing the user events).
        
         This should not be set when using the JavaScript tag in
         [UserEventService.CollectUserEvent][google.cloud.discoveryengine.v1.UserEventService.CollectUserEvent].
         
        bool direct_user_request = 5;
        Returns:
        This builder for chaining.
      • 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 session_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
         [UserEvent.user_pseudo_id][google.cloud.discoveryengine.v1.UserEvent.user_pseudo_id]
         as prefix.
         
        string session_id = 6;
        Specified by:
        getSessionId in interface UserEventOrBuilder
        Returns:
        The sessionId.
      • getSessionIdBytes

        public com.google.protobuf.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 session_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
         [UserEvent.user_pseudo_id][google.cloud.discoveryengine.v1.UserEvent.user_pseudo_id]
         as prefix.
         
        string session_id = 6;
        Specified by:
        getSessionIdBytes in interface UserEventOrBuilder
        Returns:
        The bytes for sessionId.
      • setSessionId

        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 session_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
         [UserEvent.user_pseudo_id][google.cloud.discoveryengine.v1.UserEvent.user_pseudo_id]
         as prefix.
         
        string session_id = 6;
        Parameters:
        value - The sessionId to set.
        Returns:
        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 session_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
         [UserEvent.user_pseudo_id][google.cloud.discoveryengine.v1.UserEvent.user_pseudo_id]
         as prefix.
         
        string session_id = 6;
        Returns:
        This builder for chaining.
      • setSessionIdBytes

        public UserEvent.Builder setSessionIdBytes​(com.google.protobuf.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 session_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
         [UserEvent.user_pseudo_id][google.cloud.discoveryengine.v1.UserEvent.user_pseudo_id]
         as prefix.
         
        string session_id = 6;
        Parameters:
        value - The bytes for sessionId to set.
        Returns:
        This builder for chaining.
      • hasPageInfo

        public boolean hasPageInfo()
         Page metadata such as categories and other critical information for certain
         event types such as `view-category-page`.
         
        .google.cloud.discoveryengine.v1.PageInfo page_info = 7;
        Specified by:
        hasPageInfo in interface UserEventOrBuilder
        Returns:
        Whether the pageInfo field is set.
      • getPageInfo

        public PageInfo getPageInfo()
         Page metadata such as categories and other critical information for certain
         event types such as `view-category-page`.
         
        .google.cloud.discoveryengine.v1.PageInfo page_info = 7;
        Specified by:
        getPageInfo in interface UserEventOrBuilder
        Returns:
        The pageInfo.
      • setPageInfo

        public UserEvent.Builder setPageInfo​(PageInfo value)
         Page metadata such as categories and other critical information for certain
         event types such as `view-category-page`.
         
        .google.cloud.discoveryengine.v1.PageInfo page_info = 7;
      • setPageInfo

        public UserEvent.Builder setPageInfo​(PageInfo.Builder builderForValue)
         Page metadata such as categories and other critical information for certain
         event types such as `view-category-page`.
         
        .google.cloud.discoveryengine.v1.PageInfo page_info = 7;
      • mergePageInfo

        public UserEvent.Builder mergePageInfo​(PageInfo value)
         Page metadata such as categories and other critical information for certain
         event types such as `view-category-page`.
         
        .google.cloud.discoveryengine.v1.PageInfo page_info = 7;
      • clearPageInfo

        public UserEvent.Builder clearPageInfo()
         Page metadata such as categories and other critical information for certain
         event types such as `view-category-page`.
         
        .google.cloud.discoveryengine.v1.PageInfo page_info = 7;
      • getPageInfoBuilder

        public PageInfo.Builder getPageInfoBuilder()
         Page metadata such as categories and other critical information for certain
         event types such as `view-category-page`.
         
        .google.cloud.discoveryengine.v1.PageInfo page_info = 7;
      • getPageInfoOrBuilder

        public PageInfoOrBuilder getPageInfoOrBuilder()
         Page metadata such as categories and other critical information for certain
         event types such as `view-category-page`.
         
        .google.cloud.discoveryengine.v1.PageInfo page_info = 7;
        Specified by:
        getPageInfoOrBuilder in interface UserEventOrBuilder
      • getAttributionToken

        public String getAttributionToken()
         Token to attribute an API response to user action(s) to trigger the event.
        
         Highly recommended for user events that are the result of
         [RecommendationService.Recommend][]. This field enables accurate
         attribution of recommendation model performance.
        
         The value must be one of:
        
         * [RecommendResponse.attribution_token][] for events that are the result of
         [RecommendationService.Recommend][].
         * [SearchResponse.attribution_token][google.cloud.discoveryengine.v1.SearchResponse.attribution_token] for events that are the result of
         [SearchService.Search][google.cloud.discoveryengine.v1.SearchService.Search].
        
         This token enables us to accurately attribute page view or conversion
         completion 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 [RecommendResponse.attribution_token][] as a
         URL parameter to product K's page. When recording events on product K's
         page, log the [RecommendResponse.attribution_token][] to this field.
         
        string attribution_token = 8;
        Specified by:
        getAttributionToken in interface UserEventOrBuilder
        Returns:
        The attributionToken.
      • getAttributionTokenBytes

        public com.google.protobuf.ByteString getAttributionTokenBytes()
         Token to attribute an API response to user action(s) to trigger the event.
        
         Highly recommended for user events that are the result of
         [RecommendationService.Recommend][]. This field enables accurate
         attribution of recommendation model performance.
        
         The value must be one of:
        
         * [RecommendResponse.attribution_token][] for events that are the result of
         [RecommendationService.Recommend][].
         * [SearchResponse.attribution_token][google.cloud.discoveryengine.v1.SearchResponse.attribution_token] for events that are the result of
         [SearchService.Search][google.cloud.discoveryengine.v1.SearchService.Search].
        
         This token enables us to accurately attribute page view or conversion
         completion 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 [RecommendResponse.attribution_token][] as a
         URL parameter to product K's page. When recording events on product K's
         page, log the [RecommendResponse.attribution_token][] to this field.
         
        string attribution_token = 8;
        Specified by:
        getAttributionTokenBytes in interface UserEventOrBuilder
        Returns:
        The bytes for attributionToken.
      • setAttributionToken

        public UserEvent.Builder setAttributionToken​(String value)
         Token to attribute an API response to user action(s) to trigger the event.
        
         Highly recommended for user events that are the result of
         [RecommendationService.Recommend][]. This field enables accurate
         attribution of recommendation model performance.
        
         The value must be one of:
        
         * [RecommendResponse.attribution_token][] for events that are the result of
         [RecommendationService.Recommend][].
         * [SearchResponse.attribution_token][google.cloud.discoveryengine.v1.SearchResponse.attribution_token] for events that are the result of
         [SearchService.Search][google.cloud.discoveryengine.v1.SearchService.Search].
        
         This token enables us to accurately attribute page view or conversion
         completion 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 [RecommendResponse.attribution_token][] as a
         URL parameter to product K's page. When recording events on product K's
         page, log the [RecommendResponse.attribution_token][] to this field.
         
        string attribution_token = 8;
        Parameters:
        value - The attributionToken to set.
        Returns:
        This builder for chaining.
      • clearAttributionToken

        public UserEvent.Builder clearAttributionToken()
         Token to attribute an API response to user action(s) to trigger the event.
        
         Highly recommended for user events that are the result of
         [RecommendationService.Recommend][]. This field enables accurate
         attribution of recommendation model performance.
        
         The value must be one of:
        
         * [RecommendResponse.attribution_token][] for events that are the result of
         [RecommendationService.Recommend][].
         * [SearchResponse.attribution_token][google.cloud.discoveryengine.v1.SearchResponse.attribution_token] for events that are the result of
         [SearchService.Search][google.cloud.discoveryengine.v1.SearchService.Search].
        
         This token enables us to accurately attribute page view or conversion
         completion 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 [RecommendResponse.attribution_token][] as a
         URL parameter to product K's page. When recording events on product K's
         page, log the [RecommendResponse.attribution_token][] to this field.
         
        string attribution_token = 8;
        Returns:
        This builder for chaining.
      • setAttributionTokenBytes

        public UserEvent.Builder setAttributionTokenBytes​(com.google.protobuf.ByteString value)
         Token to attribute an API response to user action(s) to trigger the event.
        
         Highly recommended for user events that are the result of
         [RecommendationService.Recommend][]. This field enables accurate
         attribution of recommendation model performance.
        
         The value must be one of:
        
         * [RecommendResponse.attribution_token][] for events that are the result of
         [RecommendationService.Recommend][].
         * [SearchResponse.attribution_token][google.cloud.discoveryengine.v1.SearchResponse.attribution_token] for events that are the result of
         [SearchService.Search][google.cloud.discoveryengine.v1.SearchService.Search].
        
         This token enables us to accurately attribute page view or conversion
         completion 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 [RecommendResponse.attribution_token][] as a
         URL parameter to product K's page. When recording events on product K's
         page, log the [RecommendResponse.attribution_token][] to this field.
         
        string attribution_token = 8;
        Parameters:
        value - The bytes for attributionToken to set.
        Returns:
        This builder for chaining.
      • getFilter

        public String getFilter()
         The filter syntax consists of an expression language for constructing a
         predicate from one or more fields of the documents being filtered.
        
         One example is for `search` events, the associated
         [SearchRequest][google.cloud.discoveryengine.v1.SearchRequest] may contain
         a filter expression in
         [SearchRequest.filter][google.cloud.discoveryengine.v1.SearchRequest.filter]
         conforming to https://google.aip.dev/160#filtering.
        
         Similarly, for `view-item-list` events that are generated from a
         [RecommendationService.RecommendRequest][], this field may be populated
         directly from [RecommendationService.RecommendRequest.filter][] conforming
         to https://google.aip.dev/160#filtering.
        
         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 = 9;
        Specified by:
        getFilter in interface UserEventOrBuilder
        Returns:
        The filter.
      • getFilterBytes

        public com.google.protobuf.ByteString getFilterBytes()
         The filter syntax consists of an expression language for constructing a
         predicate from one or more fields of the documents being filtered.
        
         One example is for `search` events, the associated
         [SearchRequest][google.cloud.discoveryengine.v1.SearchRequest] may contain
         a filter expression in
         [SearchRequest.filter][google.cloud.discoveryengine.v1.SearchRequest.filter]
         conforming to https://google.aip.dev/160#filtering.
        
         Similarly, for `view-item-list` events that are generated from a
         [RecommendationService.RecommendRequest][], this field may be populated
         directly from [RecommendationService.RecommendRequest.filter][] conforming
         to https://google.aip.dev/160#filtering.
        
         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 = 9;
        Specified by:
        getFilterBytes in interface UserEventOrBuilder
        Returns:
        The bytes for filter.
      • setFilter

        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 documents being filtered.
        
         One example is for `search` events, the associated
         [SearchRequest][google.cloud.discoveryengine.v1.SearchRequest] may contain
         a filter expression in
         [SearchRequest.filter][google.cloud.discoveryengine.v1.SearchRequest.filter]
         conforming to https://google.aip.dev/160#filtering.
        
         Similarly, for `view-item-list` events that are generated from a
         [RecommendationService.RecommendRequest][], this field may be populated
         directly from [RecommendationService.RecommendRequest.filter][] conforming
         to https://google.aip.dev/160#filtering.
        
         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 = 9;
        Parameters:
        value - The filter to set.
        Returns:
        This builder for chaining.
      • clearFilter

        public UserEvent.Builder clearFilter()
         The filter syntax consists of an expression language for constructing a
         predicate from one or more fields of the documents being filtered.
        
         One example is for `search` events, the associated
         [SearchRequest][google.cloud.discoveryengine.v1.SearchRequest] may contain
         a filter expression in
         [SearchRequest.filter][google.cloud.discoveryengine.v1.SearchRequest.filter]
         conforming to https://google.aip.dev/160#filtering.
        
         Similarly, for `view-item-list` events that are generated from a
         [RecommendationService.RecommendRequest][], this field may be populated
         directly from [RecommendationService.RecommendRequest.filter][] conforming
         to https://google.aip.dev/160#filtering.
        
         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 = 9;
        Returns:
        This builder for chaining.
      • setFilterBytes

        public UserEvent.Builder setFilterBytes​(com.google.protobuf.ByteString value)
         The filter syntax consists of an expression language for constructing a
         predicate from one or more fields of the documents being filtered.
        
         One example is for `search` events, the associated
         [SearchRequest][google.cloud.discoveryengine.v1.SearchRequest] may contain
         a filter expression in
         [SearchRequest.filter][google.cloud.discoveryengine.v1.SearchRequest.filter]
         conforming to https://google.aip.dev/160#filtering.
        
         Similarly, for `view-item-list` events that are generated from a
         [RecommendationService.RecommendRequest][], this field may be populated
         directly from [RecommendationService.RecommendRequest.filter][] conforming
         to https://google.aip.dev/160#filtering.
        
         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 = 9;
        Parameters:
        value - The bytes for filter to set.
        Returns:
        This builder for chaining.
      • getDocumentsList

        public List<DocumentInfo> getDocumentsList()
         List of [Document][google.cloud.discoveryengine.v1.Document]s associated
         with this user event.
        
         This field is optional except for the following event types:
        
         * `view-item`
         * `add-to-cart`
         * `purchase`
         * `media-play`
         * `media-complete`
        
         In a `search` event, this field represents the documents 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
         [UserEvent.documents][google.cloud.discoveryengine.v1.UserEvent.documents]
         is desired.
         
        repeated .google.cloud.discoveryengine.v1.DocumentInfo documents = 10;
        Specified by:
        getDocumentsList in interface UserEventOrBuilder
      • getDocumentsCount

        public int getDocumentsCount()
         List of [Document][google.cloud.discoveryengine.v1.Document]s associated
         with this user event.
        
         This field is optional except for the following event types:
        
         * `view-item`
         * `add-to-cart`
         * `purchase`
         * `media-play`
         * `media-complete`
        
         In a `search` event, this field represents the documents 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
         [UserEvent.documents][google.cloud.discoveryengine.v1.UserEvent.documents]
         is desired.
         
        repeated .google.cloud.discoveryengine.v1.DocumentInfo documents = 10;
        Specified by:
        getDocumentsCount in interface UserEventOrBuilder
      • getDocuments

        public DocumentInfo getDocuments​(int index)
         List of [Document][google.cloud.discoveryengine.v1.Document]s associated
         with this user event.
        
         This field is optional except for the following event types:
        
         * `view-item`
         * `add-to-cart`
         * `purchase`
         * `media-play`
         * `media-complete`
        
         In a `search` event, this field represents the documents 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
         [UserEvent.documents][google.cloud.discoveryengine.v1.UserEvent.documents]
         is desired.
         
        repeated .google.cloud.discoveryengine.v1.DocumentInfo documents = 10;
        Specified by:
        getDocuments in interface UserEventOrBuilder
      • setDocuments

        public UserEvent.Builder setDocuments​(int index,
                                              DocumentInfo value)
         List of [Document][google.cloud.discoveryengine.v1.Document]s associated
         with this user event.
        
         This field is optional except for the following event types:
        
         * `view-item`
         * `add-to-cart`
         * `purchase`
         * `media-play`
         * `media-complete`
        
         In a `search` event, this field represents the documents 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
         [UserEvent.documents][google.cloud.discoveryengine.v1.UserEvent.documents]
         is desired.
         
        repeated .google.cloud.discoveryengine.v1.DocumentInfo documents = 10;
      • setDocuments

        public UserEvent.Builder setDocuments​(int index,
                                              DocumentInfo.Builder builderForValue)
         List of [Document][google.cloud.discoveryengine.v1.Document]s associated
         with this user event.
        
         This field is optional except for the following event types:
        
         * `view-item`
         * `add-to-cart`
         * `purchase`
         * `media-play`
         * `media-complete`
        
         In a `search` event, this field represents the documents 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
         [UserEvent.documents][google.cloud.discoveryengine.v1.UserEvent.documents]
         is desired.
         
        repeated .google.cloud.discoveryengine.v1.DocumentInfo documents = 10;
      • addDocuments

        public UserEvent.Builder addDocuments​(DocumentInfo value)
         List of [Document][google.cloud.discoveryengine.v1.Document]s associated
         with this user event.
        
         This field is optional except for the following event types:
        
         * `view-item`
         * `add-to-cart`
         * `purchase`
         * `media-play`
         * `media-complete`
        
         In a `search` event, this field represents the documents 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
         [UserEvent.documents][google.cloud.discoveryengine.v1.UserEvent.documents]
         is desired.
         
        repeated .google.cloud.discoveryengine.v1.DocumentInfo documents = 10;
      • addDocuments

        public UserEvent.Builder addDocuments​(int index,
                                              DocumentInfo value)
         List of [Document][google.cloud.discoveryengine.v1.Document]s associated
         with this user event.
        
         This field is optional except for the following event types:
        
         * `view-item`
         * `add-to-cart`
         * `purchase`
         * `media-play`
         * `media-complete`
        
         In a `search` event, this field represents the documents 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
         [UserEvent.documents][google.cloud.discoveryengine.v1.UserEvent.documents]
         is desired.
         
        repeated .google.cloud.discoveryengine.v1.DocumentInfo documents = 10;
      • addDocuments

        public UserEvent.Builder addDocuments​(DocumentInfo.Builder builderForValue)
         List of [Document][google.cloud.discoveryengine.v1.Document]s associated
         with this user event.
        
         This field is optional except for the following event types:
        
         * `view-item`
         * `add-to-cart`
         * `purchase`
         * `media-play`
         * `media-complete`
        
         In a `search` event, this field represents the documents 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
         [UserEvent.documents][google.cloud.discoveryengine.v1.UserEvent.documents]
         is desired.
         
        repeated .google.cloud.discoveryengine.v1.DocumentInfo documents = 10;
      • addDocuments

        public UserEvent.Builder addDocuments​(int index,
                                              DocumentInfo.Builder builderForValue)
         List of [Document][google.cloud.discoveryengine.v1.Document]s associated
         with this user event.
        
         This field is optional except for the following event types:
        
         * `view-item`
         * `add-to-cart`
         * `purchase`
         * `media-play`
         * `media-complete`
        
         In a `search` event, this field represents the documents 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
         [UserEvent.documents][google.cloud.discoveryengine.v1.UserEvent.documents]
         is desired.
         
        repeated .google.cloud.discoveryengine.v1.DocumentInfo documents = 10;
      • addAllDocuments

        public UserEvent.Builder addAllDocuments​(Iterable<? extends DocumentInfo> values)
         List of [Document][google.cloud.discoveryengine.v1.Document]s associated
         with this user event.
        
         This field is optional except for the following event types:
        
         * `view-item`
         * `add-to-cart`
         * `purchase`
         * `media-play`
         * `media-complete`
        
         In a `search` event, this field represents the documents 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
         [UserEvent.documents][google.cloud.discoveryengine.v1.UserEvent.documents]
         is desired.
         
        repeated .google.cloud.discoveryengine.v1.DocumentInfo documents = 10;
      • clearDocuments

        public UserEvent.Builder clearDocuments()
         List of [Document][google.cloud.discoveryengine.v1.Document]s associated
         with this user event.
        
         This field is optional except for the following event types:
        
         * `view-item`
         * `add-to-cart`
         * `purchase`
         * `media-play`
         * `media-complete`
        
         In a `search` event, this field represents the documents 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
         [UserEvent.documents][google.cloud.discoveryengine.v1.UserEvent.documents]
         is desired.
         
        repeated .google.cloud.discoveryengine.v1.DocumentInfo documents = 10;
      • removeDocuments

        public UserEvent.Builder removeDocuments​(int index)
         List of [Document][google.cloud.discoveryengine.v1.Document]s associated
         with this user event.
        
         This field is optional except for the following event types:
        
         * `view-item`
         * `add-to-cart`
         * `purchase`
         * `media-play`
         * `media-complete`
        
         In a `search` event, this field represents the documents 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
         [UserEvent.documents][google.cloud.discoveryengine.v1.UserEvent.documents]
         is desired.
         
        repeated .google.cloud.discoveryengine.v1.DocumentInfo documents = 10;
      • getDocumentsBuilder

        public DocumentInfo.Builder getDocumentsBuilder​(int index)
         List of [Document][google.cloud.discoveryengine.v1.Document]s associated
         with this user event.
        
         This field is optional except for the following event types:
        
         * `view-item`
         * `add-to-cart`
         * `purchase`
         * `media-play`
         * `media-complete`
        
         In a `search` event, this field represents the documents 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
         [UserEvent.documents][google.cloud.discoveryengine.v1.UserEvent.documents]
         is desired.
         
        repeated .google.cloud.discoveryengine.v1.DocumentInfo documents = 10;
      • getDocumentsOrBuilder

        public DocumentInfoOrBuilder getDocumentsOrBuilder​(int index)
         List of [Document][google.cloud.discoveryengine.v1.Document]s associated
         with this user event.
        
         This field is optional except for the following event types:
        
         * `view-item`
         * `add-to-cart`
         * `purchase`
         * `media-play`
         * `media-complete`
        
         In a `search` event, this field represents the documents 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
         [UserEvent.documents][google.cloud.discoveryengine.v1.UserEvent.documents]
         is desired.
         
        repeated .google.cloud.discoveryengine.v1.DocumentInfo documents = 10;
        Specified by:
        getDocumentsOrBuilder in interface UserEventOrBuilder
      • getDocumentsOrBuilderList

        public List<? extends DocumentInfoOrBuilder> getDocumentsOrBuilderList()
         List of [Document][google.cloud.discoveryengine.v1.Document]s associated
         with this user event.
        
         This field is optional except for the following event types:
        
         * `view-item`
         * `add-to-cart`
         * `purchase`
         * `media-play`
         * `media-complete`
        
         In a `search` event, this field represents the documents 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
         [UserEvent.documents][google.cloud.discoveryengine.v1.UserEvent.documents]
         is desired.
         
        repeated .google.cloud.discoveryengine.v1.DocumentInfo documents = 10;
        Specified by:
        getDocumentsOrBuilderList in interface UserEventOrBuilder
      • addDocumentsBuilder

        public DocumentInfo.Builder addDocumentsBuilder()
         List of [Document][google.cloud.discoveryengine.v1.Document]s associated
         with this user event.
        
         This field is optional except for the following event types:
        
         * `view-item`
         * `add-to-cart`
         * `purchase`
         * `media-play`
         * `media-complete`
        
         In a `search` event, this field represents the documents 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
         [UserEvent.documents][google.cloud.discoveryengine.v1.UserEvent.documents]
         is desired.
         
        repeated .google.cloud.discoveryengine.v1.DocumentInfo documents = 10;
      • addDocumentsBuilder

        public DocumentInfo.Builder addDocumentsBuilder​(int index)
         List of [Document][google.cloud.discoveryengine.v1.Document]s associated
         with this user event.
        
         This field is optional except for the following event types:
        
         * `view-item`
         * `add-to-cart`
         * `purchase`
         * `media-play`
         * `media-complete`
        
         In a `search` event, this field represents the documents 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
         [UserEvent.documents][google.cloud.discoveryengine.v1.UserEvent.documents]
         is desired.
         
        repeated .google.cloud.discoveryengine.v1.DocumentInfo documents = 10;
      • getDocumentsBuilderList

        public List<DocumentInfo.Builder> getDocumentsBuilderList()
         List of [Document][google.cloud.discoveryengine.v1.Document]s associated
         with this user event.
        
         This field is optional except for the following event types:
        
         * `view-item`
         * `add-to-cart`
         * `purchase`
         * `media-play`
         * `media-complete`
        
         In a `search` event, this field represents the documents 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
         [UserEvent.documents][google.cloud.discoveryengine.v1.UserEvent.documents]
         is desired.
         
        repeated .google.cloud.discoveryengine.v1.DocumentInfo documents = 10;
      • hasPanel

        public boolean hasPanel()
         Panel metadata associated with this user event.
         
        .google.cloud.discoveryengine.v1.PanelInfo panel = 11;
        Specified by:
        hasPanel in interface UserEventOrBuilder
        Returns:
        Whether the panel field is set.
      • getPanel

        public PanelInfo getPanel()
         Panel metadata associated with this user event.
         
        .google.cloud.discoveryengine.v1.PanelInfo panel = 11;
        Specified by:
        getPanel in interface UserEventOrBuilder
        Returns:
        The panel.
      • setPanel

        public UserEvent.Builder setPanel​(PanelInfo value)
         Panel metadata associated with this user event.
         
        .google.cloud.discoveryengine.v1.PanelInfo panel = 11;
      • setPanel

        public UserEvent.Builder setPanel​(PanelInfo.Builder builderForValue)
         Panel metadata associated with this user event.
         
        .google.cloud.discoveryengine.v1.PanelInfo panel = 11;
      • mergePanel

        public UserEvent.Builder mergePanel​(PanelInfo value)
         Panel metadata associated with this user event.
         
        .google.cloud.discoveryengine.v1.PanelInfo panel = 11;
      • clearPanel

        public UserEvent.Builder clearPanel()
         Panel metadata associated with this user event.
         
        .google.cloud.discoveryengine.v1.PanelInfo panel = 11;
      • getPanelBuilder

        public PanelInfo.Builder getPanelBuilder()
         Panel metadata associated with this user event.
         
        .google.cloud.discoveryengine.v1.PanelInfo panel = 11;
      • hasSearchInfo

        public boolean hasSearchInfo()
         [SearchService.Search][google.cloud.discoveryengine.v1.SearchService.Search]
         details related to the event.
        
         This field should be set for `search` event.
         
        .google.cloud.discoveryengine.v1.SearchInfo search_info = 12;
        Specified by:
        hasSearchInfo in interface UserEventOrBuilder
        Returns:
        Whether the searchInfo field is set.
      • getSearchInfo

        public SearchInfo getSearchInfo()
         [SearchService.Search][google.cloud.discoveryengine.v1.SearchService.Search]
         details related to the event.
        
         This field should be set for `search` event.
         
        .google.cloud.discoveryengine.v1.SearchInfo search_info = 12;
        Specified by:
        getSearchInfo in interface UserEventOrBuilder
        Returns:
        The searchInfo.
      • setSearchInfo

        public UserEvent.Builder setSearchInfo​(SearchInfo value)
         [SearchService.Search][google.cloud.discoveryengine.v1.SearchService.Search]
         details related to the event.
        
         This field should be set for `search` event.
         
        .google.cloud.discoveryengine.v1.SearchInfo search_info = 12;
      • setSearchInfo

        public UserEvent.Builder setSearchInfo​(SearchInfo.Builder builderForValue)
         [SearchService.Search][google.cloud.discoveryengine.v1.SearchService.Search]
         details related to the event.
        
         This field should be set for `search` event.
         
        .google.cloud.discoveryengine.v1.SearchInfo search_info = 12;
      • mergeSearchInfo

        public UserEvent.Builder mergeSearchInfo​(SearchInfo value)
         [SearchService.Search][google.cloud.discoveryengine.v1.SearchService.Search]
         details related to the event.
        
         This field should be set for `search` event.
         
        .google.cloud.discoveryengine.v1.SearchInfo search_info = 12;
      • clearSearchInfo

        public UserEvent.Builder clearSearchInfo()
         [SearchService.Search][google.cloud.discoveryengine.v1.SearchService.Search]
         details related to the event.
        
         This field should be set for `search` event.
         
        .google.cloud.discoveryengine.v1.SearchInfo search_info = 12;
      • getSearchInfoBuilder

        public SearchInfo.Builder getSearchInfoBuilder()
         [SearchService.Search][google.cloud.discoveryengine.v1.SearchService.Search]
         details related to the event.
        
         This field should be set for `search` event.
         
        .google.cloud.discoveryengine.v1.SearchInfo search_info = 12;
      • getSearchInfoOrBuilder

        public SearchInfoOrBuilder getSearchInfoOrBuilder()
         [SearchService.Search][google.cloud.discoveryengine.v1.SearchService.Search]
         details related to the event.
        
         This field should be set for `search` event.
         
        .google.cloud.discoveryengine.v1.SearchInfo search_info = 12;
        Specified by:
        getSearchInfoOrBuilder in interface UserEventOrBuilder
      • hasCompletionInfo

        public boolean hasCompletionInfo()
         [CompletionService.CompleteQuery][google.cloud.discoveryengine.v1.CompletionService.CompleteQuery]
         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.discoveryengine.v1.CompletionInfo completion_info = 13;
        Specified by:
        hasCompletionInfo in interface UserEventOrBuilder
        Returns:
        Whether the completionInfo field is set.
      • getCompletionInfo

        public CompletionInfo getCompletionInfo()
         [CompletionService.CompleteQuery][google.cloud.discoveryengine.v1.CompletionService.CompleteQuery]
         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.discoveryengine.v1.CompletionInfo completion_info = 13;
        Specified by:
        getCompletionInfo in interface UserEventOrBuilder
        Returns:
        The completionInfo.
      • setCompletionInfo

        public UserEvent.Builder setCompletionInfo​(CompletionInfo value)
         [CompletionService.CompleteQuery][google.cloud.discoveryengine.v1.CompletionService.CompleteQuery]
         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.discoveryengine.v1.CompletionInfo completion_info = 13;
      • setCompletionInfo

        public UserEvent.Builder setCompletionInfo​(CompletionInfo.Builder builderForValue)
         [CompletionService.CompleteQuery][google.cloud.discoveryengine.v1.CompletionService.CompleteQuery]
         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.discoveryengine.v1.CompletionInfo completion_info = 13;
      • mergeCompletionInfo

        public UserEvent.Builder mergeCompletionInfo​(CompletionInfo value)
         [CompletionService.CompleteQuery][google.cloud.discoveryengine.v1.CompletionService.CompleteQuery]
         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.discoveryengine.v1.CompletionInfo completion_info = 13;
      • clearCompletionInfo

        public UserEvent.Builder clearCompletionInfo()
         [CompletionService.CompleteQuery][google.cloud.discoveryengine.v1.CompletionService.CompleteQuery]
         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.discoveryengine.v1.CompletionInfo completion_info = 13;
      • getCompletionInfoBuilder

        public CompletionInfo.Builder getCompletionInfoBuilder()
         [CompletionService.CompleteQuery][google.cloud.discoveryengine.v1.CompletionService.CompleteQuery]
         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.discoveryengine.v1.CompletionInfo completion_info = 13;
      • getCompletionInfoOrBuilder

        public CompletionInfoOrBuilder getCompletionInfoOrBuilder()
         [CompletionService.CompleteQuery][google.cloud.discoveryengine.v1.CompletionService.CompleteQuery]
         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.discoveryengine.v1.CompletionInfo completion_info = 13;
        Specified by:
        getCompletionInfoOrBuilder in interface UserEventOrBuilder
      • hasTransactionInfo

        public boolean hasTransactionInfo()
         The transaction metadata (if any) associated with this user event.
         
        .google.cloud.discoveryengine.v1.TransactionInfo transaction_info = 14;
        Specified by:
        hasTransactionInfo in interface UserEventOrBuilder
        Returns:
        Whether the transactionInfo field is set.
      • getTransactionInfo

        public TransactionInfo getTransactionInfo()
         The transaction metadata (if any) associated with this user event.
         
        .google.cloud.discoveryengine.v1.TransactionInfo transaction_info = 14;
        Specified by:
        getTransactionInfo in interface UserEventOrBuilder
        Returns:
        The transactionInfo.
      • setTransactionInfo

        public UserEvent.Builder setTransactionInfo​(TransactionInfo value)
         The transaction metadata (if any) associated with this user event.
         
        .google.cloud.discoveryengine.v1.TransactionInfo transaction_info = 14;
      • setTransactionInfo

        public UserEvent.Builder setTransactionInfo​(TransactionInfo.Builder builderForValue)
         The transaction metadata (if any) associated with this user event.
         
        .google.cloud.discoveryengine.v1.TransactionInfo transaction_info = 14;
      • mergeTransactionInfo

        public UserEvent.Builder mergeTransactionInfo​(TransactionInfo value)
         The transaction metadata (if any) associated with this user event.
         
        .google.cloud.discoveryengine.v1.TransactionInfo transaction_info = 14;
      • clearTransactionInfo

        public UserEvent.Builder clearTransactionInfo()
         The transaction metadata (if any) associated with this user event.
         
        .google.cloud.discoveryengine.v1.TransactionInfo transaction_info = 14;
      • getTransactionInfoBuilder

        public TransactionInfo.Builder getTransactionInfoBuilder()
         The transaction metadata (if any) associated with this user event.
         
        .google.cloud.discoveryengine.v1.TransactionInfo transaction_info = 14;
      • getTagIdsList

        public com.google.protobuf.ProtocolStringList getTagIdsList()
         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 on the customer end.
         
        repeated string tag_ids = 15;
        Specified by:
        getTagIdsList in interface UserEventOrBuilder
        Returns:
        A list containing the tagIds.
      • getTagIdsCount

        public int getTagIdsCount()
         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 on the customer end.
         
        repeated string tag_ids = 15;
        Specified by:
        getTagIdsCount in interface UserEventOrBuilder
        Returns:
        The count of tagIds.
      • getTagIds

        public String getTagIds​(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 on the customer end.
         
        repeated string tag_ids = 15;
        Specified by:
        getTagIds in interface UserEventOrBuilder
        Parameters:
        index - The index of the element to return.
        Returns:
        The tagIds at the given index.
      • getTagIdsBytes

        public com.google.protobuf.ByteString getTagIdsBytes​(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 on the customer end.
         
        repeated string tag_ids = 15;
        Specified by:
        getTagIdsBytes in interface UserEventOrBuilder
        Parameters:
        index - The index of the value to return.
        Returns:
        The bytes of the tagIds at the given index.
      • setTagIds

        public UserEvent.Builder setTagIds​(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 on the customer end.
         
        repeated string tag_ids = 15;
        Parameters:
        index - The index to set the value at.
        value - The tagIds to set.
        Returns:
        This builder for chaining.
      • addTagIds

        public UserEvent.Builder addTagIds​(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 on the customer end.
         
        repeated string tag_ids = 15;
        Parameters:
        value - The tagIds to add.
        Returns:
        This builder for chaining.
      • addAllTagIds

        public UserEvent.Builder addAllTagIds​(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 on the customer end.
         
        repeated string tag_ids = 15;
        Parameters:
        values - The tagIds to add.
        Returns:
        This builder for chaining.
      • clearTagIds

        public UserEvent.Builder clearTagIds()
         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 on the customer end.
         
        repeated string tag_ids = 15;
        Returns:
        This builder for chaining.
      • addTagIdsBytes

        public UserEvent.Builder addTagIdsBytes​(com.google.protobuf.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 on the customer end.
         
        repeated string tag_ids = 15;
        Parameters:
        value - The bytes of the tagIds to add.
        Returns:
        This builder for chaining.
      • getPromotionIdsList

        public com.google.protobuf.ProtocolStringList getPromotionIdsList()
         The promotion IDs if this is an event associated with promotions.
         Currently, this field is restricted to at most one ID.
         
        repeated string promotion_ids = 16;
        Specified by:
        getPromotionIdsList in interface UserEventOrBuilder
        Returns:
        A list containing the promotionIds.
      • getPromotionIdsCount

        public int getPromotionIdsCount()
         The promotion IDs if this is an event associated with promotions.
         Currently, this field is restricted to at most one ID.
         
        repeated string promotion_ids = 16;
        Specified by:
        getPromotionIdsCount in interface UserEventOrBuilder
        Returns:
        The count of promotionIds.
      • getPromotionIds

        public String getPromotionIds​(int index)
         The promotion IDs if this is an event associated with promotions.
         Currently, this field is restricted to at most one ID.
         
        repeated string promotion_ids = 16;
        Specified by:
        getPromotionIds in interface UserEventOrBuilder
        Parameters:
        index - The index of the element to return.
        Returns:
        The promotionIds at the given index.
      • getPromotionIdsBytes

        public com.google.protobuf.ByteString getPromotionIdsBytes​(int index)
         The promotion IDs if this is an event associated with promotions.
         Currently, this field is restricted to at most one ID.
         
        repeated string promotion_ids = 16;
        Specified by:
        getPromotionIdsBytes in interface UserEventOrBuilder
        Parameters:
        index - The index of the value to return.
        Returns:
        The bytes of the promotionIds at the given index.
      • setPromotionIds

        public UserEvent.Builder setPromotionIds​(int index,
                                                 String value)
         The promotion IDs if this is an event associated with promotions.
         Currently, this field is restricted to at most one ID.
         
        repeated string promotion_ids = 16;
        Parameters:
        index - The index to set the value at.
        value - The promotionIds to set.
        Returns:
        This builder for chaining.
      • addPromotionIds

        public UserEvent.Builder addPromotionIds​(String value)
         The promotion IDs if this is an event associated with promotions.
         Currently, this field is restricted to at most one ID.
         
        repeated string promotion_ids = 16;
        Parameters:
        value - The promotionIds to add.
        Returns:
        This builder for chaining.
      • addAllPromotionIds

        public UserEvent.Builder addAllPromotionIds​(Iterable<String> values)
         The promotion IDs if this is an event associated with promotions.
         Currently, this field is restricted to at most one ID.
         
        repeated string promotion_ids = 16;
        Parameters:
        values - The promotionIds to add.
        Returns:
        This builder for chaining.
      • clearPromotionIds

        public UserEvent.Builder clearPromotionIds()
         The promotion IDs if this is an event associated with promotions.
         Currently, this field is restricted to at most one ID.
         
        repeated string promotion_ids = 16;
        Returns:
        This builder for chaining.
      • addPromotionIdsBytes

        public UserEvent.Builder addPromotionIdsBytes​(com.google.protobuf.ByteString value)
         The promotion IDs if this is an event associated with promotions.
         Currently, this field is restricted to at most one ID.
         
        repeated string promotion_ids = 16;
        Parameters:
        value - The bytes of the promotionIds to add.
        Returns:
        This builder for chaining.
      • getAttributesCount

        public int getAttributesCount()
        Description copied from interface: UserEventOrBuilder
         Extra user event features to include in the recommendation model.
         These attributes must NOT contain data that needs to be parsed or processed
         further, e.g. JSON or other encodings.
        
         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 Discovery Engine 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.discoveryengine.v1.CustomAttribute> attributes = 17;
        Specified by:
        getAttributesCount in interface UserEventOrBuilder
      • containsAttributes

        public boolean containsAttributes​(String key)
         Extra user event features to include in the recommendation model.
         These attributes must NOT contain data that needs to be parsed or processed
         further, e.g. JSON or other encodings.
        
         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 Discovery Engine 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.discoveryengine.v1.CustomAttribute> attributes = 17;
        Specified by:
        containsAttributes in interface UserEventOrBuilder
      • getAttributesMap

        public Map<String,​CustomAttribute> getAttributesMap()
         Extra user event features to include in the recommendation model.
         These attributes must NOT contain data that needs to be parsed or processed
         further, e.g. JSON or other encodings.
        
         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 Discovery Engine 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.discoveryengine.v1.CustomAttribute> attributes = 17;
        Specified by:
        getAttributesMap in interface UserEventOrBuilder
      • getAttributesOrDefault

        public CustomAttribute getAttributesOrDefault​(String key,
                                                      CustomAttribute defaultValue)
         Extra user event features to include in the recommendation model.
         These attributes must NOT contain data that needs to be parsed or processed
         further, e.g. JSON or other encodings.
        
         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 Discovery Engine 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.discoveryengine.v1.CustomAttribute> attributes = 17;
        Specified by:
        getAttributesOrDefault in interface UserEventOrBuilder
      • getAttributesOrThrow

        public CustomAttribute getAttributesOrThrow​(String key)
         Extra user event features to include in the recommendation model.
         These attributes must NOT contain data that needs to be parsed or processed
         further, e.g. JSON or other encodings.
        
         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 Discovery Engine 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.discoveryengine.v1.CustomAttribute> attributes = 17;
        Specified by:
        getAttributesOrThrow in interface UserEventOrBuilder
      • removeAttributes

        public UserEvent.Builder removeAttributes​(String key)
         Extra user event features to include in the recommendation model.
         These attributes must NOT contain data that needs to be parsed or processed
         further, e.g. JSON or other encodings.
        
         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 Discovery Engine 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.discoveryengine.v1.CustomAttribute> attributes = 17;
      • putAttributes

        public UserEvent.Builder putAttributes​(String key,
                                               CustomAttribute value)
         Extra user event features to include in the recommendation model.
         These attributes must NOT contain data that needs to be parsed or processed
         further, e.g. JSON or other encodings.
        
         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 Discovery Engine 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.discoveryengine.v1.CustomAttribute> attributes = 17;
      • putAllAttributes

        public UserEvent.Builder putAllAttributes​(Map<String,​CustomAttribute> values)
         Extra user event features to include in the recommendation model.
         These attributes must NOT contain data that needs to be parsed or processed
         further, e.g. JSON or other encodings.
        
         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 Discovery Engine 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.discoveryengine.v1.CustomAttribute> attributes = 17;
      • hasMediaInfo

        public boolean hasMediaInfo()
         Media-specific info.
         
        .google.cloud.discoveryengine.v1.MediaInfo media_info = 18;
        Specified by:
        hasMediaInfo in interface UserEventOrBuilder
        Returns:
        Whether the mediaInfo field is set.
      • getMediaInfo

        public MediaInfo getMediaInfo()
         Media-specific info.
         
        .google.cloud.discoveryengine.v1.MediaInfo media_info = 18;
        Specified by:
        getMediaInfo in interface UserEventOrBuilder
        Returns:
        The mediaInfo.
      • setMediaInfo

        public UserEvent.Builder setMediaInfo​(MediaInfo value)
         Media-specific info.
         
        .google.cloud.discoveryengine.v1.MediaInfo media_info = 18;
      • setMediaInfo

        public UserEvent.Builder setMediaInfo​(MediaInfo.Builder builderForValue)
         Media-specific info.
         
        .google.cloud.discoveryengine.v1.MediaInfo media_info = 18;
      • mergeMediaInfo

        public UserEvent.Builder mergeMediaInfo​(MediaInfo value)
         Media-specific info.
         
        .google.cloud.discoveryengine.v1.MediaInfo media_info = 18;
      • clearMediaInfo

        public UserEvent.Builder clearMediaInfo()
         Media-specific info.
         
        .google.cloud.discoveryengine.v1.MediaInfo media_info = 18;
      • getMediaInfoBuilder

        public MediaInfo.Builder getMediaInfoBuilder()
         Media-specific info.
         
        .google.cloud.discoveryengine.v1.MediaInfo media_info = 18;
      • setUnknownFields

        public final UserEvent.Builder setUnknownFields​(com.google.protobuf.UnknownFieldSet unknownFields)
        Specified by:
        setUnknownFields in interface com.google.protobuf.Message.Builder
        Overrides:
        setUnknownFields in class com.google.protobuf.GeneratedMessageV3.Builder<UserEvent.Builder>
      • mergeUnknownFields

        public final UserEvent.Builder mergeUnknownFields​(com.google.protobuf.UnknownFieldSet unknownFields)
        Specified by:
        mergeUnknownFields in interface com.google.protobuf.Message.Builder
        Overrides:
        mergeUnknownFields in class com.google.protobuf.GeneratedMessageV3.Builder<UserEvent.Builder>