Google Cloud Retail V2 Client - Class SearchRequest (1.0.1)

Reference documentation and code samples for the Google Cloud Retail V2 Client class SearchRequest.

Request message for SearchService.Search method.

Generated from protobuf message google.cloud.retail.v2.SearchRequest

Methods

__construct

Constructor.

Parameters
Name
Description
data
array

Optional. Data for populating the Message object.

↳ placement
string

Required. The resource name of the Retail Search serving config, such as projects/*/locations/global/catalogs/default_catalog/servingConfigs/default_serving_config or the name of the legacy placement resource, such as projects/*/locations/global/catalogs/default_catalog/placements/default_search . This field is used to identify the serving configuration name and the set of models that will be used to make the search.

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

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

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

↳ user_info
↳ page_size
int

Maximum number of Product s to return. If unspecified, defaults to a reasonable value. The maximum allowed value is 120. Values above 120 will be coerced to 120. If this field is negative, an INVALID_ARGUMENT is returned.

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

↳ offset
int

A 0-indexed integer that specifies the current offset (that is, starting result location, amongst the Product s 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.

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

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

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

↳ facet_specs
array< Google\Cloud\Retail\V2\SearchRequest\FacetSpec >

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.

↳ dynamic_facet_spec
Google\Cloud\Retail\V2\SearchRequest\DynamicFacetSpec

Deprecated. Refer to https://cloud.google.com/retail/docs/configs#dynamic to enable dynamic facets. Do not set this field. The specification for dynamically generated facets. Notice that only textual facets can be dynamically generated.

↳ boost_spec
Google\Cloud\Retail\V2\SearchRequest\BoostSpec

Boost specification to boost certain products. See more details at this user guide . Notice that if both ServingConfig.boost_control_ids and SearchRequest.boost_spec are set, the boost conditions from both places are evaluated. If a search request matches multiple boost conditions, the final boost score is equal to the sum of the boost scores from all matched boost conditions.

↳ query_expansion_spec
Google\Cloud\Retail\V2\SearchRequest\QueryExpansionSpec

The query expansion specification that specifies the conditions under which query expansion will occur. See more details at this user guide .

↳ variant_rollup_keys
array

The keys to fetch and rollup the matching variant Product s attributes, FulfillmentInfo or LocalInventory s attributes. The attributes from all the matching variant Product s or LocalInventory s 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.

↳ page_categories
array

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

↳ search_mode
int

The search mode of the search request. If not specified, a single search request triggers both product search and faceted search.

↳ labels
array|Google\Protobuf\Internal\MapField

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.

↳ spell_correction_spec
Google\Cloud\Retail\V2\SearchRequest\SpellCorrectionSpec

The spell correction specification that specifies the mode under which spell correction will take effect.

getPlacement

Required. The resource name of the Retail Search serving config, such as projects/*/locations/global/catalogs/default_catalog/servingConfigs/default_serving_config or the name of the legacy placement resource, such as projects/*/locations/global/catalogs/default_catalog/placements/default_search .

This field is used to identify the serving configuration name and the set of models that will be used to make the search.

Generated from protobuf field string placement = 1 [(.google.api.field_behavior) = REQUIRED];

Returns
Type
Description
string

setPlacement

Required. The resource name of the Retail Search serving config, such as projects/*/locations/global/catalogs/default_catalog/servingConfigs/default_serving_config or the name of the legacy placement resource, such as projects/*/locations/global/catalogs/default_catalog/placements/default_search .

This field is used to identify the serving configuration name and the set of models that will be used to make the search.

Generated from protobuf field string placement = 1 [(.google.api.field_behavior) = REQUIRED];

Parameter
Name
Description
var
string
Returns
Type
Description
$this

getBranch

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.

Generated from protobuf field string branch = 2 [(.google.api.resource_reference) = {

Returns
Type
Description
string

setBranch

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.

Generated from protobuf field string branch = 2 [(.google.api.resource_reference) = {

Parameter
Name
Description
var
string
Returns
Type
Description
$this

getQuery

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 .

Generated from protobuf field string query = 3;

Returns
Type
Description
string

setQuery

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 .

Generated from protobuf field string query = 3;

Parameter
Name
Description
var
string
Returns
Type
Description
$this

getVisitorId

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.

Generated from protobuf field string visitor_id = 4 [(.google.api.field_behavior) = REQUIRED];

Returns
Type
Description
string

setVisitorId

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.

Generated from protobuf field string visitor_id = 4 [(.google.api.field_behavior) = REQUIRED];

Parameter
Name
Description
var
string
Returns
Type
Description
$this

getUserInfo

User information.

Generated from protobuf field .google.cloud.retail.v2.UserInfo user_info = 5;

Returns
Type
Description

hasUserInfo

clearUserInfo

setUserInfo

User information.

Generated from protobuf field .google.cloud.retail.v2.UserInfo user_info = 5;

Parameter
Name
Description
Returns
Type
Description
$this

getPageSize

Maximum number of Product s to return. If unspecified, defaults to a reasonable value. The maximum allowed value is

  1. Values above 120 will be coerced to 120.

If this field is negative, an INVALID_ARGUMENT is returned.

Generated from protobuf field int32 page_size = 7;

Returns
Type
Description
int

setPageSize

Maximum number of Product s to return. If unspecified, defaults to a reasonable value. The maximum allowed value is

  1. Values above 120 will be coerced to 120.

If this field is negative, an INVALID_ARGUMENT is returned.

Generated from protobuf field int32 page_size = 7;

Parameter
Name
Description
var
int
Returns
Type
Description
$this

getPageToken

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.

Generated from protobuf field string page_token = 8;

Returns
Type
Description
string

setPageToken

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.

Generated from protobuf field string page_token = 8;

Parameter
Name
Description
var
string
Returns
Type
Description
$this

getOffset

A 0-indexed integer that specifies the current offset (that is, starting result location, amongst the Product s 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.

Generated from protobuf field int32 offset = 9;

Returns
Type
Description
int

setOffset

A 0-indexed integer that specifies the current offset (that is, starting result location, amongst the Product s 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.

Generated from protobuf field int32 offset = 9;

Parameter
Name
Description
var
int
Returns
Type
Description
$this

getFilter

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.

Generated from protobuf field string filter = 10;

Returns
Type
Description
string

setFilter

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.

Generated from protobuf field string filter = 10;

Parameter
Name
Description
var
string
Returns
Type
Description
$this

getCanonicalFilter

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.

Generated from protobuf field string canonical_filter = 28;

Returns
Type
Description
string

setCanonicalFilter

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.

Generated from protobuf field string canonical_filter = 28;

Parameter
Name
Description
var
string
Returns
Type
Description
$this

getOrderBy

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.

Generated from protobuf field string order_by = 11;

Returns
Type
Description
string

setOrderBy

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.

Generated from protobuf field string order_by = 11;

Parameter
Name
Description
var
string
Returns
Type
Description
$this

getFacetSpecs

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.

Generated from protobuf field repeated .google.cloud.retail.v2.SearchRequest.FacetSpec facet_specs = 12;

Returns
Type
Description
Google\Protobuf\Internal\RepeatedField

setFacetSpecs

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.

Generated from protobuf field repeated .google.cloud.retail.v2.SearchRequest.FacetSpec facet_specs = 12;

Parameter
Name
Description
Returns
Type
Description
$this

getDynamicFacetSpec

Deprecated. Refer to https://cloud.google.com/retail/docs/configs#dynamic to enable dynamic facets. Do not set this field.

The specification for dynamically generated facets. Notice that only textual facets can be dynamically generated.

Generated from protobuf field .google.cloud.retail.v2.SearchRequest.DynamicFacetSpec dynamic_facet_spec = 21 [deprecated = true];

hasDynamicFacetSpec

clearDynamicFacetSpec

setDynamicFacetSpec

Deprecated. Refer to https://cloud.google.com/retail/docs/configs#dynamic to enable dynamic facets. Do not set this field.

The specification for dynamically generated facets. Notice that only textual facets can be dynamically generated.

Generated from protobuf field .google.cloud.retail.v2.SearchRequest.DynamicFacetSpec dynamic_facet_spec = 21 [deprecated = true];

Returns
Type
Description
$this

getBoostSpec

Boost specification to boost certain products. See more details at this user guide .

Notice that if both ServingConfig.boost_control_ids and SearchRequest.boost_spec are set, the boost conditions from both places are evaluated. If a search request matches multiple boost conditions, the final boost score is equal to the sum of the boost scores from all matched boost conditions.

Generated from protobuf field .google.cloud.retail.v2.SearchRequest.BoostSpec boost_spec = 13;

Returns
Type
Description

hasBoostSpec

clearBoostSpec

setBoostSpec

Boost specification to boost certain products. See more details at this user guide .

Notice that if both ServingConfig.boost_control_ids and SearchRequest.boost_spec are set, the boost conditions from both places are evaluated. If a search request matches multiple boost conditions, the final boost score is equal to the sum of the boost scores from all matched boost conditions.

Generated from protobuf field .google.cloud.retail.v2.SearchRequest.BoostSpec boost_spec = 13;

Parameter
Name
Description
Returns
Type
Description
$this

getQueryExpansionSpec

The query expansion specification that specifies the conditions under which query expansion will occur. See more details at this user guide .

Generated from protobuf field .google.cloud.retail.v2.SearchRequest.QueryExpansionSpec query_expansion_spec = 14;

hasQueryExpansionSpec

clearQueryExpansionSpec

setQueryExpansionSpec

The query expansion specification that specifies the conditions under which query expansion will occur. See more details at this user guide .

Generated from protobuf field .google.cloud.retail.v2.SearchRequest.QueryExpansionSpec query_expansion_spec = 14;

Returns
Type
Description
$this

getVariantRollupKeys

The keys to fetch and rollup the matching variant Product s attributes, FulfillmentInfo or LocalInventory s attributes. The attributes from all the matching variant Product s or LocalInventory s 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:

Generated from protobuf field repeated string variant_rollup_keys = 17;

Returns
Type
Description
Google\Protobuf\Internal\RepeatedField

setVariantRollupKeys

The keys to fetch and rollup the matching variant Product s attributes, FulfillmentInfo or LocalInventory s attributes. The attributes from all the matching variant Product s or LocalInventory s 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:

Generated from protobuf field repeated string variant_rollup_keys = 17;

Parameter
Name
Description
var
string[]
Returns
Type
Description
$this

getPageCategories

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

Generated from protobuf field repeated string page_categories = 23;

Returns
Type
Description
Google\Protobuf\Internal\RepeatedField

setPageCategories

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

Generated from protobuf field repeated string page_categories = 23;

Parameter
Name
Description
var
string[]
Returns
Type
Description
$this

getSearchMode

The search mode of the search request. If not specified, a single search request triggers both product search and faceted search.

Generated from protobuf field .google.cloud.retail.v2.SearchRequest.SearchMode search_mode = 31;

Returns
Type
Description
int

setSearchMode

The search mode of the search request. If not specified, a single search request triggers both product search and faceted search.

Generated from protobuf field .google.cloud.retail.v2.SearchRequest.SearchMode search_mode = 31;

Parameter
Name
Description
var
int
Returns
Type
Description
$this

getPersonalizationSpec

The specification for personalization.

Notice that if both ServingConfig.personalization_spec and SearchRequest.personalization_spec are set. SearchRequest.personalization_spec will override ServingConfig.personalization_spec .

Generated from protobuf field .google.cloud.retail.v2.SearchRequest.PersonalizationSpec personalization_spec = 32;

hasPersonalizationSpec

clearPersonalizationSpec

setPersonalizationSpec

The specification for personalization.

Notice that if both ServingConfig.personalization_spec and SearchRequest.personalization_spec are set. SearchRequest.personalization_spec will override ServingConfig.personalization_spec .

Generated from protobuf field .google.cloud.retail.v2.SearchRequest.PersonalizationSpec personalization_spec = 32;

Returns
Type
Description
$this

getLabels

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.

Generated from protobuf field map<string, string> labels = 34;

Returns
Type
Description
Google\Protobuf\Internal\MapField

setLabels

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.

Generated from protobuf field map<string, string> labels = 34;

Parameter
Name
Description
var
array|Google\Protobuf\Internal\MapField
Returns
Type
Description
$this

getSpellCorrectionSpec

The spell correction specification that specifies the mode under which spell correction will take effect.

Generated from protobuf field optional .google.cloud.retail.v2.SearchRequest.SpellCorrectionSpec spell_correction_spec = 35;

hasSpellCorrectionSpec

clearSpellCorrectionSpec

setSpellCorrectionSpec

The spell correction specification that specifies the mode under which spell correction will take effect.

Generated from protobuf field optional .google.cloud.retail.v2.SearchRequest.SpellCorrectionSpec spell_correction_spec = 35;

Returns
Type
Description
$this
Create a Mobile Website
View Site in Mobile | Classic
Share by: