Get index settings API
editGet index settings API
editReturns setting information for one or more indices. For data streams, the API returns setting information for the stream’s backing indices.
response = client.indices.get_settings( index: 'my-index-000001' ) puts response
GET /my-index-000001/_settings
Prerequisites
edit-
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.
Path parameters
edit-
<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.
Query parameters
edit-
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 a connection to the master node. If no response is received
before the timeout expires, the request fails and returns an error. Defaults to
30s
.
Examples
editMultiple data streams and indices
editThe 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:
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
GET /my-index-000001,my-index-000002/_settings GET /_all/_settings GET /log_2099_*/_settings
Filtering settings by name
editThe settings that are returned can be filtered with wildcard matching as follows:
response = client.indices.get_settings( index: 'log_2099_-*', name: 'index.number_*' ) puts response
GET /log_2099_-*/_settings/index.number_*