Most APIs that accept a
<target> request path
parameter also support multi-target syntax.
In multi-target syntax, you can use a comma-separated list to run a request on
multiple resources, such as data streams, indices, or index aliases:
test1,test2,test3. You can also use glob-like
*) expressions to target resources that match a pattern:
You can exclude targets using the
Index aliases are resolved after wildcard expressions. This can
result in a request that targets an excluded alias. For example, if
an index alias, the pattern
test*,-test3 still targets the indices for
test3. To avoid this, exclude the concrete indices for the alias instead.
Multi-target APIs that can target indices support the following query string parameters:
(Optional, Boolean) If
true, missing or closed indices are not included in the response. Defaults to
false, the request returns an error if any wildcard expression, index alias, or
_allvalue targets only missing or closed indices. This behavior applies even if the request targets other open indices. For example, a request targeting
foo*,bar*returns an error if an index starts with
foobut no index starts with
(Optional, string) Type of index that wildcard expressions can match. If the request can target data streams, this argument determines whether wildcard expressions match hidden data streams. Supports comma-separated values, such as
open,hidden. Valid values are:
- Match any data stream or index, including hidden ones.
- Match open, non-hidden indices. Also matches any non-hidden data stream.
- Match closed, non-hidden indices. Also matches any non-hidden data stream. Data streams cannot be closed.
Match hidden data streams and hidden indices. Must be combined with
closed, or both.
- Wildcard expressions are not accepted.
The defaults settings for the above parameters depend on the API being used.
Some multi-target APIs that can target indices also support the following query string parameter:
(Optional, Boolean) If
true, concrete, expanded or aliased indices are ignored when frozen. Defaults to
APIs with a single target, such as the get document API, do not support multi-target syntax.
For most APIs, wildcard expressions do not match hidden data streams and indices
by default. To match hidden data streams and indices using a wildcard
expression, you must specify the
expand_wildcards query parameter.
The backing indices for data streams are hidden automatically. Some features, such as machine learning, store information in hidden indices.
Global index templates that match all indices are not applied to hidden indices.
Elasticsearch modules and plugins can store configuration and state information in internal system indices. You should not directly access or modify system indices as they contain data essential to the operation of the system.
Direct access to system indices is deprecated and will no longer be allowed in the next major version.