Create or update lifecycle policy APIedit

Creates or updates lifecycle policy. See ILM policy definition for definitions of policy components.

Requestedit

PUT _ilm/policy/<policy_id>

Prerequisitesedit

  • If the Elasticsearch security features are enabled, you must have the manage_ilm cluster privilege to use this API. You must also have the manage index privilege on all indices being managed by policy. ILM performs operations as the user who last updated the policy. ILM only has the roles assigned to the user at the time of the last policy update.

Descriptionedit

Creates a lifecycle policy. If the specified policy exists, the policy is replaced and the policy version is incremented.

Only the latest version of the policy is stored, you cannot revert to previous versions.

Path parametersedit

<policy_id>
(Required, string) Identifier for the policy.

Query parametersedit

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.
timeout
(Optional, time units) Period to wait for a response. If no response is received before the timeout expires, the request fails and returns an error. Defaults to 30s.

Examplesedit

The following example creates a new policy named my_policy:

PUT _ilm/policy/my_policy
{
  "policy": {
    "phases": {
      "warm": {
        "min_age": "10d",
        "actions": {
          "forcemerge": {
            "max_num_segments": 1
          }
        }
      },
      "delete": {
        "min_age": "30d",
        "actions": {
          "delete": {}
        }
      }
    }
  }
}

If the request succeeds, you receive the following result:

{
  "acknowledged": true
}