Run multiple templated searches Added in 5.0.0
Run multiple templated searches with a single request.
If you are providing a text file or text input to curl
, use the --data-binary
flag instead of -d
to preserve newlines.
For example:
$ cat requests
{ "index": "my-index" }
{ "id": "my-search-template", "params": { "query_string": "hello world", "from": 0, "size": 10 }}
{ "index": "my-other-index" }
{ "id": "my-other-search-template", "params": { "query_type": "match_all" }}
$ curl -H "Content-Type: application/x-ndjson" -XGET localhost:9200/_msearch/template --data-binary "@requests"; echo
Query parameters
-
ccs_minimize_roundtrips boolean
If
true
, network round-trips are minimized for cross-cluster search requests. -
max_concurrent_searches number
The maximum number of concurrent searches the API can run.
-
search_type string
The type of the search operation.
Values are
query_then_fetch
ordfs_query_then_fetch
. -
rest_total_hits_as_int boolean
If
true
, the response returnshits.total
as an integer. Iffalse
, it returnshits.total
as an object. -
typed_keys boolean
If
true
, the response prefixes aggregation and suggester names with their respective types.
Body object Required
-
allow_no_indices boolean
-
expand_wildcards string | array[string]
-
index string | array[string]
-
preference string
-
request_cache boolean
-
routing string
-
search_type string
Values are
query_then_fetch
ordfs_query_then_fetch
. -
ccs_minimize_roundtrips boolean
-
allow_partial_search_results boolean
-
ignore_throttled boolean
GET
/_msearch/template
curl \
--request GET http://api.example.com/_msearch/template \
--header "Content-Type: application/json" \
--data '"{ }\n{ \"id\": \"my-search-template\", \"params\": { \"query_string\": \"hello world\", \"from\": 0, \"size\": 10 }}\n{ }\n{ \"id\": \"my-other-search-template\", \"params\": { \"query_type\": \"match_all\" }}"'
Request example
Run `GET my-index/_msearch/template` to run multiple templated searches.
{ }
{ "id": "my-search-template", "params": { "query_string": "hello world", "from": 0, "size": 10 }}
{ }
{ "id": "my-other-search-template", "params": { "query_type": "match_all" }}
Response examples (200)
{
"took": 42.0,
"responses": [
{
"took": 42.0,
"timed_out": true,
"_shards": {
"failed": 42.0,
"successful": 42.0,
"total": 42.0,
"failures": [
{}
],
"skipped": 42.0
},
"hits": {
"hits": [
{}
]
},
"aggregations": {},
"_clusters": {
"skipped": 42.0,
"successful": 42.0,
"total": 42.0,
"running": 42.0,
"partial": 42.0,
"failed": 42.0,
"details": {}
},
"fields": {
"additionalProperty1": {},
"additionalProperty2": {}
},
"max_score": 42.0,
"num_reduce_phases": 42.0,
"profile": {
"shards": [
{}
]
},
"pit_id": "string",
"_scroll_id": "string",
"suggest": {
"additionalProperty1": [
{}
],
"additionalProperty2": [
{}
]
},
"terminated_early": true,
"status": 42.0
}
]
}