Interface SearchRequest.FacetSpec.FacetKeyOrBuilder

All Superinterfaces:
com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder
All Known Implementing Classes:
SearchRequest.FacetSpec.FacetKey, SearchRequest.FacetSpec.FacetKey.Builder
Enclosing class:
SearchRequest.FacetSpec

public static interface SearchRequest.FacetSpec.FacetKeyOrBuilder extends com.google.protobuf.MessageOrBuilder
  • Method Summary

    Modifier and Type
    Method
    Description
    boolean
    True to make facet keys case insensitive when getting faceting values with prefixes or contains; false otherwise.
    getContains(int index)
    Only get facet values that contains the given strings.
    com.google.protobuf.ByteString
    getContainsBytes(int index)
    Only get facet values that contains the given strings.
    int
    Only get facet values that contains the given strings.
    Only get facet values that contains the given strings.
    getIntervals(int index)
    Set only if values should be bucketized into intervals.
    int
    Set only if values should be bucketized into intervals.
    Set only if values should be bucketized into intervals.
    Set only if values should be bucketized into intervals.
    Set only if values should be bucketized into intervals.
    Required.
    com.google.protobuf.ByteString
    Required.
    The order in which [SearchResponse.Facet.values][google.cloud.retail.v2alpha.SearchResponse.Facet.values] are returned.
    com.google.protobuf.ByteString
    The order in which [SearchResponse.Facet.values][google.cloud.retail.v2alpha.SearchResponse.Facet.values] are returned.
    getPrefixes(int index)
    Only get facet values that start with the given string prefix.
    com.google.protobuf.ByteString
    getPrefixesBytes(int index)
    Only get facet values that start with the given string prefix.
    int
    Only get facet values that start with the given string prefix.
    Only get facet values that start with the given string prefix.
    The query that is used to compute facet for the given facet key.
    com.google.protobuf.ByteString
    The query that is used to compute facet for the given facet key.
    Only get facet for the given restricted values.
    com.google.protobuf.ByteString
    Only get facet for the given restricted values.
    int
    Only get facet for the given restricted values.
    Only get facet for the given restricted values.
    boolean
    Returns the min and max value for each numerical facet intervals.

    Methods inherited from interface com.google.protobuf.MessageLiteOrBuilder

    isInitialized

    Methods inherited from interface com.google.protobuf.MessageOrBuilder

    findInitializationErrors, getAllFields, getDefaultInstanceForType, getDescriptorForType, getField, getInitializationErrorString, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, getUnknownFields, hasField, hasOneof
  • Method Details

    • getKey

      String getKey()
       Required. Supported textual and numerical facet keys in
       [Product][google.cloud.retail.v2alpha.Product] object, over which the
       facet values are computed. Facet key is case-sensitive.
      
       Allowed facet keys when
       [FacetKey.query][google.cloud.retail.v2alpha.SearchRequest.FacetSpec.FacetKey.query]
       is not specified:
      
       * textual_field =
       * "brands"
       * "categories"
       * "genders"
       * "ageGroups"
       * "availability"
       * "colorFamilies"
       * "colors"
       * "sizes"
       * "materials"
       * "patterns"
       * "conditions"
       * "attributes.key"
       * "pickupInStore"
       * "shipToStore"
       * "sameDayDelivery"
       * "nextDayDelivery"
       * "customFulfillment1"
       * "customFulfillment2"
       * "customFulfillment3"
       * "customFulfillment4"
       * "customFulfillment5"
       * "inventory(place_id,attributes.key)"
      
       * numerical_field =
       * "price"
       * "discount"
       * "rating"
       * "ratingCount"
       * "attributes.key"
       * "inventory(place_id,price)"
       * "inventory(place_id,original_price)"
       * "inventory(place_id,attributes.key)"
       
      string key = 1 [(.google.api.field_behavior) = REQUIRED];
      Returns:
      The key.
    • getKeyBytes

      com.google.protobuf.ByteString getKeyBytes()
       Required. Supported textual and numerical facet keys in
       [Product][google.cloud.retail.v2alpha.Product] object, over which the
       facet values are computed. Facet key is case-sensitive.
      
       Allowed facet keys when
       [FacetKey.query][google.cloud.retail.v2alpha.SearchRequest.FacetSpec.FacetKey.query]
       is not specified:
      
       * textual_field =
       * "brands"
       * "categories"
       * "genders"
       * "ageGroups"
       * "availability"
       * "colorFamilies"
       * "colors"
       * "sizes"
       * "materials"
       * "patterns"
       * "conditions"
       * "attributes.key"
       * "pickupInStore"
       * "shipToStore"
       * "sameDayDelivery"
       * "nextDayDelivery"
       * "customFulfillment1"
       * "customFulfillment2"
       * "customFulfillment3"
       * "customFulfillment4"
       * "customFulfillment5"
       * "inventory(place_id,attributes.key)"
      
       * numerical_field =
       * "price"
       * "discount"
       * "rating"
       * "ratingCount"
       * "attributes.key"
       * "inventory(place_id,price)"
       * "inventory(place_id,original_price)"
       * "inventory(place_id,attributes.key)"
       
      string key = 1 [(.google.api.field_behavior) = REQUIRED];
      Returns:
      The bytes for key.
    • getIntervalsList

      List<Interval> getIntervalsList()
       Set only if values should be bucketized into intervals. Must be set
       for facets with numerical values. Must not be set for facet with text
       values. Maximum number of intervals is 40.
      
       For all numerical facet keys that appear in the list of products from
       the catalog, the percentiles 0, 10, 30, 50, 70, 90, and 100 are
       computed from their distribution weekly. If the model assigns a high
       score to a numerical facet key and its intervals are not specified in
       the search request, these percentiles become the bounds
       for its intervals and are returned in the response. If the
       facet key intervals are specified in the request, then the specified
       intervals are returned instead.
       
      repeated .google.cloud.retail.v2alpha.Interval intervals = 2;
    • getIntervals

      Interval getIntervals(int index)
       Set only if values should be bucketized into intervals. Must be set
       for facets with numerical values. Must not be set for facet with text
       values. Maximum number of intervals is 40.
      
       For all numerical facet keys that appear in the list of products from
       the catalog, the percentiles 0, 10, 30, 50, 70, 90, and 100 are
       computed from their distribution weekly. If the model assigns a high
       score to a numerical facet key and its intervals are not specified in
       the search request, these percentiles become the bounds
       for its intervals and are returned in the response. If the
       facet key intervals are specified in the request, then the specified
       intervals are returned instead.
       
      repeated .google.cloud.retail.v2alpha.Interval intervals = 2;
    • getIntervalsCount

      int getIntervalsCount()
       Set only if values should be bucketized into intervals. Must be set
       for facets with numerical values. Must not be set for facet with text
       values. Maximum number of intervals is 40.
      
       For all numerical facet keys that appear in the list of products from
       the catalog, the percentiles 0, 10, 30, 50, 70, 90, and 100 are
       computed from their distribution weekly. If the model assigns a high
       score to a numerical facet key and its intervals are not specified in
       the search request, these percentiles become the bounds
       for its intervals and are returned in the response. If the
       facet key intervals are specified in the request, then the specified
       intervals are returned instead.
       
      repeated .google.cloud.retail.v2alpha.Interval intervals = 2;
    • getIntervalsOrBuilderList

      List<? extends IntervalOrBuilder> getIntervalsOrBuilderList()
       Set only if values should be bucketized into intervals. Must be set
       for facets with numerical values. Must not be set for facet with text
       values. Maximum number of intervals is 40.
      
       For all numerical facet keys that appear in the list of products from
       the catalog, the percentiles 0, 10, 30, 50, 70, 90, and 100 are
       computed from their distribution weekly. If the model assigns a high
       score to a numerical facet key and its intervals are not specified in
       the search request, these percentiles become the bounds
       for its intervals and are returned in the response. If the
       facet key intervals are specified in the request, then the specified
       intervals are returned instead.
       
      repeated .google.cloud.retail.v2alpha.Interval intervals = 2;
    • getIntervalsOrBuilder

      IntervalOrBuilder getIntervalsOrBuilder(int index)
       Set only if values should be bucketized into intervals. Must be set
       for facets with numerical values. Must not be set for facet with text
       values. Maximum number of intervals is 40.
      
       For all numerical facet keys that appear in the list of products from
       the catalog, the percentiles 0, 10, 30, 50, 70, 90, and 100 are
       computed from their distribution weekly. If the model assigns a high
       score to a numerical facet key and its intervals are not specified in
       the search request, these percentiles become the bounds
       for its intervals and are returned in the response. If the
       facet key intervals are specified in the request, then the specified
       intervals are returned instead.
       
      repeated .google.cloud.retail.v2alpha.Interval intervals = 2;
    • getRestrictedValuesList

      List<String> getRestrictedValuesList()
       Only get facet for the given restricted values. For example, when using
       "pickupInStore" as key and set restricted values to
       ["store123", "store456"], only facets for "store123" and "store456" are
       returned. Only supported on predefined textual fields, custom textual
       attributes and fulfillments. Maximum is 20.
      
       Must be set for the fulfillment facet keys:
      
       * pickupInStore
      
       * shipToStore
      
       * sameDayDelivery
      
       * nextDayDelivery
      
       * customFulfillment1
      
       * customFulfillment2
      
       * customFulfillment3
      
       * customFulfillment4
      
       * customFulfillment5
       
      repeated string restricted_values = 3;
      Returns:
      A list containing the restrictedValues.
    • getRestrictedValuesCount

      int getRestrictedValuesCount()
       Only get facet for the given restricted values. For example, when using
       "pickupInStore" as key and set restricted values to
       ["store123", "store456"], only facets for "store123" and "store456" are
       returned. Only supported on predefined textual fields, custom textual
       attributes and fulfillments. Maximum is 20.
      
       Must be set for the fulfillment facet keys:
      
       * pickupInStore
      
       * shipToStore
      
       * sameDayDelivery
      
       * nextDayDelivery
      
       * customFulfillment1
      
       * customFulfillment2
      
       * customFulfillment3
      
       * customFulfillment4
      
       * customFulfillment5
       
      repeated string restricted_values = 3;
      Returns:
      The count of restrictedValues.
    • getRestrictedValues

      String getRestrictedValues(int index)
       Only get facet for the given restricted values. For example, when using
       "pickupInStore" as key and set restricted values to
       ["store123", "store456"], only facets for "store123" and "store456" are
       returned. Only supported on predefined textual fields, custom textual
       attributes and fulfillments. Maximum is 20.
      
       Must be set for the fulfillment facet keys:
      
       * pickupInStore
      
       * shipToStore
      
       * sameDayDelivery
      
       * nextDayDelivery
      
       * customFulfillment1
      
       * customFulfillment2
      
       * customFulfillment3
      
       * customFulfillment4
      
       * customFulfillment5
       
      repeated string restricted_values = 3;
      Parameters:
      index - The index of the element to return.
      Returns:
      The restrictedValues at the given index.
    • getRestrictedValuesBytes

      com.google.protobuf.ByteString getRestrictedValuesBytes(int index)
       Only get facet for the given restricted values. For example, when using
       "pickupInStore" as key and set restricted values to
       ["store123", "store456"], only facets for "store123" and "store456" are
       returned. Only supported on predefined textual fields, custom textual
       attributes and fulfillments. Maximum is 20.
      
       Must be set for the fulfillment facet keys:
      
       * pickupInStore
      
       * shipToStore
      
       * sameDayDelivery
      
       * nextDayDelivery
      
       * customFulfillment1
      
       * customFulfillment2
      
       * customFulfillment3
      
       * customFulfillment4
      
       * customFulfillment5
       
      repeated string restricted_values = 3;
      Parameters:
      index - The index of the value to return.
      Returns:
      The bytes of the restrictedValues at the given index.
    • getPrefixesList

      List<String> getPrefixesList()
       Only get facet values that start with the given string prefix. For
       example, suppose "categories" has three values "Women > Shoe",
       "Women > Dress" and "Men > Shoe". If set "prefixes" to "Women", the
       "categories" facet gives only "Women > Shoe" and "Women > Dress".
       Only supported on textual fields. Maximum is 10.
       
      repeated string prefixes = 8;
      Returns:
      A list containing the prefixes.
    • getPrefixesCount

      int getPrefixesCount()
       Only get facet values that start with the given string prefix. For
       example, suppose "categories" has three values "Women > Shoe",
       "Women > Dress" and "Men > Shoe". If set "prefixes" to "Women", the
       "categories" facet gives only "Women > Shoe" and "Women > Dress".
       Only supported on textual fields. Maximum is 10.
       
      repeated string prefixes = 8;
      Returns:
      The count of prefixes.
    • getPrefixes

      String getPrefixes(int index)
       Only get facet values that start with the given string prefix. For
       example, suppose "categories" has three values "Women > Shoe",
       "Women > Dress" and "Men > Shoe". If set "prefixes" to "Women", the
       "categories" facet gives only "Women > Shoe" and "Women > Dress".
       Only supported on textual fields. Maximum is 10.
       
      repeated string prefixes = 8;
      Parameters:
      index - The index of the element to return.
      Returns:
      The prefixes at the given index.
    • getPrefixesBytes

      com.google.protobuf.ByteString getPrefixesBytes(int index)
       Only get facet values that start with the given string prefix. For
       example, suppose "categories" has three values "Women > Shoe",
       "Women > Dress" and "Men > Shoe". If set "prefixes" to "Women", the
       "categories" facet gives only "Women > Shoe" and "Women > Dress".
       Only supported on textual fields. Maximum is 10.
       
      repeated string prefixes = 8;
      Parameters:
      index - The index of the value to return.
      Returns:
      The bytes of the prefixes at the given index.
    • getContainsList

      List<String> getContainsList()
       Only get facet values that contains the given strings. For example,
       suppose "categories" has three values "Women > Shoe",
       "Women > Dress" and "Men > Shoe". If set "contains" to "Shoe", the
       "categories" facet gives only "Women > Shoe" and "Men > Shoe".
       Only supported on textual fields. Maximum is 10.
       
      repeated string contains = 9;
      Returns:
      A list containing the contains.
    • getContainsCount

      int getContainsCount()
       Only get facet values that contains the given strings. For example,
       suppose "categories" has three values "Women > Shoe",
       "Women > Dress" and "Men > Shoe". If set "contains" to "Shoe", the
       "categories" facet gives only "Women > Shoe" and "Men > Shoe".
       Only supported on textual fields. Maximum is 10.
       
      repeated string contains = 9;
      Returns:
      The count of contains.
    • getContains

      String getContains(int index)
       Only get facet values that contains the given strings. For example,
       suppose "categories" has three values "Women > Shoe",
       "Women > Dress" and "Men > Shoe". If set "contains" to "Shoe", the
       "categories" facet gives only "Women > Shoe" and "Men > Shoe".
       Only supported on textual fields. Maximum is 10.
       
      repeated string contains = 9;
      Parameters:
      index - The index of the element to return.
      Returns:
      The contains at the given index.
    • getContainsBytes

      com.google.protobuf.ByteString getContainsBytes(int index)
       Only get facet values that contains the given strings. For example,
       suppose "categories" has three values "Women > Shoe",
       "Women > Dress" and "Men > Shoe". If set "contains" to "Shoe", the
       "categories" facet gives only "Women > Shoe" and "Men > Shoe".
       Only supported on textual fields. Maximum is 10.
       
      repeated string contains = 9;
      Parameters:
      index - The index of the value to return.
      Returns:
      The bytes of the contains at the given index.
    • getCaseInsensitive

      boolean getCaseInsensitive()
       True to make facet keys case insensitive when getting faceting
       values with prefixes or contains; false otherwise.
       
      bool case_insensitive = 10;
      Returns:
      The caseInsensitive.
    • getOrderBy

      String getOrderBy()
       The order in which
       [SearchResponse.Facet.values][google.cloud.retail.v2alpha.SearchResponse.Facet.values]
       are returned.
      
       Allowed values are:
      
       * "count desc", which means order by
       [SearchResponse.Facet.values.count][google.cloud.retail.v2alpha.SearchResponse.Facet.FacetValue.count]
       descending.
      
       * "value desc", which means order by
       [SearchResponse.Facet.values.value][google.cloud.retail.v2alpha.SearchResponse.Facet.FacetValue.value]
       descending.
       Only applies to textual facets.
      
       If not set, textual values are sorted in [natural
       order](https://en.wikipedia.org/wiki/Natural_sort_order); numerical
       intervals are sorted in the order given by
       [FacetSpec.FacetKey.intervals][google.cloud.retail.v2alpha.SearchRequest.FacetSpec.FacetKey.intervals];
       [FulfillmentInfo.place_ids][google.cloud.retail.v2alpha.FulfillmentInfo.place_ids]
       are sorted in the order given by
       [FacetSpec.FacetKey.restricted_values][google.cloud.retail.v2alpha.SearchRequest.FacetSpec.FacetKey.restricted_values].
       
      string order_by = 4;
      Returns:
      The orderBy.
    • getOrderByBytes

      com.google.protobuf.ByteString getOrderByBytes()
       The order in which
       [SearchResponse.Facet.values][google.cloud.retail.v2alpha.SearchResponse.Facet.values]
       are returned.
      
       Allowed values are:
      
       * "count desc", which means order by
       [SearchResponse.Facet.values.count][google.cloud.retail.v2alpha.SearchResponse.Facet.FacetValue.count]
       descending.
      
       * "value desc", which means order by
       [SearchResponse.Facet.values.value][google.cloud.retail.v2alpha.SearchResponse.Facet.FacetValue.value]
       descending.
       Only applies to textual facets.
      
       If not set, textual values are sorted in [natural
       order](https://en.wikipedia.org/wiki/Natural_sort_order); numerical
       intervals are sorted in the order given by
       [FacetSpec.FacetKey.intervals][google.cloud.retail.v2alpha.SearchRequest.FacetSpec.FacetKey.intervals];
       [FulfillmentInfo.place_ids][google.cloud.retail.v2alpha.FulfillmentInfo.place_ids]
       are sorted in the order given by
       [FacetSpec.FacetKey.restricted_values][google.cloud.retail.v2alpha.SearchRequest.FacetSpec.FacetKey.restricted_values].
       
      string order_by = 4;
      Returns:
      The bytes for orderBy.
    • getQuery

      String getQuery()
       The query that is used to compute facet for the given facet key.
       When provided, it overrides the default behavior of facet
       computation. The query syntax is the same as a filter expression. See
       [SearchRequest.filter][google.cloud.retail.v2alpha.SearchRequest.filter]
       for detail syntax and limitations. Notice that there is no limitation
       on
       [FacetKey.key][google.cloud.retail.v2alpha.SearchRequest.FacetSpec.FacetKey.key]
       when query is specified.
      
       In the response,
       [SearchResponse.Facet.values.value][google.cloud.retail.v2alpha.SearchResponse.Facet.FacetValue.value]
       is always "1" and
       [SearchResponse.Facet.values.count][google.cloud.retail.v2alpha.SearchResponse.Facet.FacetValue.count]
       is the number of results that match the query.
      
       For example, you can set a customized facet for "shipToStore",
       where
       [FacetKey.key][google.cloud.retail.v2alpha.SearchRequest.FacetSpec.FacetKey.key]
       is "customizedShipToStore", and
       [FacetKey.query][google.cloud.retail.v2alpha.SearchRequest.FacetSpec.FacetKey.query]
       is "availability: ANY(\"IN_STOCK\") AND shipToStore: ANY(\"123\")".
       Then the facet counts the products that are both in stock and ship
       to store "123".
       
      string query = 5;
      Returns:
      The query.
    • getQueryBytes

      com.google.protobuf.ByteString getQueryBytes()
       The query that is used to compute facet for the given facet key.
       When provided, it overrides the default behavior of facet
       computation. The query syntax is the same as a filter expression. See
       [SearchRequest.filter][google.cloud.retail.v2alpha.SearchRequest.filter]
       for detail syntax and limitations. Notice that there is no limitation
       on
       [FacetKey.key][google.cloud.retail.v2alpha.SearchRequest.FacetSpec.FacetKey.key]
       when query is specified.
      
       In the response,
       [SearchResponse.Facet.values.value][google.cloud.retail.v2alpha.SearchResponse.Facet.FacetValue.value]
       is always "1" and
       [SearchResponse.Facet.values.count][google.cloud.retail.v2alpha.SearchResponse.Facet.FacetValue.count]
       is the number of results that match the query.
      
       For example, you can set a customized facet for "shipToStore",
       where
       [FacetKey.key][google.cloud.retail.v2alpha.SearchRequest.FacetSpec.FacetKey.key]
       is "customizedShipToStore", and
       [FacetKey.query][google.cloud.retail.v2alpha.SearchRequest.FacetSpec.FacetKey.query]
       is "availability: ANY(\"IN_STOCK\") AND shipToStore: ANY(\"123\")".
       Then the facet counts the products that are both in stock and ship
       to store "123".
       
      string query = 5;
      Returns:
      The bytes for query.
    • getReturnMinMax

      boolean getReturnMinMax()
       Returns the min and max value for each numerical facet intervals.
       Ignored for textual facets.
       
      bool return_min_max = 11;
      Returns:
      The returnMinMax.