﻿---
title: stack es indices put-template cli command
description: Create or update a legacy index template. Behaviour flags: --dry-run — validate all inputs and exit without performing any action 
url: https://www.elastic.co/elastic/docs-builder/docs/4116/reference/elastic-cli/cli/stack/es/indices/put-template
applies_to:
  - Elastic Cloud Serverless: Preview
  - Elastic Stack: Preview
---

# stack es indices put-template cli command
<cli-modifiers>
</cli-modifiers>

```bash
elastic stack es indices put-template --name <name> [options]
```

Create or update a legacy index template.
**Behaviour flags:**
`--dry-run` — validate all inputs and exit without performing any action

## Options

<definitions>
  <definition term="--name string required">
    The name of the template
  </definition>
  <definition term="--create">
    If true, this request cannot replace or update existing index templates.
  </definition>
  <definition term="--master-timeout string">
    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.
  </definition>
  <definition term="--order number">
    Order in which Elasticsearch applies this template if index
    matches multiple templates. Templates with lower 'order' values are merged first. Templates with higher
    'order' values are merged later, overriding templates with lower values.
  </definition>
  <definition term="--cause string">
    User defined reason for creating or updating the index template
  </definition>
  <definition term="--aliases string">
    Aliases for the index.
  </definition>
  <definition term="--index-patterns string">
    Array of wildcard expressions used to match the names
    of indices during creation.
    **Repeatable:** pass `--index-patterns` multiple times to supply more than one value
  </definition>
  <definition term="--mappings string">
    Mapping for fields in the index.
  </definition>
  <definition term="--settings string">
    Configuration options for the index.
  </definition>
  <definition term="--version number">
    Version number used to manage index templates externally. This number
    is not automatically generated by Elasticsearch.
    To unset a version, replace the template without specifying one.
  </definition>
  <definition term="--error-trace">
    When set to `true` Elasticsearch will include the full stack trace of errors
    when they occur.
  </definition>
  <definition term="--filter-path string">
    Comma-separated list of filters in dot notation which reduce the response
    returned by Elasticsearch.
    **Repeatable:** pass `--filter-path` multiple times to supply more than one value
  </definition>
  <definition term="--human">
    When set to `true` will return statistics in a format suitable for humans.
    For example `"exists_time": "1h"` for humans and
    `"exists_time_in_millis": 3600000` for computers. When disabled the human
    readable values will be omitted. This makes sense for responses being consumed
    only by machines.
  </definition>
  <definition term="--pretty">
    If set to `true` the returned JSON will be "pretty-formatted". Only use
    this option for debugging only.
  </definition>
  <definition term="--input-file string">
    path to a JSON file to use as command input
  </definition>
  <definition term="--dry-run">
    validate all inputs and exit without performing any action (preview changes without applying them)
  </definition>
</definitions>


## Global Options

<definitions>
  <definition term="--json">
    output as JSON
  </definition>
</definitions>