WARNING: Version 1.4 of Elasticsearch has passed its EOL date.
This documentation is no longer being maintained and may be removed. If you are running this version, we strongly advise you to upgrade. For the latest information, see the current release documentation.
Indices APIs
editIndices APIs
editThe mapping
, alias
, settings
, and warmer
index APIs are all similar
but there are subtle differences in the order of the URL and the response
body. For instance, adding a mapping and a warmer look slightly different:
PUT /{index}/{type}/_mapping PUT /{index}/_warmer/{name}
These URLs have been unified as:
PUT /{indices}/_mapping/{type} PUT /{indices}/_alias/{name} PUT /{indices}/_warmer/{name} GET /{indices}/_mapping/{types} GET /{indices}/_alias/{names} GET /{indices}/_settings/{names} GET /{indices}/_warmer/{names} DELETE /{indices}/_mapping/{types} DELETE /{indices}/_alias/{names} DELETE /{indices}/_warmer/{names}
All of the {indices}
, {types}
and {names}
parameters can be replaced by:
-
_all
,*
or blank (ie left out altogether), all of which mean “all” -
wildcards like
test*
-
comma-separated lists:
index_1,test_*
The only exception is DELETE
which doesn’t accept blank (missing)
parameters. If you want to delete something, you should be specific.
Similarly, the return values for GET
have been unified with the following
rules:
-
Only return values that exist. If you try to
GET
a mapping which doesn’t exist, then the result will be an empty object:{}
. We no longer throw a404
if the requested mapping/warmer/alias/setting doesn’t exist. -
The response format always has the index name, then the section, then the element name, for instance:
{ "my_index": { "mappings": { "my_type": {...} } } }
This is a breaking change for the
get_mapping
API.
In the future we will also provide plural versions to allow putting multiple mappings etc in a single request.
See put-mapping
, get-
mapping
, get-field-mapping
,
delete-mapping
,
update-settings
, get-settings
,
warmers
, and aliases
for more details.