Class: Google::Apis::RetailV2alpha::GoogleCloudRetailV2alphaSearchRequest

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/retail_v2alpha/classes.rb,
lib/google/apis/retail_v2alpha/representations.rb,
lib/google/apis/retail_v2alpha/representations.rb

Overview

Request message for SearchService.Search method.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ GoogleCloudRetailV2alphaSearchRequest

Returns a new instance of GoogleCloudRetailV2alphaSearchRequest.



2980
2981
2982
# File 'lib/google/apis/retail_v2alpha/classes.rb', line 2980

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#boost_specGoogle::Apis::RetailV2alpha::GoogleCloudRetailV2alphaSearchRequestBoostSpec

Boost specification to boost certain items. Corresponds to the JSON property boostSpec



2836
2837
2838
# File 'lib/google/apis/retail_v2alpha/classes.rb', line 2836

def boost_spec
  @boost_spec
end

#branchString

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

Returns:

  • (String)


2843
2844
2845
# File 'lib/google/apis/retail_v2alpha/classes.rb', line 2843

def branch
  @branch
end

#canonical_filterString

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

Returns:

  • (String)


2853
2854
2855
# File 'lib/google/apis/retail_v2alpha/classes.rb', line 2853

def canonical_filter
  @canonical_filter
end

#dynamic_facet_specGoogle::Apis::RetailV2alpha::GoogleCloudRetailV2alphaSearchRequestDynamicFacetSpec

The specifications of dynamically generated facets. Corresponds to the JSON property dynamicFacetSpec



2858
2859
2860
# File 'lib/google/apis/retail_v2alpha/classes.rb', line 2858

def dynamic_facet_spec
  @dynamic_facet_spec
end

#facet_specsArray<Google::Apis::RetailV2alpha::GoogleCloudRetailV2alphaSearchRequestFacetSpec>

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



2865
2866
2867
# File 'lib/google/apis/retail_v2alpha/classes.rb', line 2865

def facet_specs
  @facet_specs
end

#filterString

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

Returns:

  • (String)


2874
2875
2876
# File 'lib/google/apis/retail_v2alpha/classes.rb', line 2874

def filter
  @filter
end

#offsetFixnum

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

Returns:

  • (Fixnum)


2882
2883
2884
# File 'lib/google/apis/retail_v2alpha/classes.rb', line 2882

def offset
  @offset
end

#order_byString

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

Returns:

  • (String)


2891
2892
2893
# File 'lib/google/apis/retail_v2alpha/classes.rb', line 2891

def order_by
  @order_by
end

#page_categoriesArray<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

Returns:

  • (Array<String>)


2902
2903
2904
# File 'lib/google/apis/retail_v2alpha/classes.rb', line 2902

def page_categories
  @page_categories
end

#page_sizeFixnum

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

  1. If this field is negative, an INVALID_ARGUMENT is returned. Corresponds to the JSON property pageSize

Returns:

  • (Fixnum)


2909
2910
2911
# File 'lib/google/apis/retail_v2alpha/classes.rb', line 2909

def page_size
  @page_size
end

#page_tokenString

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

Returns:

  • (String)


2918
2919
2920
# File 'lib/google/apis/retail_v2alpha/classes.rb', line 2918

def page_token
  @page_token
end

#queryString

Raw search query. Corresponds to the JSON property query

Returns:

  • (String)


2923
2924
2925
# File 'lib/google/apis/retail_v2alpha/classes.rb', line 2923

def query
  @query
end

#query_expansion_specGoogle::Apis::RetailV2alpha::GoogleCloudRetailV2alphaSearchRequestQueryExpansionSpec

Specification to determine under which conditions query expansion should occur. Corresponds to the JSON property queryExpansionSpec



2928
2929
2930
# File 'lib/google/apis/retail_v2alpha/classes.rb', line 2928

def query_expansion_spec
  @query_expansion_spec
end

#relevance_thresholdString

The relevance threshold of the search results. Defaults to RelevanceThreshold. HIGH, which means only the most relevant results are shown, and the least number of results are returned. See more details at this user guide. Corresponds to the JSON property relevanceThreshold

Returns:

  • (String)


2936
2937
2938
# File 'lib/google/apis/retail_v2alpha/classes.rb', line 2936

def relevance_threshold
  @relevance_threshold
end

#user_infoGoogle::Apis::RetailV2alpha::GoogleCloudRetailV2alphaUserInfo

Information of an end user. Corresponds to the JSON property userInfo



2941
2942
2943
# File 'lib/google/apis/retail_v2alpha/classes.rb', line 2941

def 
  @user_info
end

#variant_rollup_keysArray<String>

The keys to fetch and rollup the matching variant Products attributes. The attributes from all the matching variant Products are merged and de-duplicated. Notice that rollup variant Products attributes will lead to extra query latency. Maximum number of keys is 10. For Product.fulfillment_info, a fulfillment type and a fulfillment ID must be provided in the format of " fulfillmentType.filfillmentId". E.g., in "pickupInStore.store123", " pickupInStore" is fulfillment type and "store123" is the store ID. Supported keys are: * colorFamilies * price * originalPrice * discount * attributes.key, where key is any key in the Product.attributes map. * pickupInStore.id, where id is any FulfillmentInfo.ids for type FulfillmentInfo.Type.PICKUP_IN_STORE. * shipToStore.id, where id is any FulfillmentInfo.ids for type FulfillmentInfo. Type.SHIP_TO_STORE. * sameDayDelivery.id, where id is any FulfillmentInfo.ids for type FulfillmentInfo.Type.SAME_DAY_DELIVERY. * nextDayDelivery.id, where id is any FulfillmentInfo.ids for type FulfillmentInfo.Type.NEXT_DAY_DELIVERY.

  • customFulfillment1.id, where id is any FulfillmentInfo.ids for type FulfillmentInfo.Type.CUSTOM_TYPE_1. * customFulfillment2.id, where id is any FulfillmentInfo.ids for type FulfillmentInfo.Type.CUSTOM_TYPE_2. * customFulfillment3.id, where id is any FulfillmentInfo.ids for type FulfillmentInfo.Type.CUSTOM_TYPE_3. * customFulfillment4.id, where id is any FulfillmentInfo.ids for type FulfillmentInfo.Type.CUSTOM_TYPE_4. * customFulfillment5.id, where id is any FulfillmentInfo.ids for type 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

Returns:

  • (Array<String>)


2968
2969
2970
# File 'lib/google/apis/retail_v2alpha/classes.rb', line 2968

def variant_rollup_keys
  @variant_rollup_keys
end

#visitor_idString

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. 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

Returns:

  • (String)


2978
2979
2980
# File 'lib/google/apis/retail_v2alpha/classes.rb', line 2978

def visitor_id
  @visitor_id
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



2985
2986
2987
2988
2989
2990
2991
2992
2993
2994
2995
2996
2997
2998
2999
3000
3001
3002
3003
# File 'lib/google/apis/retail_v2alpha/classes.rb', line 2985

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)
  @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)
  @query = args[:query] if args.key?(:query)
  @query_expansion_spec = args[:query_expansion_spec] if args.key?(:query_expansion_spec)
  @relevance_threshold = args[:relevance_threshold] if args.key?(:relevance_threshold)
  @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