Get async search results

  • GET /_async_search/{id}
Auth

Retrieve the results of a previously submitted asynchronous search request. If the Elasticsearch security features are enabled, access to the results of a specific async search is restricted to the user or API key that submitted it.

Path parameters

id string required

A unique identifier for the async search.

Query parameters

keep_alive string

The length of time that the async search should be available in the cluster. When not specified, the keep_alive set with the corresponding submit async request will be used. Otherwise, it is possible to override the value and extend the validity of the request. When this period expires, the search, if still running, is cancelled. If the search is completed, its saved results are deleted.

typed_keys boolean

Specify whether aggregation and suggester names should be prefixed by their respective types in the response

wait_for_completion_timeout string

Specifies to wait for the search to be completed up until the provided timeout. Final results will be returned if available before the timeout expires, otherwise the currently available results will be returned once the timeout expires. By default no timeout is set meaning that the currently available results will be returned without any additional wait.

return_intermediate_results boolean

Specifies whether the response should contain intermediate results if the query is still running when the wait_for_completion_timeout expires or if no wait_for_completion_timeout is specified. If true and the search is still running, the search response will include any hits and partial aggregations that are available. If false and the search is still running, the search response will not include any hits (but possibly include total hits) nor will include any partial aggregations. When not specified, the intermediate results are returned for running queries.

Responses

application/json
id string
is_partial boolean required

When the query is no longer running, this property indicates whether the search failed or was successfully completed on all shards. While the query is running, is_partial is always set to true.

is_running boolean required

Indicates whether the search is still running or has completed.

Note

If the search failed after some shards returned their results or the node that is coordinating the async search dies, results may be partial even though is_running is false.

expiration_time union oneOf

Indicates when the async search will expire.

One of: string or number
expiration_time_in_millis number required
start_time union oneOf
One of: string or number
start_time_in_millis number required
completion_time union oneOf

Indicates when the async search completed. It is present only when the search has completed.

One of: string or number
completion_time_in_millis number
error object
type string required

The type of error

reason union string nullable

A human-readable explanation of the error, in English.

One of: string
stack_trace string

The server stack trace. Present only if the error_trace=true parameter was sent with the request.

caused_by object
Same fields as error
root_cause object[]
Same fields as error
suppressed object[]
Same fields as error
response object required
aggregations map string to {} Aggregation result

Partial aggregations results, coming from the shards that have already completed running the query.

_clusters object
skipped number required
successful number required
total number required
running number required
partial number required
failed number required
details map string to object
<string> object
status enum required
Values: running successful partial skipped failed
indices string required
took number
timed_out boolean required
_shards object
failed number required

The number of shards the operation or search attempted to run on but failed.

successful number required

The number of shards the operation or search succeeded on.

total number required

The number of shards the operation or search will run on overall.

failures object[]
index string
node string
reason object required
type string required

The type of error

reason union string nullable

A human-readable explanation of the error, in English.

One of: string
stack_trace string

The server stack trace. Present only if the error_trace=true parameter was sent with the request.

caused_by object
Same fields as reason in failures
root_cause object[]
Same fields as reason in failures
suppressed object[]
Same fields as reason in failures
shard number
status string
primary boolean
skipped number
failures object[]
Same fields as failures in _shards
fields map string to object
hits object required
total union oneOf

Total hit count information, present only if track_total_hits wasn't false in the search request.

One of:
relation enum required

Supported values include:

  • eq: Accurate
  • gte: Lower bound, including returned events or sequences
Values: eq gte
value number required
hits object[] required
_index string required
_id string
_score union number | string nullable
_explanation object
description string required
details object[] required
description string required
details object[]
Same fields as details in _explanation
value number required
value number required
fields map string to object
highlight map string to string
inner_hits map string to object
<string> object
hits object required
Same fields as hits in response
matched_queries union oneOf
One of: string[] or string to number
_nested object
field string required
offset number required
_nested object
Same fields as _nested in hits
_ignored string[]
ignored_field_values map string to object
_shard string
_node string
_routing string
_source object
_rank number
_seq_no number
_primary_term number
_version number
sort union[]
max_score union number | string nullable
max_score number
num_reduce_phases number

Indicates how many reductions of the results have been performed. If this number increases compared to the last retrieved results for a get asynch search request, you can expect additional results included in the search response.

profile object
shards object[] required
aggregations object[] required
breakdown object required
build_aggregation number required
build_aggregation_count number required
build_leaf_collector number required
build_leaf_collector_count number required
collect number required
collect_count number required
initialize number required
initialize_count number required
post_collection number
post_collection_count number
reduce number required
reduce_count number required
description string required
time_in_nanos number required
type string required
debug object
segments_with_multi_valued_ords number
collection_strategy string
segments_with_single_valued_ords number
total_buckets number
built_buckets number
result_strategy string
has_filter boolean
delegate string
delegate_debug object
Same fields as debug in aggregations
chars_fetched number
extract_count number
extract_ns number
values_fetched number
collect_analyzed_ns number
collect_analyzed_count number
surviving_buckets number
ordinals_collectors_used number
ordinals_collectors_overhead_too_high number
string_hashing_collectors_used number
numeric_collectors_used number
empty_collectors_used number
deferred_aggregators string[]
segments_with_doc_count_field number
segments_with_deleted_docs number
filters object[]
results_from_metadata number
query string
specialized_for string
segments_counted_in_constant_time number
segments_counted number
segments_collected number
map_reducer string
brute_force_used number
dynamic_pruning_attempted number
dynamic_pruning_used number
skipped_due_to_no_data number
children object[]
Same fields as aggregations in shards
cluster string required
dfs object
statistics object
type string required
description string required
time string
time_in_nanos number required
breakdown object required
collection_statistics number required
collection_statistics_count number required
create_weight number required
create_weight_count number required
rewrite number required
rewrite_count number required
term_statistics number required
term_statistics_count number required
debug map string to object
children object[]
Same fields as statistics in dfs
knn object[]
vector_operations_count number
query object[] required
type string required
description string required
time string
time_in_nanos number required
breakdown object required
advance number required
advance_count number required
build_scorer number required
build_scorer_count number required
compute_max_score number required
compute_max_score_count number required
count_weight number required
count_weight_count number required
create_weight number required
create_weight_count number required
match number required
match_count number required
next_doc number required
next_doc_count number required
score number required
score_count number required
set_min_competitive_score number required
set_min_competitive_score_count number required
shallow_advance number required
shallow_advance_count number required
debug map string to object
children object[]
Same fields as query in knn
rewrite_time number required
collector object[] required
name string required
reason string required
time string
time_in_nanos number required
children object[]
Same fields as collector in knn
fetch object
type string required
description string required
time_in_nanos number required
breakdown object required
load_source number
load_source_count number
load_stored_fields number
load_stored_fields_count number
next_reader number
next_reader_count number
process_count number
process number
debug object
stored_fields string[]
fast_path number
children object[]
Same fields as fetch in shards
id string required
index string required
node_id string required
rescore union oneOf[]

One entry per rescorer, in the order they ran. Omitted when the request has no rescorer.

One of:
type enum required
Values: query
description string required

What the rescorer runs.

time_in_nanos number required

The total time spent in the rescorer, including the time spent running its queries.

time string

The time spent in the rescorer, in human-readable units. Only returned when human is true.

debug map string to object

Extra details about the rescorer.

Every rescorer reports window_size, the number of top documents it was configured to rescore. timed_out is set to true if the search timed out while the rescorer was running. Rescorers can add their own keys.

breakdown object required

The query rescorer does not report any steps.

searches object[] required
collector object[] required
name string required
reason string required
time_in_nanos number required
children object[]
Same fields as collector in searches
query object[] required
breakdown object required
advance number required
advance_count number required
build_scorer number required
build_scorer_count number required
create_weight number required
create_weight_count number required
match number required
match_count number required
shallow_advance number required
shallow_advance_count number required
next_doc number required
next_doc_count number required
score number required
score_count number required
compute_max_score number required
compute_max_score_count number required
count_weight number required
count_weight_count number required
set_min_competitive_score number required
set_min_competitive_score_count number required
description string required
time_in_nanos number required
type string required
debug map string to object

Extra details about the query.

Queries run by a rescorer include a rescorer key with the position of that rescorer in the shard's rescore array.

children object[]
Same fields as query in searches
rewrite_time number required
shard_id number required
request object

When profiling is enabled, the original query source and target indices from the coordinating request.

source object

Original query source from the search request (SearchSourceBuilder as JSON).

aggregations map string to {} Aggregation

Defines the aggregations that are run as part of the search request.

collapse object

Collapses search results the values of the specified field.

field string required

The field to collapse the result set on

inner_hits union oneOf

The number of inner hits and their sort order

object or object[]
name string

The name for the particular inner hit definition in the response. Useful when a search request contains multiple inner hits.

size number · default: 3

The maximum number of hits to return per inner_hits.

from number · default: 0

Inner hit starting document offset.

collapse object
Same fields as collapse in source
docvalue_fields object[]
field string required

A wildcard pattern. The request returns values for field names matching this pattern.

format string

The format in which the values are returned.

include_unmapped boolean
explain boolean
highlight object
type union anyOf

Supported values include:

  • plain: The plain highlighter uses the standard Lucene highlighter
  • fvh: The fvh highlighter uses the Lucene Fast Vector highlighter.
  • unified: The unified highlighter uses the Lucene Unified Highlighter.
Values: plain fvh unified
boundary_chars string · default: .,!? \t\n

A string that contains each boundary character.

boundary_max_scan number · default: 20

How far to scan for boundary characters.

boundary_scanner enum

Specifies how to break the highlighted fragments: chars, sentence, or word. Only valid for the unified and fvh highlighters. Defaults to sentence for the unified highlighter. Defaults to chars for the fvh highlighter.

Supported values include:

  • chars: Use the characters specified by boundary_chars as highlighting boundaries. The boundary_max_scan setting controls how far to scan for boundary characters. Only valid for the fvh highlighter.
  • sentence: Break highlighted fragments at the next sentence boundary, as determined by Java’s BreakIterator. You can specify the locale to use with boundary_scanner_locale. When used with the unified highlighter, the sentence scanner splits sentences bigger than fragment_size at the first word boundary next to fragment_size. You can set fragment_size to 0 to never split any sentence.
  • word: Break highlighted fragments at the next word boundary, as determined by Java’s BreakIterator. You can specify the locale to use with boundary_scanner_locale.
Values: chars sentence word
boundary_scanner_locale string · default: Locale.ROOT

Controls which locale is used to search for sentence and word boundaries. This parameter takes a form of a language tag, for example: "en-US", "fr-FR", "ja-JP".

force_source boolean deprecated
fragmenter enum · default: span

Specifies how text should be broken up in highlight snippets: simple or span. Only valid for the plain highlighter.

Values: simple span
fragment_size number · default: 100

The size of the highlighted fragment in characters.

highlight_filter boolean
highlight_query {} Query

Highlight matches for a query other than the search query. This is especially useful if you use a rescore query because those are not taken into account by highlighting by default.

max_fragment_length number
max_analyzed_offset number

If set to a non-negative value, highlighting stops at this defined maximum limit. The rest of the text is not processed, thus not highlighted and no error is returned The max_analyzed_offset query setting does not override the index.highlight.max_analyzed_offset setting, which prevails when it’s set to lower value than the query setting.

no_match_size number · default: 0

The amount of text you want to return from the beginning of the field if there are no matching fragments to highlight.

number_of_fragments number · default: 5

The maximum number of fragments to return. If the number of fragments is set to 0, no fragments are returned. Instead, the entire field contents are highlighted and returned. This can be handy when you need to highlight short texts such as a title or address, but fragmentation is not required. If number_of_fragments is 0, fragment_size is ignored.

options map string to object
order enum · default: none

Sorts highlighted fragments by score when set to score. By default, fragments will be output in the order they appear in the field (order: none). Setting this option to score will output the most relevant fragments first. Each highlighter applies its own logic to compute relevancy scores.

Values: score
phrase_limit number · default: 256

Controls the number of matching phrases in a document that are considered. Prevents the fvh highlighter from analyzing too many phrases and consuming too much memory. When using matched_fields, phrase_limit phrases per matched field are considered. Raising the limit increases query time and consumes more memory. Only supported by the fvh highlighter.

post_tags string[]

Use in conjunction with pre_tags to define the HTML tags to use for the highlighted text. By default, highlighted text is wrapped in <em> and </em> tags.

pre_tags string[]

Use in conjunction with post_tags to define the HTML tags to use for the highlighted text. By default, highlighted text is wrapped in <em> and </em> tags.

require_field_match boolean · default: true

By default, only fields that contains a query match are highlighted. Set to false to highlight all fields.

tags_schema enum

Set to styled to use the built-in tag schema.

Values: styled
encoder enum
Values: default html
fields union oneOf required
map string to object or [] map string to object
ignore_unmapped boolean
script_fields map string to object
<string> object
script string required
ignore_failure boolean
seq_no_primary_term boolean
field string[]
fields object[]
field string required

A wildcard pattern. The request returns values for field names matching this pattern.

format string

The format in which the values are returned.

include_unmapped boolean
sort union oneOf

How the inner hits should be sorted per inner_hits. By default, inner hits are sorted by score.

A value or an array; each item is one of:

Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.

_source union oneOf
One of:
stored_fields union oneOf
One of: string[] or string
track_scores boolean · default: false
version boolean
max_concurrent_group_searches number

The number of concurrent requests allowed to retrieve the inner_hits per group

explain boolean · default: false

If true, the request returns detailed information about score computation as part of a hit.

ext map string to object

Configuration of search extensions defined by Elasticsearch plugins.

from number · default: 0

The starting document offset, which must be non-negative. By default, you cannot page through more than 10,000 hits using the from and size parameters. To page through more hits, use the search_after parameter.

highlight object

Specifies the highlighter to use for retrieving highlighted snippets from one or more fields in your search results.

Same fields as highlight in inner_hits
track_total_hits boolean | number · default: 10000

Number of hits matching the query to count accurately. If true, the exact number of hits is returned at the cost of some performance. If false, the response does not include the total number of hits matching the query.

indices_boost string to number[]

Boost the _score of documents from specified indices. The boost value is the factor by which scores are multiplied. A boost value greater than 1.0 increases the score. A boost value between 0 and 1.0 decreases the score.

docvalue_fields object[]

An array of wildcard (*) field patterns. The request returns doc values for field names matching these patterns in the hits.fields property of the response.

field string required

A wildcard pattern. The request returns values for field names matching this pattern.

format string

The format in which the values are returned.

include_unmapped boolean
knn union oneOf

The approximate kNN search to run.

object or object[]
field string required

The name of the vector field to search against

query_vector number[]

The query vector

query_vector_builder object

The query vector builder. You must provide a query_vector_builder or query_vector, but not both.

embedding object
inference_id string
input union oneOf required
One of:
timeout string
text_embedding object
model_id string

Model ID is required for all dense_vector fields but may be inferred for semantic_text fields

model_text string required

The text to be converted into a vector by the specified model

lookup object

Lookup a vector from an existing document. Must reference a dense_vector field and a single value.

id string required

The ID of the document to fetch the vector from

index string required

The name of the index to fetch the document from

path string required

The name of the field containing the vector

routing string

The routing value to use when fetching the document

k number

The final number of nearest neighbors to return as top hits

num_candidates number

The number of nearest neighbor candidates to consider per shard

visit_percentage number

The percentage of vectors to explore per shard while doing knn search with bbq_disk

boost number

Boost value to apply to kNN scores

filter union oneOf

Filters for the kNN search query

One of: Query[] or Query
similarity number

The minimum similarity for a vector to be considered a match

inner_hits object

If defined, each search hit will contain inner hits.

name string

The name for the particular inner hit definition in the response. Useful when a search request contains multiple inner hits.

size number · default: 3

The maximum number of hits to return per inner_hits.

from number · default: 0

Inner hit starting document offset.

collapse object
field string required

The field to collapse the result set on

inner_hits union oneOf

The number of inner hits and their sort order

object or object[]
max_concurrent_group_searches number

The number of concurrent requests allowed to retrieve the inner_hits per group

docvalue_fields object[]
field string required

A wildcard pattern. The request returns values for field names matching this pattern.

format string

The format in which the values are returned.

include_unmapped boolean
explain boolean
highlight object
Same fields as highlight in inner_hits
ignore_unmapped boolean
script_fields map string to object
<string> object
script string required
ignore_failure boolean
seq_no_primary_term boolean
field string[]
fields object[]
field string required

A wildcard pattern. The request returns values for field names matching this pattern.

format string

The format in which the values are returned.

include_unmapped boolean
sort union oneOf

How the inner hits should be sorted per inner_hits. By default, inner hits are sorted by score.

Same options as sort in inner_hits
_source union oneOf
One of:
stored_fields union oneOf
One of: string[] or string
track_scores boolean · default: false
version boolean
rescore_vector object

Apply oversampling and rescoring to quantized vectors

oversample number required

Applies the specified oversample factor to k on the approximate kNN search

_name string
min_score number

The minimum _score for matching documents. Documents with a lower _score are not included in search results or results collected by aggregations.

post_filter {} Query

Use the post_filter parameter to filter search results. The search hits are filtered after the aggregations are calculated. A post filter has no impact on the aggregation results.

profile boolean · default: false

Set to true to return detailed timing information about the execution of individual components in a search request. NOTE: This is a debugging tool and adds significant overhead to search execution.

query {} Query

The search definition using the Query DSL.

rescore union oneOf

Can be used to improve precision by reordering just the top (for example 100 - 500) documents returned by the query and post_filter phases.

object or object[]
window_size number
query object
rescore_query {} Query required

The query to use for rescoring. This query is only run on the Top-K results returned by the query and post_filter phases.

query_weight number · default: 1

Relative importance of the original query versus the rescore query.

rescore_query_weight number · default: 1

Relative importance of the rescore query versus the original query.

score_mode enum · default: total

Determines how scores are combined.

Supported values include:

  • avg: Average the original score and the rescore query score.
  • max: Take the max of original score and the rescore query score.
  • min: Take the min of the original score and the rescore query score.
  • multiply: Multiply the original score by the rescore query score. Useful for function query rescores.
  • total: Add the original score and the rescore query score.
Values: avg max min multiply total
learning_to_rank object
model_id string required

The unique identifier of the trained model uploaded to Elasticsearch

params map string to object

Named parameters to be passed to the query templates used for feature

script object
script string required
retriever object

A retriever is a specification to describe top documents returned from a search. A retriever replaces other elements of the search API that also return top documents such as query and knn.

standard object

A retriever that replaces the functionality of a traditional query.

filter union oneOf

Query to filter the documents that can match.

One of: Query[] or Query
min_score number

Minimum _score for matching documents. Documents with a lower _score are not included in the top documents.

_name string

Retriever name.

query {} Query

Defines a query to retrieve a set of top documents.

search_after union[]

Defines a search after object parameter used for pagination.

terminate_after number

Maximum number of documents to collect for each shard.

sort union oneOf

A sort object that that specifies the order of matching documents.

Same options as sort in inner_hits
collapse object

Collapses the top documents by a specified key into a single top document per key.

Same fields as collapse in source
knn object

A retriever that replaces the functionality of a knn search.

filter union oneOf

Query to filter the documents that can match.

One of: Query[] or Query
min_score number

Minimum _score for matching documents. Documents with a lower _score are not included in the top documents.

_name string

Retriever name.

field string required

The name of the vector field to search against.

query_vector number[]

Query vector. Must have the same number of dimensions as the vector field you are searching against. You must provide a query_vector_builder or query_vector, but not both.

query_vector_builder object

Defines a model to build a query vector.

Same fields as query_vector_builder in knn
k number required

Number of nearest neighbors to return as top hits.

num_candidates number

Number of nearest neighbor candidates to consider per shard.

visit_percentage number

The percentage of vectors to explore per shard while doing knn search with bbq_disk

similarity number

The minimum similarity required for a document to be considered a match.

rescore_vector object

Apply oversampling and rescoring to quantized vectors

oversample number required

Applies the specified oversample factor to k on the approximate kNN search

rrf object

A retriever that produces top documents from reciprocal rank fusion (RRF).

filter union oneOf

Query to filter the documents that can match.

One of: Query[] or Query
min_score number

Minimum _score for matching documents. Documents with a lower _score are not included in the top documents.

_name string

Retriever name.

retrievers union oneOf[] required

A list of child retrievers to specify which sets of returned top documents will have the RRF formula applied to them. Each retriever can optionally include a weight parameter.

One of:
rank_constant number

This value determines how much influence documents in individual result sets per query have over the final ranked result set.

rank_window_size number

This value determines the size of the individual result sets per query.

query string
fields string[]
text_similarity_reranker object

A retriever that reranks the top documents based on a reranking model using the InferenceAPI

filter union oneOf

Query to filter the documents that can match.

One of: Query[] or Query
min_score number

Minimum _score for matching documents. Documents with a lower _score are not included in the top documents.

_name string

Retriever name.

retriever object required

The nested retriever which will produce the first-level results, that will later be used for reranking.

Same fields as retriever in source
rank_window_size number

This value determines how many documents we will consider from the nested retriever.

inference_id string

Unique identifier of the inference endpoint created using the inference API.

inference_text string required

The text snippet used as the basis for similarity comparison.

field string required

The document field to be used for text similarity comparisons. This field should contain the text that will be evaluated against the inference_text.

chunk_rescorer object

Whether to rescore on only the best matching chunks.

size number

The number of chunks per document to evaluate for reranking.

chunking_settings object

Chunking settings to apply

max_chunk_size number · default: 250 required

The maximum size of a chunk in words. This value cannot be lower than 20 (for sentence strategy) or 10 (for word strategy). This value should not exceed the window size for the associated model.

overlap number · default: 100

The number of overlapping words for chunks. It is applicable only to a word chunking strategy. This value cannot be higher than half the max_chunk_size value.

sentence_overlap number · default: 1

The number of overlapping sentences for chunks. It is applicable only for a sentence chunking strategy. It can be either 1 or 0.

separator_group string

Only applicable to the recursive strategy and required when using it.

Sets a predefined list of separators in the saved chunking settings based on the selected text type. Values can be markdown or plaintext.

Using this parameter is an alternative to manually specifying a custom separators list.

separators string[]

Only applicable to the recursive strategy and required when using it.

A list of strings used as possible split points when chunking text.

Each string can be a plain string or a regular expression (regex) pattern. The system tries each separator in order to split the text, starting from the first item in the list.

After splitting, it attempts to recombine smaller pieces into larger chunks that stay within the max_chunk_size limit, to reduce the total number of chunks generated.

strategy string · default: sentence

The chunking strategy: sentence, word, none or recursive.

  • If strategy is set to recursive, you must also specify:
  • max_chunk_size
  • either separators orseparator_group

Learn more about different chunking strategies in the linked documentation.

rule object

A retriever that replaces the functionality of a rule query.

filter union oneOf

Query to filter the documents that can match.

One of: Query[] or Query
min_score number

Minimum _score for matching documents. Documents with a lower _score are not included in the top documents.

_name string

Retriever name.

ruleset_ids union string | string[] required

The ruleset IDs containing the rules this retriever is evaluating against.

match_criteria object required

The match criteria that will determine if a rule in the provided rulesets should be applied.

retriever object required

The retriever whose results rules should be applied to.

Same fields as retriever in source
rank_window_size number

This value determines the size of the individual result set.

rescorer object

A retriever that re-scores only the results produced by its child retriever.

filter union oneOf

Query to filter the documents that can match.

One of: Query[] or Query
min_score number

Minimum _score for matching documents. Documents with a lower _score are not included in the top documents.

_name string

Retriever name.

retriever object required

Inner retriever.

Same fields as retriever in source
rescore union oneOf required
object or object[]
Same options as rescore in source
linear object

A retriever that supports the combination of different retrievers through a weighted linear combination.

filter union oneOf

Query to filter the documents that can match.

One of: Query[] or Query
min_score number

Minimum _score for matching documents. Documents with a lower _score are not included in the top documents.

_name string

Retriever name.

retrievers object[]

Inner retrievers.

retriever object required

The nested retriever configuration.

Same fields as retriever in source
weight number · default: 1

Weight multiplier for this retriever's contribution to the linear combination. Must be non-negative.

normalizer enum · default: none

Score normalizer to apply to this retriever's results before weighting. Falls back to the top-level normalizer on the linear retriever if unset, then to none (identity) if neither is set.

Values: none minmax l2_norm
rank_window_size number
query string
fields string[]
normalizer enum
Values: none minmax l2_norm
pinned object

A pinned retriever applies pinned documents to the underlying retriever. This retriever will rewrite to a PinnedQueryBuilder.

filter union oneOf

Query to filter the documents that can match.

One of: Query[] or Query
min_score number

Minimum _score for matching documents. Documents with a lower _score are not included in the top documents.

_name string

Retriever name.

retriever object required

Inner retriever.

Same fields as retriever in source
ids string[]
docs object[]
index string
id string required
rank_window_size number
diversify object

A retriever that diversifies the results from its child retriever.

filter union oneOf

Query to filter the documents that can match.

One of: Query[] or Query
min_score number

Minimum _score for matching documents. Documents with a lower _score are not included in the top documents.

_name string

Retriever name.

type enum required

The diversification strategy to apply.

Values: mmr
field string required

The document field on which to diversify results on.

retriever object required

The nested retriever whose results will be diversified.

Same fields as retriever in source
size number

The number of top documents to return after diversification.

rank_window_size number

The number of top documents from the nested retriever to consider for diversification.

query_vector number[]

The query vector used for diversification.

query_vector_builder object

a dense vector query vector builder to use instead of a static query_vector

Same fields as query_vector_builder in knn
lambda number

Controls the trade-off between relevance and diversity for MMR. A value of 0.0 focuses solely on diversity, while a value of 1.0 focuses solely on relevance. Required for MMR

script_fields map string to object

Retrieve a script evaluation (based on different fields) for each hit.

<string> object
script string required
ignore_failure boolean
search_after union[]

Used to retrieve the next page of hits using a set of sort values from the previous page.

size number · default: 10

The number of hits to return, which must not be negative. By default, you cannot page through more than 10,000 hits using the from and size parameters. To page through more hits, use the search_after property.

slice object

Split a scrolled search into multiple slices that can be consumed independently.

field string
id string required
max number required
sort union oneOf

A comma-separated list of

Same options as sort in inner_hits
_source union oneOf

The source fields that are returned for matching documents. These fields are returned in the hits._source property of the search response. If the stored_fields property is specified, the _source property defaults to false. Otherwise, it defaults to true.

One of:
fields object[]

An array of wildcard (*) field patterns. The request returns values for field names matching these patterns in the hits.fields property of the response.

field string required

A wildcard pattern. The request returns values for field names matching this pattern.

format string

The format in which the values are returned.

include_unmapped boolean
suggest object

Defines a suggester that provides similar looking terms based on a provided text.

text string

Global suggest text, to avoid repetition when the same text is used in several suggesters

terminate_after number · default: 0

The maximum number of documents to collect for each shard. If a query reaches this limit, Elasticsearch terminates the query early. Elasticsearch collects documents before sorting.

Important

Use with caution. Elasticsearch applies this property to each shard handling the request. When possible, let Elasticsearch perform early termination automatically. Avoid specifying this property for requests that target data streams with backing indices across multiple data tiers.

If set to 0 (default), the query does not terminate early.

timeout string

The period of time to wait for a response from each shard. If no response is received before the timeout expires, the request fails and returns an error. Defaults to no timeout.

track_scores boolean · default: false

If true, calculate and return document scores, even if the scores are not used for sorting.

version boolean · default: false

If true, the request returns the document version as part of a hit.

seq_no_primary_term boolean

If true, the request returns sequence number and primary term of the last modification of each hit.

stored_fields union oneOf

A comma-separated list of stored fields to return as part of a hit. If no fields are specified, no stored fields are included in the response. If this field is specified, the _source property defaults to false. You can pass _source: true to return both source fields and stored fields in the search response.

One of: string[] or string
pit object

Limit the search to a point in time (PIT). If you provide a PIT, you cannot specify an <index> in the request path.

id string required
keep_alive string
runtime_mappings object

One or more runtime fields in the search request. These fields take precedence over mapped fields with the same name.

stats string[]

The stats groups to associate with the search. Each group maintains a statistics aggregation for its associated searches. You can retrieve these stats using the indices stats API.

indices string[]

Target index expressions from the request (before index resolution).

pit_id string
_scroll_id string
_shards object required

Indicates how many shards have run the query. Note that in order for shard results to be included in the search response, they need to be reduced first.

Same fields as _shards in details
suggest map string to oneOf
terminated_early boolean
timed_out boolean required
took number required
application/json
is_partial boolean required
is_running boolean required
expiration_time union oneOf
One of: string or number
expiration_time_in_millis number required
start_time union oneOf
One of: string or number
start_time_in_millis number required
completion_time union oneOf
One of: string or number
completion_time_in_millis number
error object
type string required

The type of error

reason union string nullable

A human-readable explanation of the error, in English.

One of: string
stack_trace string

The server stack trace. Present only if the error_trace=true parameter was sent with the request.

caused_by object
Same fields as error
root_cause object[]
Same fields as error
suppressed object[]
Same fields as error
response object
aggregations map string to {} Aggregation result

Partial aggregations results, coming from the shards that have already completed running the query.

_clusters object
Same fields as _clusters in response
fields map string to object
hits object required
Same fields as hits in response
max_score number
num_reduce_phases number

Indicates how many reductions of the results have been performed. If this number increases compared to the last retrieved results for a get asynch search request, you can expect additional results included in the search response.

profile object
shards object[] required
aggregations object[] required
breakdown object required
Same fields as breakdown in aggregations
description string required
time_in_nanos number required
type string required
debug object
Same fields as debug in aggregations
children object[]
Same fields as aggregations in shards
cluster string required
dfs object
statistics object
Same fields as statistics in dfs
knn object[]
vector_operations_count number
query object[] required
Same fields as query in knn
rewrite_time number required
collector object[] required
name string required
reason string required
time string
time_in_nanos number required
children object[]
Same fields as collector in knn
fetch object
Same fields as fetch in shards
id string required
index string required
node_id string required
rescore union oneOf[]

One entry per rescorer, in the order they ran. Omitted when the request has no rescorer.

Same options as rescore in shards
searches object[] required
collector object[] required
name string required
reason string required
time_in_nanos number required
children object[]
Same fields as collector in searches
query object[] required
Same fields as query in searches
rewrite_time number required
shard_id number required
request object

When profiling is enabled, the original query source and target indices from the coordinating request.

source object

Original query source from the search request (SearchSourceBuilder as JSON).

aggregations map string to {} Aggregation

Defines the aggregations that are run as part of the search request.

collapse object

Collapses search results the values of the specified field.

Same fields as collapse in source
explain boolean · default: false

If true, the request returns detailed information about score computation as part of a hit.

ext map string to object

Configuration of search extensions defined by Elasticsearch plugins.

from number · default: 0

The starting document offset, which must be non-negative. By default, you cannot page through more than 10,000 hits using the from and size parameters. To page through more hits, use the search_after parameter.

highlight object

Specifies the highlighter to use for retrieving highlighted snippets from one or more fields in your search results.

Same fields as highlight in inner_hits
track_total_hits boolean | number · default: 10000

Number of hits matching the query to count accurately. If true, the exact number of hits is returned at the cost of some performance. If false, the response does not include the total number of hits matching the query.

indices_boost string to number[]

Boost the _score of documents from specified indices. The boost value is the factor by which scores are multiplied. A boost value greater than 1.0 increases the score. A boost value between 0 and 1.0 decreases the score.

docvalue_fields object[]

An array of wildcard (*) field patterns. The request returns doc values for field names matching these patterns in the hits.fields property of the response.

field string required

A wildcard pattern. The request returns values for field names matching this pattern.

format string

The format in which the values are returned.

include_unmapped boolean
knn union oneOf

The approximate kNN search to run.

object or object[]
Same options as knn in source
min_score number

The minimum _score for matching documents. Documents with a lower _score are not included in search results or results collected by aggregations.

post_filter {} Query

Use the post_filter parameter to filter search results. The search hits are filtered after the aggregations are calculated. A post filter has no impact on the aggregation results.

profile boolean · default: false

Set to true to return detailed timing information about the execution of individual components in a search request. NOTE: This is a debugging tool and adds significant overhead to search execution.

query {} Query

The search definition using the Query DSL.

rescore union oneOf

Can be used to improve precision by reordering just the top (for example 100 - 500) documents returned by the query and post_filter phases.

object or object[]
Same options as rescore in source
retriever object

A retriever is a specification to describe top documents returned from a search. A retriever replaces other elements of the search API that also return top documents such as query and knn.

Same fields as retriever in source
script_fields map string to object

Retrieve a script evaluation (based on different fields) for each hit.

<string> object
script string required
ignore_failure boolean
search_after union[]

Used to retrieve the next page of hits using a set of sort values from the previous page.

size number · default: 10

The number of hits to return, which must not be negative. By default, you cannot page through more than 10,000 hits using the from and size parameters. To page through more hits, use the search_after property.

slice object

Split a scrolled search into multiple slices that can be consumed independently.

field string
id string required
max number required
sort union oneOf

A comma-separated list of

Same options as sort in inner_hits
_source union oneOf

The source fields that are returned for matching documents. These fields are returned in the hits._source property of the search response. If the stored_fields property is specified, the _source property defaults to false. Otherwise, it defaults to true.

One of:
fields object[]

An array of wildcard (*) field patterns. The request returns values for field names matching these patterns in the hits.fields property of the response.

field string required

A wildcard pattern. The request returns values for field names matching this pattern.

format string

The format in which the values are returned.

include_unmapped boolean
suggest object

Defines a suggester that provides similar looking terms based on a provided text.

text string

Global suggest text, to avoid repetition when the same text is used in several suggesters

terminate_after number · default: 0

The maximum number of documents to collect for each shard. If a query reaches this limit, Elasticsearch terminates the query early. Elasticsearch collects documents before sorting.

Important

Use with caution. Elasticsearch applies this property to each shard handling the request. When possible, let Elasticsearch perform early termination automatically. Avoid specifying this property for requests that target data streams with backing indices across multiple data tiers.

If set to 0 (default), the query does not terminate early.

timeout string

The period of time to wait for a response from each shard. If no response is received before the timeout expires, the request fails and returns an error. Defaults to no timeout.

track_scores boolean · default: false

If true, calculate and return document scores, even if the scores are not used for sorting.

version boolean · default: false

If true, the request returns the document version as part of a hit.

seq_no_primary_term boolean

If true, the request returns sequence number and primary term of the last modification of each hit.

stored_fields union oneOf

A comma-separated list of stored fields to return as part of a hit. If no fields are specified, no stored fields are included in the response. If this field is specified, the _source property defaults to false. You can pass _source: true to return both source fields and stored fields in the search response.

One of: string[] or string
pit object

Limit the search to a point in time (PIT). If you provide a PIT, you cannot specify an <index> in the request path.

id string required
keep_alive string
runtime_mappings object

One or more runtime fields in the search request. These fields take precedence over mapped fields with the same name.

stats string[]

The stats groups to associate with the search. Each group maintains a statistics aggregation for its associated searches. You can retrieve these stats using the indices stats API.

indices string[]

Target index expressions from the request (before index resolution).

pit_id string
_scroll_id string
_shards object required

Indicates how many shards have run the query. Note that in order for shard results to be included in the search response, they need to be reduced first.

Same fields as _shards in details
suggest map string to oneOf
terminated_early boolean
timed_out boolean required
took number required
application/json
is_partial boolean required
is_running boolean required
expiration_time union oneOf
One of: string or number
expiration_time_in_millis number required
start_time union oneOf
One of: string or number
start_time_in_millis number required
completion_time union oneOf
One of: string or number
completion_time_in_millis number
error object
type string required

The type of error

reason union string nullable

A human-readable explanation of the error, in English.

One of: string
stack_trace string

The server stack trace. Present only if the error_trace=true parameter was sent with the request.

caused_by object
Same fields as error
root_cause object[]
Same fields as error
suppressed object[]
Same fields as error
response object
Same fields as response
application/json
is_partial boolean required
is_running boolean required
expiration_time union oneOf
One of: string or number
expiration_time_in_millis number required
start_time union oneOf
One of: string or number
start_time_in_millis number required
completion_time union oneOf
One of: string or number
completion_time_in_millis number
error object
type string required

The type of error

reason union string nullable

A human-readable explanation of the error, in English.

One of: string
stack_trace string

The server stack trace. Present only if the error_trace=true parameter was sent with the request.

caused_by object
Same fields as error
root_cause object[]
Same fields as error
suppressed object[]
Same fields as error
response object
Same fields as response
application/json
is_partial boolean required
is_running boolean required
expiration_time union oneOf
One of: string or number
expiration_time_in_millis number required
start_time union oneOf
One of: string or number
start_time_in_millis number required
completion_time union oneOf
One of: string or number
completion_time_in_millis number
error object
type string required

The type of error

reason union string nullable

A human-readable explanation of the error, in English.

One of: string
stack_trace string

The server stack trace. Present only if the error_trace=true parameter was sent with the request.

caused_by object
Same fields as error
root_cause object[]
Same fields as error
suppressed object[]
Same fields as error
response object
Same fields as response