Returns setting information for one or more indices. For data streams, the API returns setting information for the stream’s backing indices.
resp = client.indices.get_settings( index="my-index-000001", ) print(resp)
response = client.indices.get_settings( index: 'my-index-000001' ) puts response
const response = await client.indices.getSettings({ index: "my-index-000001", }); console.log(response);
GET /my-index-000001/_settings
-
If the Elasticsearch security features are enabled, you must have the
view_index_metadata
,monitor
, ormanage
index privilege for the target data stream, index, or alias.
-
<target>
-
(Optional, string) Comma-separated list of data streams, indices, and aliases
used to limit the request. Supports wildcards (
*
). To target all data streams and indices, omit this parameter or use*
or_all
. -
<setting>
- (Optional, string) Comma-separated list or wildcard expression of setting names used to limit the request.
-
allow_no_indices
-
(Optional, Boolean) If
false
, the request returns an error if any wildcard expression, index alias, or_all
value targets only missing or closed indices. This behavior applies even if the request targets other open indices. For example, a request targetingfoo*,bar*
returns an error if an index starts withfoo
but no index starts withbar
.Defaults to
true
. -
expand_wildcards
-
(Optional, string) Type of index that wildcard patterns 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:-
all
- Match any data stream or index, including hidden ones.
-
open
- Match open, non-hidden indices. Also matches any non-hidden data stream.
-
closed
- Match closed, non-hidden indices. Also matches any non-hidden data stream. Data streams cannot be closed.
-
hidden
-
Match hidden data streams and hidden indices. Must be combined with
open
,closed
, or both. -
none
- Wildcard patterns are not accepted.
Defaults to
open
. -
-
flat_settings
-
(Optional, Boolean) If
true
, returns settings in flat format. Defaults tofalse
. -
include_defaults
-
(Optional, Boolean) If
true
, return all default settings in the response. Defaults tofalse
. -
ignore_unavailable
-
(Optional, Boolean) If
false
, the request returns an error if it targets a missing or closed index. Defaults tofalse
. -
local
-
(Optional, Boolean) If
true
, the request retrieves information from the local node only. Defaults tofalse
, which means information is retrieved from the master node. -
master_timeout
-
(Optional, time units)
Period to wait for the master node. If the master node is not available before
the timeout expires, the request fails and returns an error. Defaults to
30s
. Can also be set to-1
to indicate that the request should never timeout.
The get settings API can be used to get settings for more than one data stream or index with a
single call. To get settings for all indices in a cluster, you can use _all
or *
for <target>
.
Wildcard expressions are also supported. The following are some examples:
resp = client.indices.get_settings( index="my-index-000001,my-index-000002", ) print(resp) resp1 = client.indices.get_settings( index="_all", ) print(resp1) resp2 = client.indices.get_settings( index="log_2099_*", ) print(resp2)
response = client.indices.get_settings( index: 'my-index-000001,my-index-000002' ) puts response response = client.indices.get_settings( index: '_all' ) puts response response = client.indices.get_settings( index: 'log_2099_*' ) puts response
const response = await client.indices.getSettings({ index: "my-index-000001,my-index-000002", }); console.log(response); const response1 = await client.indices.getSettings({ index: "_all", }); console.log(response1); const response2 = await client.indices.getSettings({ index: "log_2099_*", }); console.log(response2);
GET /my-index-000001,my-index-000002/_settings GET /_all/_settings GET /log_2099_*/_settings
The settings that are returned can be filtered with wildcard matching as follows:
resp = client.indices.get_settings( index="log_2099_-*", name="index.number_*", ) print(resp)
response = client.indices.get_settings( index: 'log_2099_-*', name: 'index.number_*' ) puts response
const response = await client.indices.getSettings({ index: "log_2099_-*", name: "index.number_*", }); console.log(response);
GET /log_2099_-*/_settings/index.number_*