Discovery Engine v1beta API - Class SearchRequest (1.0.0-beta06)

public sealed class SearchRequest : IMessage<SearchRequest>, IEquatable<SearchRequest>, IDeepCloneable<SearchRequest>, IBufferMessage, IMessage, IPageRequest

Reference documentation and code samples for the Discovery Engine v1beta API class SearchRequest.

Request message for [SearchService.Search][google.cloud.discoveryengine.v1beta.SearchService.Search] method.

Inheritance

object > SearchRequest

Namespace

Google.Cloud.DiscoveryEngine.V1Beta

Assembly

Google.Cloud.DiscoveryEngine.V1Beta.dll

Constructors

SearchRequest()

public SearchRequest()

SearchRequest(SearchRequest)

public SearchRequest(SearchRequest other)
Parameter
NameDescription
otherSearchRequest

Properties

BoostSpec

public SearchRequest.Types.BoostSpec BoostSpec { get; set; }

Boost specification to boost certain documents.

Property Value
TypeDescription
SearchRequestTypesBoostSpec

Branch

public string Branch { get; set; }

The branch resource name, such as projects/*/locations/global/collections/default_collection/dataStores/default_data_store/branches/0.

Use default_branch as the branch ID or leave this field empty, to search documents under the default branch.

Property Value
TypeDescription
string

BranchAsBranchName

public BranchName BranchAsBranchName { get; set; }

BranchName-typed view over the Branch resource name property.

Property Value
TypeDescription
BranchName

ContentSearchSpec

public SearchRequest.Types.ContentSearchSpec ContentSearchSpec { get; set; }

The content search spec that configs the desired behavior of content search.

Property Value
TypeDescription
SearchRequestTypesContentSearchSpec

FacetSpecs

public RepeatedField<SearchRequest.Types.FacetSpec> FacetSpecs { get; }

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.

Property Value
TypeDescription
RepeatedFieldSearchRequestTypesFacetSpec

Filter

public string Filter { get; set; }

The filter syntax consists of an expression language for constructing a predicate from one or more fields of the documents being filtered. Filter expression is case-sensitive.

If this field is unrecognizable, an INVALID_ARGUMENT is returned.

Property Value
TypeDescription
string

Offset

public int Offset { get; set; }

A 0-indexed integer that specifies the current offset (that is, starting result location, amongst the [Document][google.cloud.discoveryengine.v1beta.Document]s deemed by the API as relevant) in search results. This field is only considered if [page_token][google.cloud.discoveryengine.v1beta.SearchRequest.page_token] is unset.

If this field is negative, an INVALID_ARGUMENT is returned.

Property Value
TypeDescription
int

OrderBy

public string OrderBy { get; set; }

The order in which documents are returned. Document can be ordered by a field in an [Document][google.cloud.discoveryengine.v1beta.Document] object. Leave it unset if ordered by relevance. OrderBy expression is case-sensitive.

If this field is unrecognizable, an INVALID_ARGUMENT is returned.

Property Value
TypeDescription
string

PageSize

public int PageSize { get; set; }

Maximum number of [Document][google.cloud.discoveryengine.v1beta.Document]s to return. If unspecified, defaults to a reasonable value. The maximum allowed value is 100. Values above 100 will be coerced to 100.

If this field is negative, an INVALID_ARGUMENT is returned.

Property Value
TypeDescription
int

PageToken

public string PageToken { get; set; }

A page token received from a previous [SearchService.Search][google.cloud.discoveryengine.v1beta.SearchService.Search] call. Provide this to retrieve the subsequent page.

When paginating, all other parameters provided to [SearchService.Search][google.cloud.discoveryengine.v1beta.SearchService.Search] must match the call that provided the page token. Otherwise, an INVALID_ARGUMENT error is returned.

Property Value
TypeDescription
string

Params

public MapField<string, Value> Params { get; }

Additional search parameters.

For public website search only, supported values are:

  • user_country_code: string. Default empty. If set to non-empty, results are restricted or boosted based on the location provided.
  • search_type: double. Default empty. Enables non-webpage searching depending on the value. The only valid non-default value is 1, which enables image searching.
Property Value
TypeDescription
MapFieldstringValue

Query

public string Query { get; set; }

Raw search query.

Property Value
TypeDescription
string

QueryExpansionSpec

public SearchRequest.Types.QueryExpansionSpec QueryExpansionSpec { get; set; }

The query expansion specification that specifies the conditions under which query expansion will occur.

Property Value
TypeDescription
SearchRequestTypesQueryExpansionSpec

SafeSearch

public bool SafeSearch { get; set; }

Whether to turn on safe search. This is only supported for [ContentConfig.PUBLIC_WEBSITE][].

Property Value
TypeDescription
bool

ServingConfig

public string ServingConfig { get; set; }

Required. The resource name of the Search serving config, such as projects/*/locations/global/collections/default_collection/dataStores/default_data_store/servingConfigs/default_serving_config. This field is used to identify the serving configuration name, set of models used to make the search.

Property Value
TypeDescription
string

ServingConfigAsServingConfigName

public ServingConfigName ServingConfigAsServingConfigName { get; set; }

ServingConfigName-typed view over the ServingConfig resource name property.

Property Value
TypeDescription
ServingConfigName

SpellCorrectionSpec

public SearchRequest.Types.SpellCorrectionSpec SpellCorrectionSpec { get; set; }

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

Property Value
TypeDescription
SearchRequestTypesSpellCorrectionSpec

UserInfo

public UserInfo UserInfo { get; set; }

Information about the end user. Highly recommended for analytics. The user_agent string in UserInfo will be used to deduce device_type for analytics.

Property Value
TypeDescription
UserInfo

UserLabels

public MapField<string, string> UserLabels { get; }

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

Property Value
TypeDescription
MapFieldstringstring

UserPseudoId

public string UserPseudoId { get; set; }

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 field should NOT have a fixed value such as unknown_visitor.

This should be the same identifier as [UserEvent.user_pseudo_id][google.cloud.discoveryengine.v1beta.UserEvent.user_pseudo_id] and [CompleteQueryRequest.user_pseudo_id][google.cloud.discoveryengine.v1beta.CompleteQueryRequest.user_pseudo_id]

The field must be a UTF-8 encoded string with a length limit of 128 characters. Otherwise, an INVALID_ARGUMENT error is returned.

Property Value
TypeDescription
string