Class: Google::Apis::RetailV2::GoogleCloudRetailV2SearchRequest
- Inherits:
-
Object
- Object
- Google::Apis::RetailV2::GoogleCloudRetailV2SearchRequest
- Includes:
- Core::Hashable, Core::JsonObjectSupport
- Defined in:
- lib/google/apis/retail_v2/classes.rb,
lib/google/apis/retail_v2/representations.rb,
lib/google/apis/retail_v2/representations.rb
Overview
Request message for SearchService.Search method.
Instance Attribute Summary collapse
-
#boost_spec ⇒ Google::Apis::RetailV2::GoogleCloudRetailV2SearchRequestBoostSpec
Boost specification to boost certain items.
-
#branch ⇒ String
The branch resource name, such as
projects/*/locations/global/catalogs/ default_catalog/branches/0. -
#canonical_filter ⇒ String
The default filter that is applied when a user performs a search without checking any filters on the search page.
-
#dynamic_facet_spec ⇒ Google::Apis::RetailV2::GoogleCloudRetailV2SearchRequestDynamicFacetSpec
The specifications of dynamically generated facets.
-
#facet_specs ⇒ Array<Google::Apis::RetailV2::GoogleCloudRetailV2SearchRequestFacetSpec>
Facet specifications for faceted search.
-
#filter ⇒ String
The filter syntax consists of an expression language for constructing a predicate from one or more fields of the products being filtered.
-
#labels ⇒ Hash<String,String>
The labels applied to a resource must meet the following requirements: * Each resource can have multiple labels, up to a maximum of 64.
-
#offset ⇒ Fixnum
A 0-indexed integer that specifies the current offset (that is, starting result location, amongst the Products deemed by the API as relevant) in search results.
-
#order_by ⇒ String
The order in which products are returned.
-
#page_categories ⇒ Array<String>
The categories associated with a category page.
-
#page_size ⇒ Fixnum
Maximum number of Products to return.
-
#page_token ⇒ String
A page token SearchResponse.next_page_token, received from a previous SearchService.Search call.
-
#personalization_spec ⇒ Google::Apis::RetailV2::GoogleCloudRetailV2SearchRequestPersonalizationSpec
The specification for personalization.
-
#query ⇒ String
Raw search query.
-
#query_expansion_spec ⇒ Google::Apis::RetailV2::GoogleCloudRetailV2SearchRequestQueryExpansionSpec
Specification to determine under which conditions query expansion should occur.
-
#search_mode ⇒ String
The search mode of the search request.
-
#spell_correction_spec ⇒ Google::Apis::RetailV2::GoogleCloudRetailV2SearchRequestSpellCorrectionSpec
The specification for query spell correction.
-
#user_info ⇒ Google::Apis::RetailV2::GoogleCloudRetailV2UserInfo
Information of an end user.
-
#variant_rollup_keys ⇒ Array<String>
The keys to fetch and rollup the matching variant Products attributes, FulfillmentInfo or LocalInventorys attributes.
-
#visitor_id ⇒ String
Required.
Instance Method Summary collapse
-
#initialize(**args) ⇒ GoogleCloudRetailV2SearchRequest
constructor
A new instance of GoogleCloudRetailV2SearchRequest.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ GoogleCloudRetailV2SearchRequest
Returns a new instance of GoogleCloudRetailV2SearchRequest.
2978 2979 2980 |
# File 'lib/google/apis/retail_v2/classes.rb', line 2978 def initialize(**args) update!(**args) end |
Instance Attribute Details
#boost_spec ⇒ Google::Apis::RetailV2::GoogleCloudRetailV2SearchRequestBoostSpec
Boost specification to boost certain items.
Corresponds to the JSON property boostSpec
2806 2807 2808 |
# File 'lib/google/apis/retail_v2/classes.rb', line 2806 def boost_spec @boost_spec end |
#branch ⇒ String
The branch resource name, such as projects/*/locations/global/catalogs/
default_catalog/branches/0. Use "default_branch" as the branch ID or leave
this field empty, to search products under the default branch.
Corresponds to the JSON property branch
2813 2814 2815 |
# File 'lib/google/apis/retail_v2/classes.rb', line 2813 def branch @branch end |
#canonical_filter ⇒ String
The default filter that is applied when a user performs a search without
checking any filters on the search page. The filter applied to every search
request when quality improvement such as query expansion is needed. For
example, if a query does not have enough results, an expanded query with
SearchRequest.canonical_filter will be returned as a supplement of the
original query. This field is strongly recommended to achieve high search
quality. See SearchRequest.filter for more details about filter syntax.
Corresponds to the JSON property canonicalFilter
2824 2825 2826 |
# File 'lib/google/apis/retail_v2/classes.rb', line 2824 def canonical_filter @canonical_filter end |
#dynamic_facet_spec ⇒ Google::Apis::RetailV2::GoogleCloudRetailV2SearchRequestDynamicFacetSpec
The specifications of dynamically generated facets.
Corresponds to the JSON property dynamicFacetSpec
2829 2830 2831 |
# File 'lib/google/apis/retail_v2/classes.rb', line 2829 def dynamic_facet_spec @dynamic_facet_spec end |
#facet_specs ⇒ Array<Google::Apis::RetailV2::GoogleCloudRetailV2SearchRequestFacetSpec>
Facet specifications for faceted search. If empty, no facets are returned. A
maximum of 100 values are allowed. Otherwise, an INVALID_ARGUMENT error is
returned.
Corresponds to the JSON property facetSpecs
2836 2837 2838 |
# File 'lib/google/apis/retail_v2/classes.rb', line 2836 def facet_specs @facet_specs end |
#filter ⇒ String
The filter syntax consists of an expression language for constructing a
predicate from one or more fields of the products being filtered. Filter
expression is case-sensitive. See more details at this user guide. If this field is
unrecognizable, an INVALID_ARGUMENT is returned.
Corresponds to the JSON property filter
2845 2846 2847 |
# File 'lib/google/apis/retail_v2/classes.rb', line 2845 def filter @filter end |
#labels ⇒ Hash<String,String>
The labels applied to a resource must meet the following requirements: * Each
resource can have multiple labels, up to a maximum of 64. * Each label must be
a key-value pair. * Keys have a minimum length of 1 character and a maximum
length of 63 characters and cannot be empty. Values can be empty and have a
maximum length of 63 characters. * Keys and values can contain only lowercase
letters, numeric characters, underscores, and dashes. All characters must use
UTF-8 encoding, and international characters are allowed. * The key portion of
a label must be unique. However, you can use the same key with multiple
resources. * Keys must start with a lowercase letter or international
character. See Google Cloud Document for more details.
Corresponds to the JSON property labels
2860 2861 2862 |
# File 'lib/google/apis/retail_v2/classes.rb', line 2860 def labels @labels end |
#offset ⇒ Fixnum
A 0-indexed integer that specifies the current offset (that is, starting
result location, amongst the Products deemed by the API as relevant) in search
results. This field is only considered if page_token is unset. If this field
is negative, an INVALID_ARGUMENT is returned.
Corresponds to the JSON property offset
2868 2869 2870 |
# File 'lib/google/apis/retail_v2/classes.rb', line 2868 def offset @offset end |
#order_by ⇒ String
The order in which products are returned. Products can be ordered by a field
in an Product object. Leave it unset if ordered by relevance. OrderBy
expression is case-sensitive. See more details at this user guide. If this field is
unrecognizable, an INVALID_ARGUMENT is returned.
Corresponds to the JSON property orderBy
2877 2878 2879 |
# File 'lib/google/apis/retail_v2/classes.rb', line 2877 def order_by @order_by end |
#page_categories ⇒ Array<String>
The categories associated with a category page. Required for category
navigation queries to achieve good search quality. The format should be the
same as UserEvent.page_categories; To represent full path of category, use '>'
sign to separate different hierarchies. If '>' is part of the category name,
please replace it with other character(s). Category pages include special
pages such as sales or promotions. For instance, a special sale page may have
the category hierarchy: "pageCategories" : ["Sales > 2017 Black Friday Deals"].
Corresponds to the JSON property pageCategories
2888 2889 2890 |
# File 'lib/google/apis/retail_v2/classes.rb', line 2888 def page_categories @page_categories end |
#page_size ⇒ Fixnum
Maximum number of Products to return. If unspecified, defaults to a reasonable value. The maximum allowed value is 120. Values above 120 will be coerced to
- If this field is negative, an INVALID_ARGUMENT is returned.
Corresponds to the JSON property
pageSize
2895 2896 2897 |
# File 'lib/google/apis/retail_v2/classes.rb', line 2895 def page_size @page_size end |
#page_token ⇒ String
A page token SearchResponse.next_page_token, received from a previous
SearchService.Search call. Provide this to retrieve the subsequent page. When
paginating, all other parameters provided to SearchService.Search must match
the call that provided the page token. Otherwise, an INVALID_ARGUMENT error is
returned.
Corresponds to the JSON property pageToken
2904 2905 2906 |
# File 'lib/google/apis/retail_v2/classes.rb', line 2904 def page_token @page_token end |
#personalization_spec ⇒ Google::Apis::RetailV2::GoogleCloudRetailV2SearchRequestPersonalizationSpec
The specification for personalization.
Corresponds to the JSON property personalizationSpec
2909 2910 2911 |
# File 'lib/google/apis/retail_v2/classes.rb', line 2909 def personalization_spec @personalization_spec end |
#query ⇒ String
Raw search query. If this field is empty, the request is considered a category
browsing request and returned results are based on filter and page_categories.
Corresponds to the JSON property query
2915 2916 2917 |
# File 'lib/google/apis/retail_v2/classes.rb', line 2915 def query @query end |
#query_expansion_spec ⇒ Google::Apis::RetailV2::GoogleCloudRetailV2SearchRequestQueryExpansionSpec
Specification to determine under which conditions query expansion should occur.
Corresponds to the JSON property queryExpansionSpec
2920 2921 2922 |
# File 'lib/google/apis/retail_v2/classes.rb', line 2920 def query_expansion_spec @query_expansion_spec end |
#search_mode ⇒ String
The search mode of the search request. If not specified, a single search
request triggers both product search and faceted search.
Corresponds to the JSON property searchMode
2926 2927 2928 |
# File 'lib/google/apis/retail_v2/classes.rb', line 2926 def search_mode @search_mode end |
#spell_correction_spec ⇒ Google::Apis::RetailV2::GoogleCloudRetailV2SearchRequestSpellCorrectionSpec
The specification for query spell correction.
Corresponds to the JSON property spellCorrectionSpec
2931 2932 2933 |
# File 'lib/google/apis/retail_v2/classes.rb', line 2931 def spell_correction_spec @spell_correction_spec end |
#user_info ⇒ Google::Apis::RetailV2::GoogleCloudRetailV2UserInfo
Information of an end user.
Corresponds to the JSON property userInfo
2936 2937 2938 |
# File 'lib/google/apis/retail_v2/classes.rb', line 2936 def user_info @user_info end |
#variant_rollup_keys ⇒ Array<String>
The keys to fetch and rollup the matching variant Products attributes,
FulfillmentInfo or LocalInventorys attributes. The attributes from all the
matching variant Products or LocalInventorys are merged and de-duplicated.
Notice that rollup attributes will lead to extra query latency. Maximum number
of keys is 30. For FulfillmentInfo, a fulfillment type and a fulfillment ID
must be provided in the format of "fulfillmentType.fulfillmentId". E.g., in "
pickupInStore.store123", "pickupInStore" is fulfillment type and "store123" is
the store ID. Supported keys are: * colorFamilies * price * originalPrice *
discount * variantId * inventory(place_id,price) * inventory(place_id,
original_price) * inventory(place_id,attributes.key), where key is any key in
the Product.local_inventories.attributes map. * attributes.key, where key is
any key in the Product.attributes map. * pickupInStore.id, where id is any
FulfillmentInfo.place_ids for FulfillmentInfo.type "pickup-in-store". *
shipToStore.id, where id is any FulfillmentInfo.place_ids for FulfillmentInfo.
type "ship-to-store". * sameDayDelivery.id, where id is any FulfillmentInfo.
place_ids for FulfillmentInfo.type "same-day-delivery". * nextDayDelivery.id,
where id is any FulfillmentInfo.place_ids for FulfillmentInfo.type "next-day-
delivery". * customFulfillment1.id, where id is any FulfillmentInfo.place_ids
for FulfillmentInfo.type "custom-type-1". * customFulfillment2.id, where id is
any FulfillmentInfo.place_ids for FulfillmentInfo.type "custom-type-2". *
customFulfillment3.id, where id is any FulfillmentInfo.place_ids for
FulfillmentInfo.type "custom-type-3". * customFulfillment4.id, where id is any
FulfillmentInfo.place_ids for FulfillmentInfo.type "custom-type-4". *
customFulfillment5.id, where id is any FulfillmentInfo.place_ids for
FulfillmentInfo.type "custom-type-5". If this field is set to an invalid value
other than these, an INVALID_ARGUMENT error is returned.
Corresponds to the JSON property variantRollupKeys
2966 2967 2968 |
# File 'lib/google/apis/retail_v2/classes.rb', line 2966 def variant_rollup_keys @variant_rollup_keys end |
#visitor_id ⇒ String
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 logs in or out of the website. This should be the same identifier as
UserEvent.visitor_id. The field must be a UTF-8 encoded string with a length
limit of 128 characters. Otherwise, an INVALID_ARGUMENT error is returned.
Corresponds to the JSON property visitorId
2976 2977 2978 |
# File 'lib/google/apis/retail_v2/classes.rb', line 2976 def visitor_id @visitor_id end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
2983 2984 2985 2986 2987 2988 2989 2990 2991 2992 2993 2994 2995 2996 2997 2998 2999 3000 3001 3002 3003 3004 |
# File 'lib/google/apis/retail_v2/classes.rb', line 2983 def update!(**args) @boost_spec = args[:boost_spec] if args.key?(:boost_spec) @branch = args[:branch] if args.key?(:branch) @canonical_filter = args[:canonical_filter] if args.key?(:canonical_filter) @dynamic_facet_spec = args[:dynamic_facet_spec] if args.key?(:dynamic_facet_spec) @facet_specs = args[:facet_specs] if args.key?(:facet_specs) @filter = args[:filter] if args.key?(:filter) @labels = args[:labels] if args.key?(:labels) @offset = args[:offset] if args.key?(:offset) @order_by = args[:order_by] if args.key?(:order_by) @page_categories = args[:page_categories] if args.key?(:page_categories) @page_size = args[:page_size] if args.key?(:page_size) @page_token = args[:page_token] if args.key?(:page_token) @personalization_spec = args[:personalization_spec] if args.key?(:personalization_spec) @query = args[:query] if args.key?(:query) @query_expansion_spec = args[:query_expansion_spec] if args.key?(:query_expansion_spec) @search_mode = args[:search_mode] if args.key?(:search_mode) @spell_correction_spec = args[:spell_correction_spec] if args.key?(:spell_correction_spec) @user_info = args[:user_info] if args.key?(:user_info) @variant_rollup_keys = args[:variant_rollup_keys] if args.key?(:variant_rollup_keys) @visitor_id = args[:visitor_id] if args.key?(:visitor_id) end |