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 /twitter/_alias/alias1

Request

edit

GET /_alias

GET /_alias/<alias>

GET /<index>/_alias/<alias>

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 true, the request does not return an error if a wildcard expression or _all value retrieves only missing or closed indices.

This parameter also applies to index aliases that point to a missing or closed index.

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 true, missing or closed indices are not included in the response. 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
          }
        }
      }
    }
  }
}