public sealed class SearchResponse.Types.SearchResult : IMessage<SearchResponse.Types.SearchResult>, IEquatable<SearchResponse.Types.SearchResult>, IDeepCloneable<SearchResponse.Types.SearchResult>, IBufferMessage, IMessage
Reference documentation and code samples for the Retail v2 API class SearchResponse.Types.SearchResult.
Represents the search results.
Implements
IMessageSearchResponseTypesSearchResult, IEquatableSearchResponseTypesSearchResult, IDeepCloneableSearchResponseTypesSearchResult, IBufferMessage, IMessageNamespace
Google.Cloud.Retail.V2Assembly
Google.Cloud.Retail.V2.dll
Constructors
SearchResult()
public SearchResult()
SearchResult(SearchResult)
public SearchResult(SearchResponse.Types.SearchResult other)
Parameter | |
---|---|
Name | Description |
other |
SearchResponseTypesSearchResult |
Properties
Id
public string Id { get; set; }
[Product.id][google.cloud.retail.v2.Product.id] of the searched [Product][google.cloud.retail.v2.Product].
Property Value | |
---|---|
Type | Description |
string |
MatchingVariantCount
public int MatchingVariantCount { get; set; }
The count of matched [variant][google.cloud.retail.v2.Product.Type.VARIANT] [Product][google.cloud.retail.v2.Product]s.
Property Value | |
---|---|
Type | Description |
int |
MatchingVariantFields
public MapField<string, FieldMask> MatchingVariantFields { get; }
If a [variant][google.cloud.retail.v2.Product.Type.VARIANT] [Product][google.cloud.retail.v2.Product] matches the search query, this map indicates which [Product][google.cloud.retail.v2.Product] fields are matched. The key is the [Product.name][google.cloud.retail.v2.Product.name], the value is a field mask of the matched [Product][google.cloud.retail.v2.Product] fields. If matched attributes cannot be determined, this map will be empty.
For example, a key "sku1" with field mask "products.color_info" indicates there is a match between "sku1" [ColorInfo][google.cloud.retail.v2.ColorInfo] and the query.
Property Value | |
---|---|
Type | Description |
MapFieldstringFieldMask |
PersonalLabels
public RepeatedField<string> PersonalLabels { get; }
Specifies previous events related to this product for this user based on [UserEvent][google.cloud.retail.v2.UserEvent] with same [SearchRequest.visitor_id][google.cloud.retail.v2.SearchRequest.visitor_id] or [UserInfo.user_id][google.cloud.retail.v2.UserInfo.user_id].
This is set only when [SearchRequest.PersonalizationSpec.mode][google.cloud.retail.v2.SearchRequest.PersonalizationSpec.mode] is [SearchRequest.PersonalizationSpec.Mode.AUTO][google.cloud.retail.v2.SearchRequest.PersonalizationSpec.Mode.AUTO].
Possible values:
purchased
: Indicates that this product has been purchased before.
Property Value | |
---|---|
Type | Description |
RepeatedFieldstring |
Product
public Product Product { get; set; }
The product data snippet in the search response. Only [Product.name][google.cloud.retail.v2.Product.name] is guaranteed to be populated.
[Product.variants][google.cloud.retail.v2.Product.variants] contains the product variants that match the search query. If there are multiple product variants matching the query, top 5 most relevant product variants are returned and ordered by relevancy.
If relevancy can be deternmined, use [matching_variant_fields][google.cloud.retail.v2.SearchResponse.SearchResult.matching_variant_fields] to look up matched product variants fields. If relevancy cannot be determined, e.g. when searching "shoe" all products in a shoe product can be a match, 5 product variants are returned but order is meaningless.
Property Value | |
---|---|
Type | Description |
Product |
VariantRollupValues
public MapField<string, Value> VariantRollupValues { get; }
The rollup matching [variant][google.cloud.retail.v2.Product.Type.VARIANT] [Product][google.cloud.retail.v2.Product] attributes. The key is one of the [SearchRequest.variant_rollup_keys][google.cloud.retail.v2.SearchRequest.variant_rollup_keys]. The values are the merged and de-duplicated [Product][google.cloud.retail.v2.Product] attributes. Notice that the rollup values are respect filter. For example, when filtering by "colorFamilies:ANY("red")" and rollup "colorFamilies", only "red" is returned.
For textual and numerical attributes, the rollup values is a list of string or double values with type [google.protobuf.ListValue][google.protobuf.ListValue]. For example, if there are two variants with colors "red" and "blue", the rollup values are
{ key: "colorFamilies"
value {
list_value {
values { string_value: "red" }
values { string_value: "blue" }
}
}
}
For [FulfillmentInfo][google.cloud.retail.v2.FulfillmentInfo], the rollup
values is a double value with type
[google.protobuf.Value][google.protobuf.Value]. For example,
{key: "pickupInStore.store1" value { number_value: 10 }}
means a there
are 10 variants in this product are available in the store "store1".
Property Value | |
---|---|
Type | Description |
MapFieldstringValue |