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.
-
#conversational_search_spec ⇒ Google::Apis::RetailV2::GoogleCloudRetailV2SearchRequestConversationalSearchSpec
This field specifies all conversational related parameters addition to traditional retail search.
-
#dynamic_facet_spec ⇒ Google::Apis::RetailV2::GoogleCloudRetailV2SearchRequestDynamicFacetSpec
The specifications of dynamically generated facets.
-
#entity ⇒ String
The entity for customers that may run multiple different entities, domains, sites or regions, for example,
Google US,Google Ads,Waymo,google.com,youtube.com, etc. -
#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.
-
#language_code ⇒ String
Optional.
-
#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>
Optional.
-
#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.
-
#place_id ⇒ String
Optional.
-
#query ⇒ String
Raw search query.
-
#query_expansion_spec ⇒ Google::Apis::RetailV2::GoogleCloudRetailV2SearchRequestQueryExpansionSpec
Specification to determine under which conditions query expansion should occur.
-
#region_code ⇒ String
Optional.
-
#search_mode ⇒ String
The search mode of the search request.
-
#spell_correction_spec ⇒ Google::Apis::RetailV2::GoogleCloudRetailV2SearchRequestSpellCorrectionSpec
The specification for query spell correction.
-
#tile_navigation_spec ⇒ Google::Apis::RetailV2::GoogleCloudRetailV2SearchRequestTileNavigationSpec
This field specifies tile navigation related parameters.
-
#user_attributes ⇒ Hash<String,Google::Apis::RetailV2::GoogleCloudRetailV2StringList>
Optional.
-
#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.
5792 5793 5794 |
# File 'lib/google/apis/retail_v2/classes.rb', line 5792 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
5563 5564 5565 |
# File 'lib/google/apis/retail_v2/classes.rb', line 5563 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
5570 5571 5572 |
# File 'lib/google/apis/retail_v2/classes.rb', line 5570 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. In the
case a query does not have a sufficient amount of results this filter will be
used to determine whether or not to enable the query expansion flow. The
original filter will still be used for the query expanded search. This field
is strongly recommended to achieve high search quality. For more information
about filter syntax, see SearchRequest.filter.
Corresponds to the JSON property canonicalFilter
5582 5583 5584 |
# File 'lib/google/apis/retail_v2/classes.rb', line 5582 def canonical_filter @canonical_filter end |
#conversational_search_spec ⇒ Google::Apis::RetailV2::GoogleCloudRetailV2SearchRequestConversationalSearchSpec
This field specifies all conversational related parameters addition to
traditional retail search.
Corresponds to the JSON property conversationalSearchSpec
5588 5589 5590 |
# File 'lib/google/apis/retail_v2/classes.rb', line 5588 def conversational_search_spec @conversational_search_spec end |
#dynamic_facet_spec ⇒ Google::Apis::RetailV2::GoogleCloudRetailV2SearchRequestDynamicFacetSpec
The specifications of dynamically generated facets.
Corresponds to the JSON property dynamicFacetSpec
5593 5594 5595 |
# File 'lib/google/apis/retail_v2/classes.rb', line 5593 def dynamic_facet_spec @dynamic_facet_spec end |
#entity ⇒ String
The entity for customers that may run multiple different entities, domains,
sites or regions, for example, Google US, Google Ads, Waymo, google.com
, youtube.com, etc. If this is set, it should be exactly matched with
UserEvent.entity to get search results boosted by entity.
Corresponds to the JSON property entity
5601 5602 5603 |
# File 'lib/google/apis/retail_v2/classes.rb', line 5601 def entity @entity end |
#facet_specs ⇒ Array<Google::Apis::RetailV2::GoogleCloudRetailV2SearchRequestFacetSpec>
Facet specifications for faceted search. If empty, no facets are returned. A
maximum of 200 values are allowed. Otherwise, an INVALID_ARGUMENT error is
returned.
Corresponds to the JSON property facetSpecs
5608 5609 5610 |
# File 'lib/google/apis/retail_v2/classes.rb', line 5608 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. For more information, see Filter. If this field is
unrecognizable, an INVALID_ARGUMENT is returned.
Corresponds to the JSON property filter
5617 5618 5619 |
# File 'lib/google/apis/retail_v2/classes.rb', line 5617 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. For more information, see Requirements for labels in the
Resource Manager documentation.
Corresponds to the JSON property labels
5633 5634 5635 |
# File 'lib/google/apis/retail_v2/classes.rb', line 5633 def labels @labels end |
#language_code ⇒ String
Optional. The BCP-47 language code, such as "en-US" or "sr-Latn" list. For more information, see
Standardized codes. This field helps to better
interpret the query. If a value isn't specified, the query language code is
automatically detected, which may not be accurate.
Corresponds to the JSON property languageCode
5642 5643 5644 |
# File 'lib/google/apis/retail_v2/classes.rb', line 5642 def language_code @language_code 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
5650 5651 5652 |
# File 'lib/google/apis/retail_v2/classes.rb', line 5650 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. For more information, see Order. If this field is
unrecognizable, an INVALID_ARGUMENT is returned.
Corresponds to the JSON property orderBy
5659 5660 5661 |
# File 'lib/google/apis/retail_v2/classes.rb', line 5659 def order_by @order_by end |
#page_categories ⇒ Array<String>
Optional. The categories associated with a category page. Must be set for
category navigation queries to achieve good search quality. The format should
be the same as UserEvent.page_categories; To represent the full path of
category, use '>' sign, with one space on each side, to separate different
hierarchies. If '>' is part of the category name, replace it with other
character(s). Category pages include special pages such as sales or promotions.
For instance, a special sale page may have the category hierarchy: "
pageCategories" : ["Sales > 2017 Black Friday Deals"].
Corresponds to the JSON property pageCategories
5671 5672 5673 |
# File 'lib/google/apis/retail_v2/classes.rb', line 5671 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
5678 5679 5680 |
# File 'lib/google/apis/retail_v2/classes.rb', line 5678 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
5687 5688 5689 |
# File 'lib/google/apis/retail_v2/classes.rb', line 5687 def page_token @page_token end |
#personalization_spec ⇒ Google::Apis::RetailV2::GoogleCloudRetailV2SearchRequestPersonalizationSpec
The specification for personalization.
Corresponds to the JSON property personalizationSpec
5692 5693 5694 |
# File 'lib/google/apis/retail_v2/classes.rb', line 5692 def personalization_spec @personalization_spec end |
#place_id ⇒ String
Optional. An id corresponding to a place, such as a store id or region id.
When specified, we use the price from the local inventory with the matching
product's LocalInventory.place_id for revenue optimization. Note, the currency
of the local inventory's price must match the currency of the product's price.
Corresponds to the JSON property placeId
5700 5701 5702 |
# File 'lib/google/apis/retail_v2/classes.rb', line 5700 def place_id @place_id 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
5706 5707 5708 |
# File 'lib/google/apis/retail_v2/classes.rb', line 5706 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
5711 5712 5713 |
# File 'lib/google/apis/retail_v2/classes.rb', line 5711 def query_expansion_spec @query_expansion_spec end |
#region_code ⇒ String
Optional. The Unicode country/region code (CLDR) of a location, such as "US"
and "419" list. For more information, see Standardized codes. If set, then results will be boosted based on the
region_code provided.
Corresponds to the JSON property regionCode
5720 5721 5722 |
# File 'lib/google/apis/retail_v2/classes.rb', line 5720 def region_code @region_code 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
5726 5727 5728 |
# File 'lib/google/apis/retail_v2/classes.rb', line 5726 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
5731 5732 5733 |
# File 'lib/google/apis/retail_v2/classes.rb', line 5731 def spell_correction_spec @spell_correction_spec end |
#tile_navigation_spec ⇒ Google::Apis::RetailV2::GoogleCloudRetailV2SearchRequestTileNavigationSpec
This field specifies tile navigation related parameters.
Corresponds to the JSON property tileNavigationSpec
5736 5737 5738 |
# File 'lib/google/apis/retail_v2/classes.rb', line 5736 def @tile_navigation_spec end |
#user_attributes ⇒ Hash<String,Google::Apis::RetailV2::GoogleCloudRetailV2StringList>
Optional. The user attributes that could be used for personalization of search
results. * Populate at most 100 key-value pairs per query. * Only supports
string keys and repeated string values. * Duplicate keys are not allowed
within a single query. Example: user_attributes: [ key: "pets" value
values: "dog" values: "cat" , key: "state" value values: "CA" ]
Corresponds to the JSON property userAttributes
5745 5746 5747 |
# File 'lib/google/apis/retail_v2/classes.rb', line 5745 def user_attributes @user_attributes end |
#user_info ⇒ Google::Apis::RetailV2::GoogleCloudRetailV2UserInfo
Information of an end user.
Corresponds to the JSON property userInfo
5750 5751 5752 |
# File 'lib/google/apis/retail_v2/classes.rb', line 5750 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
5780 5781 5782 |
# File 'lib/google/apis/retail_v2/classes.rb', line 5780 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
5790 5791 5792 |
# File 'lib/google/apis/retail_v2/classes.rb', line 5790 def visitor_id @visitor_id end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
5797 5798 5799 5800 5801 5802 5803 5804 5805 5806 5807 5808 5809 5810 5811 5812 5813 5814 5815 5816 5817 5818 5819 5820 5821 5822 5823 5824 5825 |
# File 'lib/google/apis/retail_v2/classes.rb', line 5797 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) @conversational_search_spec = args[:conversational_search_spec] if args.key?(:conversational_search_spec) @dynamic_facet_spec = args[:dynamic_facet_spec] if args.key?(:dynamic_facet_spec) @entity = args[:entity] if args.key?(:entity) @facet_specs = args[:facet_specs] if args.key?(:facet_specs) @filter = args[:filter] if args.key?(:filter) @labels = args[:labels] if args.key?(:labels) @language_code = args[:language_code] if args.key?(:language_code) @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) @place_id = args[:place_id] if args.key?(:place_id) @query = args[:query] if args.key?(:query) @query_expansion_spec = args[:query_expansion_spec] if args.key?(:query_expansion_spec) @region_code = args[:region_code] if args.key?(:region_code) @search_mode = args[:search_mode] if args.key?(:search_mode) @spell_correction_spec = args[:spell_correction_spec] if args.key?(:spell_correction_spec) @tile_navigation_spec = args[:tile_navigation_spec] if args.key?(:tile_navigation_spec) @user_attributes = args[:user_attributes] if args.key?(:user_attributes) @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 |