Get index alias API

edit

Returns information about one or more index aliases.

An index alias is a secondary name used to refer to one or more existing 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) Controls what kind of indices that wildcard expressions can expand to. Multiple values are accepted when separated by a comma, as in open,hidden. Valid values are:

all
Expand to open and closed indices, including hidden indices.
open
Expand only to open indices.
closed
Expand only to closed indices.
hidden
Expansion of wildcards will include 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
          }
        }
      }
    }
  }
}