Get index alias API

edit

Returns information about one or more index aliases.

An index alias is a secondary name for one or more indices. Most Elasticsearch APIs accept an index alias in place of an index name.

GET /my-index-000001/_alias/alias1

Request

edit

GET /_alias

GET /_alias/<alias>

GET /<index>/_alias/<alias>

Prerequisites

edit
  • If the Elasticsearch security features are enabled, you must have the view_index_metadata or manage index privilege for the index alias. If you specify an index, you must also have view_index_metadata or manage index privilege for the index.

Path parameters

edit
<alias>

(Optional, string) Comma-separated list or wildcard expression of index alias names used to limit the request.

To retrieve information for all index aliases, use a value of _all or *.

<index>
(Optional, string) Comma-separated list or wildcard expression of index 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 targeting foo*,bar* returns an error if an index starts with foo but no index starts with bar.

Defaults to true.

expand_wildcards

(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:

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 expressions are not accepted.

Defaults to all.

ignore_unavailable
(Optional, Boolean) If false, requests that include a missing index in the <index> argument return an error. Defaults to false.
local
(Optional, Boolean) If true, the request retrieves information from the local node only. Defaults to false, which means information is retrieved from the master node.

Examples

edit

Get all aliases for an index

edit

You can add index aliases during index creation using a create index API request.

The following create index API request creates the logs_20302801 index with two aliases:

  • current_day
  • 2030, which only returns documents in the logs_20302801 index with a year field value of 2030
PUT /logs_20302801
{
  "aliases" : {
    "current_day" : {},
    "2030" : {
      "filter" : {
          "term" : {"year" : 2030 }
      }
    }
  }
}

The following get index alias API request returns all aliases for the index logs_20302801:

GET /logs_20302801/_alias/*

The API returns the following response:

{
 "logs_20302801" : {
   "aliases" : {
    "current_day" : {
    },
     "2030" : {
       "filter" : {
         "term" : {
           "year" : 2030
         }
       }
     }
   }
 }
}

Get a specific alias

edit

The following index alias API request returns the 2030 alias:

GET /_alias/2030

The API returns the following response:

{
  "logs_20302801" : {
    "aliases" : {
      "2030" : {
        "filter" : {
          "term" : {
            "year" : 2030
          }
        }
      }
    }
  }
}

Get aliases based on a wildcard

edit

The following index alias API request returns any alias that begin with 20:

GET /_alias/20*

The API returns the following response:

{
  "logs_20302801" : {
    "aliases" : {
      "2030" : {
        "filter" : {
          "term" : {
            "year" : 2030
          }
        }
      }
    }
  }
}