BaseSearchRequestOptions interface
Parameters for filtering, sorting, faceting, paging, and other search query behaviors.
Properties
facets | The list of facet expressions to apply to the search query. Each facet expression contains a field name, optionally followed by a comma-separated list of name:value pairs. |
filter | The OData $filter expression to apply to the search query. |
highlight |
The comma-separated list of field names to use for hit highlights. Only searchable fields can be used for hit highlighting. |
highlight |
A string tag that is appended to hit highlights. Must be set with highlightPreTag. Default is </em>. |
highlight |
A string tag that is prepended to hit highlights. Must be set with highlightPostTag. Default is <em>. |
include |
A value that specifies whether to fetch the total count of results. Default is false. Setting this value to true may have a performance impact. Note that the count returned is an approximation. |
minimum |
A number between 0 and 100 indicating the percentage of the index that must be covered by a search query in order for the query to be reported as a success. This parameter can be useful for ensuring search availability even for services with only one replica. The default is 100. |
order |
The list of OData $orderby expressions by which to sort the results. Each expression can be either a field name or a call to either the geo.distance() or the search.score() functions. Each expression can be followed by asc to indicate ascending, or desc to indicate descending. The default is ascending order. Ties will be broken by the match scores of documents. If no $orderby is specified, the default sort order is descending by document match score. There can be at most 32 $orderby clauses. |
query |
A value that specifies the syntax of the search query. The default is 'simple'. Use 'full' if your query uses the Lucene query syntax. Possible values include: 'simple', 'full', 'semantic' |
scoring |
The list of parameter values to be used in scoring functions (for example, referencePointParameter) using the format name-values. For example, if the scoring profile defines a function with a parameter called 'mylocation' the parameter string would be "mylocation--122.2,44.8" (without the quotes). |
scoring |
The name of a scoring profile to evaluate match scores for matching documents in order to sort the results. |
scoring |
A value that specifies whether we want to calculate scoring statistics (such as document frequency) globally for more consistent scoring, or locally, for lower latency. Possible values include: 'Local', 'Global' |
search |
The comma-separated list of field names to which to scope the full-text search. When using fielded search (fieldName:searchExpression) in a full Lucene query, the field names of each fielded search expression take precedence over any field names listed in this parameter. |
search |
A value that specifies whether any or all of the search terms must be matched in order to count the document as a match. Possible values include: 'any', 'all' |
select | The list of fields to retrieve. If unspecified, all fields marked as retrievable in the schema are included. |
session |
A value to be used to create a sticky session, which can help to get more consistent results. As long as the same sessionId is used, a best-effort attempt will be made to target the same replica set. Be wary that reusing the same sessionID values repeatedly can interfere with the load balancing of the requests across replicas and adversely affect the performance of the search service. The value used as sessionId cannot start with a '_' character. |
skip | The number of search results to skip. This value cannot be greater than 100,000. If you need to scan documents in sequence, but cannot use skip due to this limitation, consider using orderby on a totally-ordered key and filter with a range query instead. |
top | The number of search results to retrieve. This can be used in conjunction with $skip to implement client-side paging of search results. If results are truncated due to server-side paging, the response will include a continuation token that can be used to issue another Search request for the next page of results. |
vector |
Defines options for vector search queries |
Property Details
facets
The list of facet expressions to apply to the search query. Each facet expression contains a field name, optionally followed by a comma-separated list of name:value pairs.
facets?: string[]
Property Value
string[]
filter
The OData $filter expression to apply to the search query.
filter?: string
Property Value
string
highlightFields
The comma-separated list of field names to use for hit highlights. Only searchable fields can be used for hit highlighting.
highlightFields?: string
Property Value
string
highlightPostTag
A string tag that is appended to hit highlights. Must be set with highlightPreTag. Default is </em>.
highlightPostTag?: string
Property Value
string
highlightPreTag
A string tag that is prepended to hit highlights. Must be set with highlightPostTag. Default is <em>.
highlightPreTag?: string
Property Value
string
includeTotalCount
A value that specifies whether to fetch the total count of results. Default is false. Setting this value to true may have a performance impact. Note that the count returned is an approximation.
includeTotalCount?: boolean
Property Value
boolean
minimumCoverage
A number between 0 and 100 indicating the percentage of the index that must be covered by a search query in order for the query to be reported as a success. This parameter can be useful for ensuring search availability even for services with only one replica. The default is 100.
minimumCoverage?: number
Property Value
number
orderBy
The list of OData $orderby expressions by which to sort the results. Each expression can be either a field name or a call to either the geo.distance() or the search.score() functions. Each expression can be followed by asc to indicate ascending, or desc to indicate descending. The default is ascending order. Ties will be broken by the match scores of documents. If no $orderby is specified, the default sort order is descending by document match score. There can be at most 32 $orderby clauses.
orderBy?: string[]
Property Value
string[]
queryType
A value that specifies the syntax of the search query. The default is 'simple'. Use 'full' if your query uses the Lucene query syntax. Possible values include: 'simple', 'full', 'semantic'
queryType?: QueryType
Property Value
scoringParameters
The list of parameter values to be used in scoring functions (for example, referencePointParameter) using the format name-values. For example, if the scoring profile defines a function with a parameter called 'mylocation' the parameter string would be "mylocation--122.2,44.8" (without the quotes).
scoringParameters?: string[]
Property Value
string[]
scoringProfile
The name of a scoring profile to evaluate match scores for matching documents in order to sort the results.
scoringProfile?: string
Property Value
string
scoringStatistics
A value that specifies whether we want to calculate scoring statistics (such as document frequency) globally for more consistent scoring, or locally, for lower latency. Possible values include: 'Local', 'Global'
scoringStatistics?: ScoringStatistics
Property Value
searchFields
The comma-separated list of field names to which to scope the full-text search. When using fielded search (fieldName:searchExpression) in a full Lucene query, the field names of each fielded search expression take precedence over any field names listed in this parameter.
searchFields?: SearchFieldArray<TModel>
Property Value
SearchFieldArray<TModel>
searchMode
A value that specifies whether any or all of the search terms must be matched in order to count the document as a match. Possible values include: 'any', 'all'
searchMode?: SearchMode
Property Value
select
The list of fields to retrieve. If unspecified, all fields marked as retrievable in the schema are included.
select?: SelectArray<TFields>
Property Value
SelectArray<TFields>
sessionId
A value to be used to create a sticky session, which can help to get more consistent results. As long as the same sessionId is used, a best-effort attempt will be made to target the same replica set. Be wary that reusing the same sessionID values repeatedly can interfere with the load balancing of the requests across replicas and adversely affect the performance of the search service. The value used as sessionId cannot start with a '_' character.
sessionId?: string
Property Value
string
skip
The number of search results to skip. This value cannot be greater than 100,000. If you need to scan documents in sequence, but cannot use skip due to this limitation, consider using orderby on a totally-ordered key and filter with a range query instead.
skip?: number
Property Value
number
top
The number of search results to retrieve. This can be used in conjunction with $skip to implement client-side paging of search results. If results are truncated due to server-side paging, the response will include a continuation token that can be used to issue another Search request for the next page of results.
top?: number
Property Value
number
vectorSearchOptions
Defines options for vector search queries
vectorSearchOptions?: VectorSearchOptions<TModel>
Property Value
VectorSearchOptions<TModel>