Create or update a component template Generally available; Added in 7.8.0

POST /_component_template/{name}

Component templates are building blocks for constructing index templates that specify index mappings, settings, and aliases.

An index template can be composed of multiple component templates. To use a component template, specify it in an index template’s composed_of list. Component templates are only applied to new data streams and indices as part of a matching index template.

Settings and mappings specified directly in the index template or the create index request override any settings or mappings specified in a component template.

Component templates are only used during index creation. For data streams, this includes data stream creation and the creation of a stream’s backing indices. Changes to component templates do not affect existing indices, including a stream’s backing indices.

You can use C-style /* *\/ block comments in component templates. You can include comments anywhere in the request body except before the opening curly bracket.

Applying component templates

You cannot directly apply a component template to a data stream or index. To be applied, a component template must be included in an index template's composed_of list. ##Required authorization

  • Cluster privileges: manage_index_templates

Path parameters

  • name string Required

    Name of the component template to create. Elasticsearch includes the following built-in component templates: logs-mappings; logs-settings; metrics-mappings; metrics-settings;synthetics-mapping; synthetics-settings. Elastic Agent uses these templates to configure backing indices for its data streams. If you use Elastic Agent and want to overwrite one of these templates, set the version for your replacement template higher than the current version. If you don’t use Elastic Agent and want to disable all built-in component and index templates, set stack.templates.enabled to false using the cluster update settings API.

Query parameters

  • create boolean

    If true, this request cannot replace or update existing component templates.

  • 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.

    Values are -1 or 0.

application/json

Body Required

  • template object Required
    Hide template attributes Show template attributes object
    • aliases object
      Hide aliases attribute Show aliases attribute object
      • * object Additional properties
        Hide * attributes Show * attributes object
        • filter object

          An Elasticsearch Query DSL (Domain Specific Language) object that defines a query.

          External documentation
          Hide filter attributes Show filter attributes object
          • bool object
            Hide bool attributes Show bool attributes object
            • boost number

              Floating point number used to decrease or increase the relevance scores of the query. Boost values are relative to the default value of 1.0. A boost value between 0 and 1.0 decreases the relevance score. A value greater than 1.0 increases the relevance score.

            • _name string
            • filter
            • minimum_should_match
            • must
            • must_not
            • should
          • boosting object
            Hide boosting attributes Show boosting attributes object
            • boost number

              Floating point number used to decrease or increase the relevance scores of the query. Boost values are relative to the default value of 1.0. A boost value between 0 and 1.0 decreases the relevance score. A value greater than 1.0 increases the relevance score.

            • _name string
            • negative_boost number Required

              Floating point number between 0 and 1.0 used to decrease the relevance scores of documents matching the negative query.

            • negative object Required

              An Elasticsearch Query DSL (Domain Specific Language) object that defines a query.

            • positive object Required

              An Elasticsearch Query DSL (Domain Specific Language) object that defines a query.

          • common object Deprecated
          • combined_fields object
            Hide combined_fields attributes Show combined_fields attributes object
            • boost number

              Floating point number used to decrease or increase the relevance scores of the query. Boost values are relative to the default value of 1.0. A boost value between 0 and 1.0 decreases the relevance score. A value greater than 1.0 increases the relevance score.

            • _name string
            • fields array[string] Required

              List of fields to search. Field wildcard patterns are allowed. Only text fields are supported, and they must all have the same search analyzer.

            • query string Required

              Text to search for in the provided fields. The combined_fields query analyzes the provided text before performing a search.

            • auto_generate_synonyms_phrase_query boolean

              If true, match phrase queries are automatically created for multi-term synonyms.

            • operator string

              Values are or or and.

            • minimum_should_match
            • zero_terms_query string

              Values are none or all.

          • constant_score object
            Hide constant_score attributes Show constant_score attributes object
            • boost number

              Floating point number used to decrease or increase the relevance scores of the query. Boost values are relative to the default value of 1.0. A boost value between 0 and 1.0 decreases the relevance score. A value greater than 1.0 increases the relevance score.

            • _name string
            • filter object Required

              An Elasticsearch Query DSL (Domain Specific Language) object that defines a query.

          • dis_max object
            Hide dis_max attributes Show dis_max attributes object
            • boost number

              Floating point number used to decrease or increase the relevance scores of the query. Boost values are relative to the default value of 1.0. A boost value between 0 and 1.0 decreases the relevance score. A value greater than 1.0 increases the relevance score.

            • _name string
            • queries array[object] Required

              One or more query clauses. Returned documents must match one or more of these queries. If a document matches multiple queries, Elasticsearch uses the highest relevance score.

            • tie_breaker number

              Floating point number between 0 and 1.0 used to increase the relevance scores of documents matching multiple query clauses.

          • exists object
            Hide exists attributes Show exists attributes object
            • boost number

              Floating point number used to decrease or increase the relevance scores of the query. Boost values are relative to the default value of 1.0. A boost value between 0 and 1.0 decreases the relevance score. A value greater than 1.0 increases the relevance score.

            • _name string
            • field string Required

              Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.

          • function_score object
            Hide function_score attributes Show function_score attributes object
            • boost number

              Floating point number used to decrease or increase the relevance scores of the query. Boost values are relative to the default value of 1.0. A boost value between 0 and 1.0 decreases the relevance score. A value greater than 1.0 increases the relevance score.

            • _name string
            • boost_mode string

              Values are multiply, replace, sum, avg, max, or min.

            • functions array[object]

              One or more functions that compute a new score for each document returned by the query.

            • max_boost number

              Restricts the new score to not exceed the provided limit.

            • min_score number

              Excludes documents that do not meet the provided score threshold.

            • query object

              An Elasticsearch Query DSL (Domain Specific Language) object that defines a query.

            • score_mode string

              Values are multiply, sum, avg, first, max, or min.

          • fuzzy object

            Returns documents that contain terms similar to the search term, as measured by a Levenshtein edit distance.

            External documentation
          • geo_bounding_box object
            Hide geo_bounding_box attributes Show geo_bounding_box attributes object
            • boost number

              Floating point number used to decrease or increase the relevance scores of the query. Boost values are relative to the default value of 1.0. A boost value between 0 and 1.0 decreases the relevance score. A value greater than 1.0 increases the relevance score.

            • _name string
            • type string

              Values are memory or indexed.

            • validation_method string

              Values are coerce, ignore_malformed, or strict.

            • ignore_unmapped boolean

              Set to true to ignore an unmapped field and not match any documents for this query. Set to false to throw an exception if the field is not mapped.

          • geo_distance object
            Hide geo_distance attributes Show geo_distance attributes object
            • boost number

              Floating point number used to decrease or increase the relevance scores of the query. Boost values are relative to the default value of 1.0. A boost value between 0 and 1.0 decreases the relevance score. A value greater than 1.0 increases the relevance score.

            • _name string
            • distance string Required
            • distance_type string

              Values are arc or plane.

            • validation_method string

              Values are coerce, ignore_malformed, or strict.

            • ignore_unmapped boolean

              Set to true to ignore an unmapped field and not match any documents for this query. Set to false to throw an exception if the field is not mapped.

          • geo_grid object

            Matches geo_point and geo_shape values that intersect a grid cell from a GeoGrid aggregation.

          • geo_polygon object
            Hide geo_polygon attributes Show geo_polygon attributes object
            • boost number

              Floating point number used to decrease or increase the relevance scores of the query. Boost values are relative to the default value of 1.0. A boost value between 0 and 1.0 decreases the relevance score. A value greater than 1.0 increases the relevance score.

            • _name string
            • validation_method string

              Values are coerce, ignore_malformed, or strict.

            • ignore_unmapped boolean
          • geo_shape object
            Hide geo_shape attributes Show geo_shape attributes object
            • boost number

              Floating point number used to decrease or increase the relevance scores of the query. Boost values are relative to the default value of 1.0. A boost value between 0 and 1.0 decreases the relevance score. A value greater than 1.0 increases the relevance score.

            • _name string
            • ignore_unmapped boolean

              Set to true to ignore an unmapped field and not match any documents for this query. Set to false to throw an exception if the field is not mapped.

          • has_child object
            Hide has_child attributes Show has_child attributes object
            • boost number

              Floating point number used to decrease or increase the relevance scores of the query. Boost values are relative to the default value of 1.0. A boost value between 0 and 1.0 decreases the relevance score. A value greater than 1.0 increases the relevance score.

            • _name string
            • ignore_unmapped boolean

              Indicates whether to ignore an unmapped type and not return any documents instead of an error.

            • inner_hits object
            • max_children number

              Maximum number of child documents that match the query allowed for a returned parent document. If the parent document exceeds this limit, it is excluded from the search results.

            • min_children number

              Minimum number of child documents that match the query required to match the query for a returned parent document. If the parent document does not meet this limit, it is excluded from the search results.

            • query object Required

              An Elasticsearch Query DSL (Domain Specific Language) object that defines a query.

            • score_mode string

              Values are none, avg, sum, max, or min.

            • type string Required
          • has_parent object
            Hide has_parent attributes Show has_parent attributes object
            • boost number

              Floating point number used to decrease or increase the relevance scores of the query. Boost values are relative to the default value of 1.0. A boost value between 0 and 1.0 decreases the relevance score. A value greater than 1.0 increases the relevance score.

            • _name string
            • ignore_unmapped boolean

              Indicates whether to ignore an unmapped parent_type and not return any documents instead of an error. You can use this parameter to query multiple indices that may not contain the parent_type.

            • inner_hits object
            • parent_type string Required
            • query object Required

              An Elasticsearch Query DSL (Domain Specific Language) object that defines a query.

            • score boolean

              Indicates whether the relevance score of a matching parent document is aggregated into its child documents.

          • ids object
            Hide ids attributes Show ids attributes object
            • boost number

              Floating point number used to decrease or increase the relevance scores of the query. Boost values are relative to the default value of 1.0. A boost value between 0 and 1.0 decreases the relevance score. A value greater than 1.0 increases the relevance score.

            • _name string
            • values
          • intervals object

            Returns documents based on the order and proximity of matching terms.

            External documentation
          • knn object
            Hide knn attributes Show knn attributes object
            • boost number

              Floating point number used to decrease or increase the relevance scores of the query. Boost values are relative to the default value of 1.0. A boost value between 0 and 1.0 decreases the relevance score. A value greater than 1.0 increases the relevance score.

            • _name string
            • field string Required

              Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.

            • query_vector array[number]
            • query_vector_builder object
            • num_candidates number

              The number of nearest neighbor candidates to consider per shard

            • k number

              The final number of nearest neighbors to return as top hits

            • filter
            • similarity number

              The minimum similarity for a vector to be considered a match

            • rescore_vector object
          • match object

            Returns documents that match a provided text, number, date or boolean value. The provided text is analyzed before matching.

            External documentation
          • match_all object
            Hide match_all attributes Show match_all attributes object
            • boost number

              Floating point number used to decrease or increase the relevance scores of the query. Boost values are relative to the default value of 1.0. A boost value between 0 and 1.0 decreases the relevance score. A value greater than 1.0 increases the relevance score.

            • _name string
          • match_bool_prefix object

            Analyzes its input and constructs a bool query from the terms. Each term except the last is used in a term query. The last term is used in a prefix query.

            External documentation
          • match_none object
            Hide match_none attributes Show match_none attributes object
            • boost number

              Floating point number used to decrease or increase the relevance scores of the query. Boost values are relative to the default value of 1.0. A boost value between 0 and 1.0 decreases the relevance score. A value greater than 1.0 increases the relevance score.

            • _name string
          • match_phrase object

            Analyzes the text and creates a phrase query out of the analyzed text.

            External documentation
          • match_phrase_prefix object

            Returns documents that contain the words of a provided text, in the same order as provided. The last term of the provided text is treated as a prefix, matching any words that begin with that term.

            External documentation
          • more_like_this object
            Hide more_like_this attributes Show more_like_this attributes object
            • boost number

              Floating point number used to decrease or increase the relevance scores of the query. Boost values are relative to the default value of 1.0. A boost value between 0 and 1.0 decreases the relevance score. A value greater than 1.0 increases the relevance score.

            • _name string
            • analyzer string

              The analyzer that is used to analyze the free form text. Defaults to the analyzer associated with the first field in fields.

            • boost_terms number

              Each term in the formed query could be further boosted by their tf-idf score. This sets the boost factor to use when using this feature. Defaults to deactivated (0).

            • fail_on_unsupported_field boolean

              Controls whether the query should fail (throw an exception) if any of the specified fields are not of the supported types (text or keyword).

            • fields array[string]

              A list of fields to fetch and analyze the text from. Defaults to the index.query.default_field index setting, which has a default value of *.

            • include boolean

              Specifies whether the input documents should also be included in the search results returned.

            • like
            • max_doc_freq number

              The maximum document frequency above which the terms are ignored from the input document.

            • max_query_terms number

              The maximum number of query terms that can be selected.

            • max_word_length number

              The maximum word length above which the terms are ignored. Defaults to unbounded (0).

            • min_doc_freq number

              The minimum document frequency below which the terms are ignored from the input document.

            • minimum_should_match
            • min_term_freq number

              The minimum term frequency below which the terms are ignored from the input document.

            • min_word_length number

              The minimum word length below which the terms are ignored.

            • routing string
            • stop_words
            • unlike
            • version number
            • version_type string

              Values are internal, external, external_gte, or force.

          • multi_match object
            Hide multi_match attributes Show multi_match attributes object
            • boost number

              Floating point number used to decrease or increase the relevance scores of the query. Boost values are relative to the default value of 1.0. A boost value between 0 and 1.0 decreases the relevance score. A value greater than 1.0 increases the relevance score.

            • _name string
            • analyzer string

              Analyzer used to convert the text in the query value into tokens.

            • auto_generate_synonyms_phrase_query boolean

              If true, match phrase queries are automatically created for multi-term synonyms.

            • cutoff_frequency number Deprecated
            • fields string | array[string]
            • fuzziness
            • fuzzy_rewrite string
            • fuzzy_transpositions boolean

              If true, edits for fuzzy matching include transpositions of two adjacent characters (for example, ab to ba). Can be applied to the term subqueries constructed for all terms but the final term.

            • lenient boolean

              If true, format-based errors, such as providing a text query value for a numeric field, are ignored.

            • max_expansions number

              Maximum number of terms to which the query will expand.

            • minimum_should_match
            • operator string

              Values are and, AND, or, or OR.

            • prefix_length number

              Number of beginning characters left unchanged for fuzzy matching.

            • query string Required

              Text, number, boolean value or date you wish to find in the provided field.

            • slop number

              Maximum number of positions allowed between matching tokens.

            • tie_breaker number

              Determines how scores for each per-term blended query and scores across groups are combined.

            • type string

              Values are best_fields, most_fields, cross_fields, phrase, phrase_prefix, or bool_prefix.

            • zero_terms_query string

              Values are all or none.

          • nested object
            Hide nested attributes Show nested attributes object
            • boost number

              Floating point number used to decrease or increase the relevance scores of the query. Boost values are relative to the default value of 1.0. A boost value between 0 and 1.0 decreases the relevance score. A value greater than 1.0 increases the relevance score.

            • _name string
            • ignore_unmapped boolean

              Indicates whether to ignore an unmapped path and not return any documents instead of an error.

            • inner_hits object
            • path string Required

              Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.

            • query object Required

              An Elasticsearch Query DSL (Domain Specific Language) object that defines a query.

            • score_mode string

              Values are none, avg, sum, max, or min.

          • parent_id object
            Hide parent_id attributes Show parent_id attributes object
            • boost number

              Floating point number used to decrease or increase the relevance scores of the query. Boost values are relative to the default value of 1.0. A boost value between 0 and 1.0 decreases the relevance score. A value greater than 1.0 increases the relevance score.

            • _name string
            • id string
            • ignore_unmapped boolean

              Indicates whether to ignore an unmapped type and not return any documents instead of an error.

            • type string
          • percolate object
            Hide percolate attributes Show percolate attributes object
            • boost number

              Floating point number used to decrease or increase the relevance scores of the query. Boost values are relative to the default value of 1.0. A boost value between 0 and 1.0 decreases the relevance score. A value greater than 1.0 increases the relevance score.

            • _name string
            • document object

              The source of the document being percolated.

            • documents array[object]

              An array of sources of the documents being percolated.

            • field string Required

              Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.

            • id string
            • index string
            • name string

              The suffix used for the _percolator_document_slot field when multiple percolate queries are specified.

            • preference string

              Preference used to fetch document to percolate.

            • routing string
            • version number
          • pinned object
            Hide pinned attributes Show pinned attributes object
            • boost number

              Floating point number used to decrease or increase the relevance scores of the query. Boost values are relative to the default value of 1.0. A boost value between 0 and 1.0 decreases the relevance score. A value greater than 1.0 increases the relevance score.

            • _name string
          • prefix object

            Returns documents that contain a specific prefix in a provided field.

            External documentation
          • query_string object
            Hide query_string attributes Show query_string attributes object
            • boost number

              Floating point number used to decrease or increase the relevance scores of the query. Boost values are relative to the default value of 1.0. A boost value between 0 and 1.0 decreases the relevance score. A value greater than 1.0 increases the relevance score.

            • _name string
            • allow_leading_wildcard boolean

              If true, the wildcard characters * and ? are allowed as the first character of the query string.

            • analyzer string

              Analyzer used to convert text in the query string into tokens.

            • analyze_wildcard boolean

              If true, the query attempts to analyze wildcard terms in the query string.

            • auto_generate_synonyms_phrase_query boolean

              If true, match phrase queries are automatically created for multi-term synonyms.

            • default_field string

              Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.

            • default_operator string

              Values are and, AND, or, or OR.

            • enable_position_increments boolean

              If true, enable position increments in queries constructed from a query_string search.

            • escape boolean
            • fields array[string]

              Array of fields to search. Supports wildcards (*).

            • fuzziness
            • fuzzy_max_expansions number

              Maximum number of terms to which the query expands for fuzzy matching.

            • fuzzy_prefix_length number

              Number of beginning characters left unchanged for fuzzy matching.

            • fuzzy_rewrite string
            • fuzzy_transpositions boolean

              If true, edits for fuzzy matching include transpositions of two adjacent characters (for example, ab to ba).

            • lenient boolean

              If true, format-based errors, such as providing a text value for a numeric field, are ignored.

            • max_determinized_states number

              Maximum number of automaton states required for the query.

            • minimum_should_match
            • phrase_slop number

              Maximum number of positions allowed between matching tokens for phrases.

            • query string Required

              Query string you wish to parse and use for search.

            • quote_analyzer string

              Analyzer used to convert quoted text in the query string into tokens. For quoted text, this parameter overrides the analyzer specified in the analyzer parameter.

            • quote_field_suffix string

              Suffix appended to quoted text in the query string. You can use this suffix to use a different analysis method for exact matches.

            • rewrite string
            • tie_breaker number

              How to combine the queries generated from the individual search terms in the resulting dis_max query.

            • time_zone string
            • type string

              Values are best_fields, most_fields, cross_fields, phrase, phrase_prefix, or bool_prefix.

          • range object

            Returns documents that contain terms within a provided range.

            External documentation
          • rank_feature object
            Hide rank_feature attributes Show rank_feature attributes object
            • boost number

              Floating point number used to decrease or increase the relevance scores of the query. Boost values are relative to the default value of 1.0. A boost value between 0 and 1.0 decreases the relevance score. A value greater than 1.0 increases the relevance score.

            • _name string
            • field string Required

              Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.

          • regexp object

            Returns documents that contain terms matching a regular expression.

            External documentation
          • rule object
            Hide rule attributes Show rule attributes object
            • boost number

              Floating point number used to decrease or increase the relevance scores of the query. Boost values are relative to the default value of 1.0. A boost value between 0 and 1.0 decreases the relevance score. A value greater than 1.0 increases the relevance score.

            • _name string
            • organic object Required

              An Elasticsearch Query DSL (Domain Specific Language) object that defines a query.

            • ruleset_ids
            • ruleset_id string
            • match_criteria object Required
          • script object
            Hide script attributes Show script attributes object
            • boost number

              Floating point number used to decrease or increase the relevance scores of the query. Boost values are relative to the default value of 1.0. A boost value between 0 and 1.0 decreases the relevance score. A value greater than 1.0 increases the relevance score.

            • _name string
            • script object Required
          • script_score object
            Hide script_score attributes Show script_score attributes object
            • boost number

              Floating point number used to decrease or increase the relevance scores of the query. Boost values are relative to the default value of 1.0. A boost value between 0 and 1.0 decreases the relevance score. A value greater than 1.0 increases the relevance score.

            • _name string
            • min_score number

              Documents with a score lower than this floating point number are excluded from the search results.

            • query object Required

              An Elasticsearch Query DSL (Domain Specific Language) object that defines a query.

            • script object Required
          • semantic object
            Hide semantic attributes Show semantic attributes object
            • boost number

              Floating point number used to decrease or increase the relevance scores of the query. Boost values are relative to the default value of 1.0. A boost value between 0 and 1.0 decreases the relevance score. A value greater than 1.0 increases the relevance score.

            • _name string
            • field string Required

              The field to query, which must be a semantic_text field type

            • query string Required

              The query text

          • shape object
            Hide shape attributes Show shape attributes object
            • boost number

              Floating point number used to decrease or increase the relevance scores of the query. Boost values are relative to the default value of 1.0. A boost value between 0 and 1.0 decreases the relevance score. A value greater than 1.0 increases the relevance score.

            • _name string
            • ignore_unmapped boolean

              When set to true the query ignores an unmapped field and will not match any documents.

          • simple_query_string object
            Hide simple_query_string attributes Show simple_query_string attributes object
            • boost number

              Floating point number used to decrease or increase the relevance scores of the query. Boost values are relative to the default value of 1.0. A boost value between 0 and 1.0 decreases the relevance score. A value greater than 1.0 increases the relevance score.

            • _name string
            • analyzer string

              Analyzer used to convert text in the query string into tokens.

            • analyze_wildcard boolean

              If true, the query attempts to analyze wildcard terms in the query string.

            • auto_generate_synonyms_phrase_query boolean

              If true, the parser creates a match_phrase query for each multi-position token.

            • default_operator string

              Values are and, AND, or, or OR.

            • fields array[string]

              Array of fields you wish to search. Accepts wildcard expressions. You also can boost relevance scores for matches to particular fields using a caret (^) notation. Defaults to the index.query.default_field index setting, which has a default value of *.

            • fuzzy_max_expansions number

              Maximum number of terms to which the query expands for fuzzy matching.

            • fuzzy_prefix_length number

              Number of beginning characters left unchanged for fuzzy matching.

            • fuzzy_transpositions boolean

              If true, edits for fuzzy matching include transpositions of two adjacent characters (for example, ab to ba).

            • lenient boolean

              If true, format-based errors, such as providing a text value for a numeric field, are ignored.

            • minimum_should_match
            • query string Required

              Query string in the simple query string syntax you wish to parse and use for search.

            • quote_field_suffix string

              Suffix appended to quoted text in the query string.

          • span_containing object
            Hide span_containing attributes Show span_containing attributes object
            • boost number

              Floating point number used to decrease or increase the relevance scores of the query. Boost values are relative to the default value of 1.0. A boost value between 0 and 1.0 decreases the relevance score. A value greater than 1.0 increases the relevance score.

            • _name string
            • big object Required
            • little object Required
          • span_field_masking object
            Hide span_field_masking attributes Show span_field_masking attributes object
            • boost number

              Floating point number used to decrease or increase the relevance scores of the query. Boost values are relative to the default value of 1.0. A boost value between 0 and 1.0 decreases the relevance score. A value greater than 1.0 increases the relevance score.

            • _name string
            • field string Required

              Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.

            • query object Required
          • span_first object
            Hide span_first attributes Show span_first attributes object
            • boost number

              Floating point number used to decrease or increase the relevance scores of the query. Boost values are relative to the default value of 1.0. A boost value between 0 and 1.0 decreases the relevance score. A value greater than 1.0 increases the relevance score.

            • _name string
            • end number Required

              Controls the maximum end position permitted in a match.

            • match object Required
          • span_multi object
            Hide span_multi attributes Show span_multi attributes object
            • boost number

              Floating point number used to decrease or increase the relevance scores of the query. Boost values are relative to the default value of 1.0. A boost value between 0 and 1.0 decreases the relevance score. A value greater than 1.0 increases the relevance score.

            • _name string
            • match object Required

              An Elasticsearch Query DSL (Domain Specific Language) object that defines a query.

          • span_near object
            Hide span_near attributes Show span_near attributes object
            • boost number

              Floating point number used to decrease or increase the relevance scores of the query. Boost values are relative to the default value of 1.0. A boost value between 0 and 1.0 decreases the relevance score. A value greater than 1.0 increases the relevance score.

            • _name string
            • clauses array[object] Required

              Array of one or more other span type queries.

            • in_order boolean

              Controls whether matches are required to be in-order.

            • slop number

              Controls the maximum number of intervening unmatched positions permitted.

          • span_not object
            Hide span_not attributes Show span_not attributes object
            • boost number

              Floating point number used to decrease or increase the relevance scores of the query. Boost values are relative to the default value of 1.0. A boost value between 0 and 1.0 decreases the relevance score. A value greater than 1.0 increases the relevance score.

            • _name string
            • dist number

              The number of tokens from within the include span that can’t have overlap with the exclude span. Equivalent to setting both pre and post.

            • exclude object Required
            • include object Required
            • post number

              The number of tokens after the include span that can’t have overlap with the exclude span.

            • pre number

              The number of tokens before the include span that can’t have overlap with the exclude span.

          • span_or object
            Hide span_or attributes Show span_or attributes object
            • boost number

              Floating point number used to decrease or increase the relevance scores of the query. Boost values are relative to the default value of 1.0. A boost value between 0 and 1.0 decreases the relevance score. A value greater than 1.0 increases the relevance score.

            • _name string
            • clauses array[object] Required

              Array of one or more other span type queries.

          • span_term object

            Matches spans containing a term.

            External documentation
          • span_within object
            Hide span_within attributes Show span_within attributes object
            • boost number

              Floating point number used to decrease or increase the relevance scores of the query. Boost values are relative to the default value of 1.0. A boost value between 0 and 1.0 decreases the relevance score. A value greater than 1.0 increases the relevance score.

            • _name string
            • big object Required
            • little object Required
          • sparse_vector object
            Hide sparse_vector attributes Show sparse_vector attributes object
            • boost number

              Floating point number used to decrease or increase the relevance scores of the query. Boost values are relative to the default value of 1.0. A boost value between 0 and 1.0 decreases the relevance score. A value greater than 1.0 increases the relevance score.

            • _name string
          • term object

            Returns documents that contain an exact term in a provided field. To return a document, the query term must exactly match the queried field's value, including whitespace and capitalization.

            External documentation
          • terms object
            Hide terms attributes Show terms attributes object
            • boost number

              Floating point number used to decrease or increase the relevance scores of the query. Boost values are relative to the default value of 1.0. A boost value between 0 and 1.0 decreases the relevance score. A value greater than 1.0 increases the relevance score.

            • _name string
          • terms_set object

            Returns documents that contain a minimum number of exact terms in a provided field. To return a document, a required number of terms must exactly match the field values, including whitespace and capitalization.

            External documentation
          • text_expansion object Deprecated Generally available; Added in 8.8.0

            Uses a natural language processing model to convert the query text into a list of token-weight pairs which are then used in a query against a sparse vector or rank features field.

            External documentation
          • weighted_tokens object Deprecated Generally available; Added in 8.13.0

            Supports returning text_expansion query results by sending in precomputed tokens with the query.

            External documentation
          • wildcard object

            Returns documents that contain terms matching a wildcard pattern.

            External documentation
          • wrapper object
            Hide wrapper attributes Show wrapper attributes object
            • boost number

              Floating point number used to decrease or increase the relevance scores of the query. Boost values are relative to the default value of 1.0. A boost value between 0 and 1.0 decreases the relevance score. A value greater than 1.0 increases the relevance score.

            • _name string
            • query string Required

              A base64 encoded query. The binary data format can be any of JSON, YAML, CBOR or SMILE encodings

          • type object
            Hide type attributes Show type attributes object
            • boost number

              Floating point number used to decrease or increase the relevance scores of the query. Boost values are relative to the default value of 1.0. A boost value between 0 and 1.0 decreases the relevance score. A value greater than 1.0 increases the relevance score.

            • _name string
            • value string Required
        • index_routing string
        • is_hidden boolean

          If true, the alias is hidden. All indices for the alias must have the same is_hidden value.

        • is_write_index boolean

          If true, the index is the write index for the alias.

        • routing string
        • search_routing string
    • mappings object
      Hide mappings attributes Show mappings attributes object
      • all_field object
        Hide all_field attributes Show all_field attributes object
        • analyzer string Required
        • enabled boolean Required
        • omit_norms boolean Required
        • search_analyzer string Required
        • similarity string Required
        • store boolean Required
        • store_term_vector_offsets boolean Required
        • store_term_vector_payloads boolean Required
        • store_term_vector_positions boolean Required
        • store_term_vectors boolean Required
      • date_detection boolean
      • dynamic string

        Values are strict, runtime, true, or false.

      • dynamic_date_formats array[string]
      • dynamic_templates array[object]
      • _field_names object
        Hide _field_names attribute Show _field_names attribute object
        • enabled boolean Required
      • index_field object
        Hide index_field attribute Show index_field attribute object
        • enabled boolean Required
      • _meta object
        Hide _meta attribute Show _meta attribute object
        • * object Additional properties
      • numeric_detection boolean
      • properties object
      • _routing object
        Hide _routing attribute Show _routing attribute object
        • required boolean Required
      • _size object
        Hide _size attribute Show _size attribute object
        • enabled boolean Required
      • _source object
        Hide _source attributes Show _source attributes object
        • compress boolean
        • compress_threshold string
        • enabled boolean
        • excludes array[string]
        • includes array[string]
        • mode string

          Values are disabled, stored, or synthetic.

      • runtime object
        Hide runtime attribute Show runtime attribute object
        • * object Additional properties
          Hide * attributes Show * attributes object
          • fields object

            For type composite

            Hide fields attribute Show fields attribute object
            • * object Additional properties
              Hide * attribute Show * attribute object
              • type string Required

                Values are boolean, composite, date, double, geo_point, geo_shape, ip, keyword, long, or lookup.

          • fetch_fields array[object]

            For type lookup

            Hide fetch_fields attributes Show fetch_fields attributes object
            • field string Required

              Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.

            • format string
          • format string

            A custom format for date type runtime fields.

          • input_field string

            Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.

          • target_field string

            Path to field or array of paths. Some API's support wildcards in the path to select multiple fields.

          • target_index string
          • script object
            Hide script attributes Show script attributes object
            • id string
            • params object

              Specifies any named parameters that are passed into the script as variables. Use parameters instead of hard-coded values to decrease compile time.

              Hide params attribute Show params attribute object
              • * object Additional properties
            • lang string

              Any of:

              Values are painless, expression, mustache, or java.

            • options object
              Hide options attribute Show options attribute object
              • * string Additional properties
          • type string Required

            Values are boolean, composite, date, double, geo_point, geo_shape, ip, keyword, long, or lookup.

      • enabled boolean
      • subobjects string

        Values are true or false.

      • _data_stream_timestamp object
        Hide _data_stream_timestamp attribute Show _data_stream_timestamp attribute object
        • enabled boolean Required
    • settings object
      Hide settings attributes Show settings attributes object
      • index object
      • mode string
      • routing_path string | array[string]

      • soft_deletes object
        Hide soft_deletes attributes Show soft_deletes attributes object
        • enabled boolean

          Indicates whether soft deletes are enabled on the index.

        • retention_lease object
          Hide retention_lease attribute Show retention_lease attribute object
          • period string Required

            A duration. Units can be nanos, micros, ms (milliseconds), s (seconds), m (minutes), h (hours) and d (days). Also accepts "0" without a unit and "-1" to indicate an unspecified value.

      • sort object
        Hide sort attributes Show sort attributes object
      • number_of_shards number | string

      • number_of_replicas number | string

      • number_of_routing_shards number
      • check_on_startup string

        Values are true, false, or checksum.

      • codec string
      • routing_partition_size number | string

        Some APIs will return values such as numbers also as a string (notably epoch timestamps). This behavior is used to capture this behavior while keeping the semantics of the field type.

        Depending on the target language, code generators can keep the union or remove it and leniently parse strings to the target type.

      • load_fixed_bitset_filters_eagerly boolean
      • hidden boolean | string

      • auto_expand_replicas string | null

        One of:

        A null value that is to be interpreted as an actual value, unless other uses of null that are equivalent to a missing value. It is used for exemple in settings, where using the NullValue for a setting will reset it to its default value.

      • merge object
        Hide merge attribute Show merge attribute object
        • scheduler object
          Hide scheduler attributes Show scheduler attributes object
          • max_thread_count number | string

            Some APIs will return values such as numbers also as a string (notably epoch timestamps). This behavior is used to capture this behavior while keeping the semantics of the field type.

            Depending on the target language, code generators can keep the union or remove it and leniently parse strings to the target type.

          • max_merge_count number | string

            Some APIs will return values such as numbers also as a string (notably epoch timestamps). This behavior is used to capture this behavior while keeping the semantics of the field type.

            Depending on the target language, code generators can keep the union or remove it and leniently parse strings to the target type.

      • refresh_interval string

        A duration. Units can be nanos, micros, ms (milliseconds), s (seconds), m (minutes), h (hours) and d (days). Also accepts "0" without a unit and "-1" to indicate an unspecified value.

      • max_result_window number
      • max_inner_result_window number
      • max_rescore_window number
      • max_script_fields number
      • max_ngram_diff number
      • max_shingle_diff number
      • blocks object
        Hide blocks attributes Show blocks attributes object
        • read_only boolean | string

          Some APIs will return values such as numbers also as a string (notably epoch timestamps). This behavior is used to capture this behavior while keeping the semantics of the field type.

          Depending on the target language, code generators can keep the union or remove it and leniently parse strings to the target type.

        • read_only_allow_delete boolean | string

          Some APIs will return values such as numbers also as a string (notably epoch timestamps). This behavior is used to capture this behavior while keeping the semantics of the field type.

          Depending on the target language, code generators can keep the union or remove it and leniently parse strings to the target type.

        • read boolean | string

          Some APIs will return values such as numbers also as a string (notably epoch timestamps). This behavior is used to capture this behavior while keeping the semantics of the field type.

          Depending on the target language, code generators can keep the union or remove it and leniently parse strings to the target type.

        • write boolean | string

          Some APIs will return values such as numbers also as a string (notably epoch timestamps). This behavior is used to capture this behavior while keeping the semantics of the field type.

          Depending on the target language, code generators can keep the union or remove it and leniently parse strings to the target type.

        • metadata boolean | string

          Some APIs will return values such as numbers also as a string (notably epoch timestamps). This behavior is used to capture this behavior while keeping the semantics of the field type.

          Depending on the target language, code generators can keep the union or remove it and leniently parse strings to the target type.

      • max_refresh_listeners number
      • analyze object
        Hide analyze attribute Show analyze attribute object
        • max_token_count number | string

          Some APIs will return values such as numbers also as a string (notably epoch timestamps). This behavior is used to capture this behavior while keeping the semantics of the field type.

          Depending on the target language, code generators can keep the union or remove it and leniently parse strings to the target type.

      • highlight object
        Hide highlight attribute Show highlight attribute object
        • max_analyzed_offset number
      • max_terms_count number
      • max_regex_length number
      • routing object
        Hide routing attributes Show routing attributes object
        • allocation object
          Hide allocation attributes Show allocation attributes object
          • enable string

            Values are all, primaries, new_primaries, or none.

          • include object
            Hide include attributes Show include attributes object
            • _tier_preference string
            • _id string
          • initial_recovery object
            Hide initial_recovery attribute Show initial_recovery attribute object
            • _id string
          • disk object
            Hide disk attribute Show disk attribute object
        • rebalance object
          Hide rebalance attribute Show rebalance attribute object
          • enable string Required

            Values are all, primaries, replicas, or none.

      • gc_deletes string

        A duration. Units can be nanos, micros, ms (milliseconds), s (seconds), m (minutes), h (hours) and d (days). Also accepts "0" without a unit and "-1" to indicate an unspecified value.

      • default_pipeline string
      • final_pipeline string
      • lifecycle object
        Hide lifecycle attributes Show lifecycle attributes object
        • name string
        • indexing_complete boolean | string

          Some APIs will return values such as numbers also as a string (notably epoch timestamps). This behavior is used to capture this behavior while keeping the semantics of the field type.

          Depending on the target language, code generators can keep the union or remove it and leniently parse strings to the target type.

        • origination_date number

          If specified, this is the timestamp used to calculate the index age for its phase transitions. Use this setting if you create a new index that contains old data and want to use the original creation date to calculate the index age. Specified as a Unix epoch value in milliseconds.

        • parse_origination_date boolean

          Set to true to parse the origination date from the index name. This origination date is used to calculate the index age for its phase transitions. The index name must match the pattern .*-{date_format}-\d+, where the date_format is yyyy.MM.dd and the trailing digits are optional. An index that was rolled over would normally match the full format, for example logs-2016.10.31-000002). If the index name doesn’t match the pattern, index creation fails.

        • step object
          Hide step attribute Show step attribute object
          • wait_time_threshold string

            A duration. Units can be nanos, micros, ms (milliseconds), s (seconds), m (minutes), h (hours) and d (days). Also accepts "0" without a unit and "-1" to indicate an unspecified value.

        • rollover_alias string

          The index alias to update when the index rolls over. Specify when using a policy that contains a rollover action. When the index rolls over, the alias is updated to reflect that the index is no longer the write index. For more information about rolling indices, see Rollover.

        • prefer_ilm boolean | string

          Preference for the system that manages a data stream backing index (preferring ILM when both ILM and DLM are applicable for an index).

      • provided_name string
      • creation_date number | string

        Some APIs will return values such as numbers also as a string (notably epoch timestamps). This behavior is used to capture this behavior while keeping the semantics of the field type.

        Depending on the target language, code generators can keep the union or remove it and leniently parse strings to the target type.

      • creation_date_string string | number

        A date and time, either as a string whose format can depend on the context (defaulting to ISO 8601), or a number of milliseconds since the Epoch. Elasticsearch accepts both as input, but will generally output a string representation.

        One of:

        Time unit for milliseconds

      • uuid string
      • version object
        Hide version attributes Show version attributes object
        • created string
        • created_string string
      • verified_before_close boolean | string

      • format string | number

      • max_slices_per_scroll number
      • translog object
        Hide translog attributes Show translog attributes object
        • sync_interval string

          A duration. Units can be nanos, micros, ms (milliseconds), s (seconds), m (minutes), h (hours) and d (days). Also accepts "0" without a unit and "-1" to indicate an unspecified value.

        • durability string

          Values are request, REQUEST, async, or ASYNC.

        • flush_threshold_size number | string

        • retention object
          Hide retention attributes Show retention attributes object
          • size number | string

          • age string

            A duration. Units can be nanos, micros, ms (milliseconds), s (seconds), m (minutes), h (hours) and d (days). Also accepts "0" without a unit and "-1" to indicate an unspecified value.

      • query_string object
        Hide query_string attribute Show query_string attribute object
        • lenient boolean | string Required

          Some APIs will return values such as numbers also as a string (notably epoch timestamps). This behavior is used to capture this behavior while keeping the semantics of the field type.

          Depending on the target language, code generators can keep the union or remove it and leniently parse strings to the target type.

      • priority number | string

      • top_metrics_max_size number
      • analysis object
        Hide analysis attributes Show analysis attributes object
        • analyzer object
        • char_filter object
        • filter object
        • normalizer object
        • tokenizer object
      • settings object
      • time_series object
        Hide time_series attributes Show time_series attributes object
        • end_time string | number

          A date and time, either as a string whose format can depend on the context (defaulting to ISO 8601), or a number of milliseconds since the Epoch. Elasticsearch accepts both as input, but will generally output a string representation.

          One of:

          Time unit for milliseconds

        • start_time string | number

          A date and time, either as a string whose format can depend on the context (defaulting to ISO 8601), or a number of milliseconds since the Epoch. Elasticsearch accepts both as input, but will generally output a string representation.

          One of:

          Time unit for milliseconds

      • queries object
        Hide queries attribute Show queries attribute object
        • cache object
          Hide cache attribute Show cache attribute object
          • enabled boolean Required
      • similarity object

        Configure custom similarity settings to customize how search results are scored.

      • mapping object
        Hide mapping attributes Show mapping attributes object
        • coerce boolean
        • total_fields object
          Hide total_fields attributes Show total_fields attributes object
          • limit number | string

            The maximum number of fields in an index. Field and object mappings, as well as field aliases count towards this limit. The limit is in place to prevent mappings and searches from becoming too large. Higher values can lead to performance degradations and memory issues, especially in clusters with a high load or few resources.

          • ignore_dynamic_beyond_limit boolean | string

            This setting determines what happens when a dynamically mapped field would exceed the total fields limit. When set to false (the default), the index request of the document that tries to add a dynamic field to the mapping will fail with the message Limit of total fields [X] has been exceeded. When set to true, the index request will not fail. Instead, fields that would exceed the limit are not added to the mapping, similar to dynamic: false. The fields that were not added to the mapping will be added to the _ignored field.

        • depth object
          Hide depth attribute Show depth attribute object
          • limit number

            The maximum depth for a field, which is measured as the number of inner objects. For instance, if all fields are defined at the root object level, then the depth is 1. If there is one object mapping, then the depth is 2, etc.

        • nested_fields object
          Hide nested_fields attribute Show nested_fields attribute object
          • limit number

            The maximum number of distinct nested mappings in an index. The nested type should only be used in special cases, when arrays of objects need to be queried independently of each other. To safeguard against poorly designed mappings, this setting limits the number of unique nested types per index.

        • nested_objects object
          Hide nested_objects attribute Show nested_objects attribute object
          • limit number

            The maximum number of nested JSON objects that a single document can contain across all nested types. This limit helps to prevent out of memory errors when a document contains too many nested objects.

        • field_name_length object
          Hide field_name_length attribute Show field_name_length attribute object
          • limit number

            Setting for the maximum length of a field name. This setting isn’t really something that addresses mappings explosion but might still be useful if you want to limit the field length. It usually shouldn’t be necessary to set this setting. The default is okay unless a user starts to add a huge number of fields with really long names. Default is Long.MAX_VALUE (no limit).

        • dimension_fields object
          Hide dimension_fields attribute Show dimension_fields attribute object
          • limit number

            [preview] This functionality is in technical preview and may be changed or removed in a future release. Elastic will work to fix any issues, but features in technical preview are not subject to the support SLA of official GA features.

        • source object
          Hide source attribute Show source attribute object
          • mode string Required

            Values are disabled, stored, or synthetic.

        • ignore_malformed boolean | string

      • indexing.slowlog object
        Hide indexing.slowlog attributes Show indexing.slowlog attributes object
        • level string
        • source number
        • reformat boolean
        • threshold object
          Hide threshold attribute Show threshold attribute object
          • index object
            Hide index attributes Show index attributes object
            • warn string

              A duration. Units can be nanos, micros, ms (milliseconds), s (seconds), m (minutes), h (hours) and d (days). Also accepts "0" without a unit and "-1" to indicate an unspecified value.

            • info string

              A duration. Units can be nanos, micros, ms (milliseconds), s (seconds), m (minutes), h (hours) and d (days). Also accepts "0" without a unit and "-1" to indicate an unspecified value.

            • debug string

              A duration. Units can be nanos, micros, ms (milliseconds), s (seconds), m (minutes), h (hours) and d (days). Also accepts "0" without a unit and "-1" to indicate an unspecified value.

            • trace string

              A duration. Units can be nanos, micros, ms (milliseconds), s (seconds), m (minutes), h (hours) and d (days). Also accepts "0" without a unit and "-1" to indicate an unspecified value.

      • indexing_pressure object
        Hide indexing_pressure attribute Show indexing_pressure attribute object
        • memory object Required
          Hide memory attribute Show memory attribute object
          • limit number

            Number of outstanding bytes that may be consumed by indexing requests. When this limit is reached or exceeded, the node will reject new coordinating and primary operations. When replica operations consume 1.5x this limit, the node will reject new replica operations. Defaults to 10% of the heap.

      • store object
        Hide store attributes Show store attributes object
        • type string Required

          Any of:

          Values are fs, niofs, mmapfs, or hybridfs.

        • allow_mmap boolean

          You can restrict the use of the mmapfs and the related hybridfs store type via the setting node.store.allow_mmap. This is a boolean setting indicating whether or not memory-mapping is allowed. The default is to allow it. This setting is useful, for example, if you are in an environment where you can not control the ability to create a lot of memory maps so you need disable the ability to use memory-mapping.

    • defaults object
      Hide defaults attributes Show defaults attributes object
      • index object
      • mode string
      • routing_path string | array[string]

      • soft_deletes object
        Hide soft_deletes attributes Show soft_deletes attributes object
        • enabled boolean

          Indicates whether soft deletes are enabled on the index.

        • retention_lease object
          Hide retention_lease attribute Show retention_lease attribute object
          • period string Required

            A duration. Units can be nanos, micros, ms (milliseconds), s (seconds), m (minutes), h (hours) and d (days). Also accepts "0" without a unit and "-1" to indicate an unspecified value.

      • sort object
        Hide sort attributes Show sort attributes object
      • number_of_shards number | string

      • number_of_replicas number | string

      • number_of_routing_shards number
      • check_on_startup string

        Values are true, false, or checksum.

      • codec string
      • routing_partition_size number | string

        Some APIs will return values such as numbers also as a string (notably epoch timestamps). This behavior is used to capture this behavior while keeping the semantics of the field type.

        Depending on the target language, code generators can keep the union or remove it and leniently parse strings to the target type.

      • load_fixed_bitset_filters_eagerly boolean
      • hidden boolean | string

      • auto_expand_replicas string | null

        One of:

        A null value that is to be interpreted as an actual value, unless other uses of null that are equivalent to a missing value. It is used for exemple in settings, where using the NullValue for a setting will reset it to its default value.

      • merge object
        Hide merge attribute Show merge attribute object
        • scheduler object
          Hide scheduler attributes Show scheduler attributes object
          • max_thread_count number | string

            Some APIs will return values such as numbers also as a string (notably epoch timestamps). This behavior is used to capture this behavior while keeping the semantics of the field type.

            Depending on the target language, code generators can keep the union or remove it and leniently parse strings to the target type.

          • max_merge_count number | string

            Some APIs will return values such as numbers also as a string (notably epoch timestamps). This behavior is used to capture this behavior while keeping the semantics of the field type.

            Depending on the target language, code generators can keep the union or remove it and leniently parse strings to the target type.

      • refresh_interval string

        A duration. Units can be nanos, micros, ms (milliseconds), s (seconds), m (minutes), h (hours) and d (days). Also accepts "0" without a unit and "-1" to indicate an unspecified value.

      • max_result_window number
      • max_inner_result_window number
      • max_rescore_window number
      • max_script_fields number
      • max_ngram_diff number
      • max_shingle_diff number
      • blocks object
        Hide blocks attributes Show blocks attributes object
        • read_only boolean | string

          Some APIs will return values such as numbers also as a string (notably epoch timestamps). This behavior is used to capture this behavior while keeping the semantics of the field type.

          Depending on the target language, code generators can keep the union or remove it and leniently parse strings to the target type.

        • read_only_allow_delete boolean | string

          Some APIs will return values such as numbers also as a string (notably epoch timestamps). This behavior is used to capture this behavior while keeping the semantics of the field type.

          Depending on the target language, code generators can keep the union or remove it and leniently parse strings to the target type.

        • read boolean | string

          Some APIs will return values such as numbers also as a string (notably epoch timestamps). This behavior is used to capture this behavior while keeping the semantics of the field type.

          Depending on the target language, code generators can keep the union or remove it and leniently parse strings to the target type.

        • write boolean | string

          Some APIs will return values such as numbers also as a string (notably epoch timestamps). This behavior is used to capture this behavior while keeping the semantics of the field type.

          Depending on the target language, code generators can keep the union or remove it and leniently parse strings to the target type.

        • metadata boolean | string

          Some APIs will return values such as numbers also as a string (notably epoch timestamps). This behavior is used to capture this behavior while keeping the semantics of the field type.

          Depending on the target language, code generators can keep the union or remove it and leniently parse strings to the target type.

      • max_refresh_listeners number
      • analyze object
        Hide analyze attribute Show analyze attribute object
        • max_token_count number | string

          Some APIs will return values such as numbers also as a string (notably epoch timestamps). This behavior is used to capture this behavior while keeping the semantics of the field type.

          Depending on the target language, code generators can keep the union or remove it and leniently parse strings to the target type.

      • highlight object
        Hide highlight attribute Show highlight attribute object
        • max_analyzed_offset number
      • max_terms_count number
      • max_regex_length number
      • routing object
        Hide routing attributes Show routing attributes object
        • allocation object
          Hide allocation attributes Show allocation attributes object
          • enable string

            Values are all, primaries, new_primaries, or none.

          • include object
            Hide include attributes Show include attributes object
            • _tier_preference string
            • _id string
          • initial_recovery object
            Hide initial_recovery attribute Show initial_recovery attribute object
            • _id string
          • disk object
            Hide disk attribute Show disk attribute object
        • rebalance object
          Hide rebalance attribute Show rebalance attribute object
          • enable string Required

            Values are all, primaries, replicas, or none.

      • gc_deletes string

        A duration. Units can be nanos, micros, ms (milliseconds), s (seconds), m (minutes), h (hours) and d (days). Also accepts "0" without a unit and "-1" to indicate an unspecified value.

      • default_pipeline string
      • final_pipeline string
      • lifecycle object
        Hide lifecycle attributes Show lifecycle attributes object
        • name string
        • indexing_complete boolean | string

          Some APIs will return values such as numbers also as a string (notably epoch timestamps). This behavior is used to capture this behavior while keeping the semantics of the field type.

          Depending on the target language, code generators can keep the union or remove it and leniently parse strings to the target type.

        • origination_date number

          If specified, this is the timestamp used to calculate the index age for its phase transitions. Use this setting if you create a new index that contains old data and want to use the original creation date to calculate the index age. Specified as a Unix epoch value in milliseconds.

        • parse_origination_date boolean

          Set to true to parse the origination date from the index name. This origination date is used to calculate the index age for its phase transitions. The index name must match the pattern .*-{date_format}-\d+, where the date_format is yyyy.MM.dd and the trailing digits are optional. An index that was rolled over would normally match the full format, for example logs-2016.10.31-000002). If the index name doesn’t match the pattern, index creation fails.

        • step object
          Hide step attribute Show step attribute object
          • wait_time_threshold string

            A duration. Units can be nanos, micros, ms (milliseconds), s (seconds), m (minutes), h (hours) and d (days). Also accepts "0" without a unit and "-1" to indicate an unspecified value.

        • rollover_alias string

          The index alias to update when the index rolls over. Specify when using a policy that contains a rollover action. When the index rolls over, the alias is updated to reflect that the index is no longer the write index. For more information about rolling indices, see Rollover.

        • prefer_ilm boolean | string

          Preference for the system that manages a data stream backing index (preferring ILM when both ILM and DLM are applicable for an index).

      • provided_name string
      • creation_date number | string

        Some APIs will return values such as numbers also as a string (notably epoch timestamps). This behavior is used to capture this behavior while keeping the semantics of the field type.

        Depending on the target language, code generators can keep the union or remove it and leniently parse strings to the target type.

      • creation_date_string string | number

        A date and time, either as a string whose format can depend on the context (defaulting to ISO 8601), or a number of milliseconds since the Epoch. Elasticsearch accepts both as input, but will generally output a string representation.

        One of:

        Time unit for milliseconds

      • uuid string
      • version object
        Hide version attributes Show version attributes object
        • created string
        • created_string string
      • verified_before_close boolean | string

      • format string | number

      • max_slices_per_scroll number
      • translog object
        Hide translog attributes Show translog attributes object
        • sync_interval string

          A duration. Units can be nanos, micros, ms (milliseconds), s (seconds), m (minutes), h (hours) and d (days). Also accepts "0" without a unit and "-1" to indicate an unspecified value.

        • durability string

          Values are request, REQUEST, async, or ASYNC.

        • flush_threshold_size number | string

        • retention object
          Hide retention attributes Show retention attributes object
          • size number | string

          • age string

            A duration. Units can be nanos, micros, ms (milliseconds), s (seconds), m (minutes), h (hours) and d (days). Also accepts "0" without a unit and "-1" to indicate an unspecified value.

      • query_string object
        Hide query_string attribute Show query_string attribute object
        • lenient boolean | string Required

          Some APIs will return values such as numbers also as a string (notably epoch timestamps). This behavior is used to capture this behavior while keeping the semantics of the field type.

          Depending on the target language, code generators can keep the union or remove it and leniently parse strings to the target type.

      • priority number | string

      • top_metrics_max_size number
      • analysis object
        Hide analysis attributes Show analysis attributes object
        • analyzer object
        • char_filter object
        • filter object
        • normalizer object
        • tokenizer object
      • settings object
      • time_series object
        Hide time_series attributes Show time_series attributes object
        • end_time string | number

          A date and time, either as a string whose format can depend on the context (defaulting to ISO 8601), or a number of milliseconds since the Epoch. Elasticsearch accepts both as input, but will generally output a string representation.

          One of:

          Time unit for milliseconds

        • start_time string | number

          A date and time, either as a string whose format can depend on the context (defaulting to ISO 8601), or a number of milliseconds since the Epoch. Elasticsearch accepts both as input, but will generally output a string representation.

          One of:

          Time unit for milliseconds

      • queries object
        Hide queries attribute Show queries attribute object
        • cache object
          Hide cache attribute Show cache attribute object
          • enabled boolean Required
      • similarity object

        Configure custom similarity settings to customize how search results are scored.

      • mapping object
        Hide mapping attributes Show mapping attributes object
        • coerce boolean
        • total_fields object
          Hide total_fields attributes Show total_fields attributes object
          • limit number | string

            The maximum number of fields in an index. Field and object mappings, as well as field aliases count towards this limit. The limit is in place to prevent mappings and searches from becoming too large. Higher values can lead to performance degradations and memory issues, especially in clusters with a high load or few resources.

          • ignore_dynamic_beyond_limit boolean | string

            This setting determines what happens when a dynamically mapped field would exceed the total fields limit. When set to false (the default), the index request of the document that tries to add a dynamic field to the mapping will fail with the message Limit of total fields [X] has been exceeded. When set to true, the index request will not fail. Instead, fields that would exceed the limit are not added to the mapping, similar to dynamic: false. The fields that were not added to the mapping will be added to the _ignored field.

        • depth object
          Hide depth attribute Show depth attribute object
          • limit number

            The maximum depth for a field, which is measured as the number of inner objects. For instance, if all fields are defined at the root object level, then the depth is 1. If there is one object mapping, then the depth is 2, etc.

        • nested_fields object
          Hide nested_fields attribute Show nested_fields attribute object
          • limit number

            The maximum number of distinct nested mappings in an index. The nested type should only be used in special cases, when arrays of objects need to be queried independently of each other. To safeguard against poorly designed mappings, this setting limits the number of unique nested types per index.

        • nested_objects object
          Hide nested_objects attribute Show nested_objects attribute object
          • limit number

            The maximum number of nested JSON objects that a single document can contain across all nested types. This limit helps to prevent out of memory errors when a document contains too many nested objects.

        • field_name_length object
          Hide field_name_length attribute Show field_name_length attribute object
          • limit number

            Setting for the maximum length of a field name. This setting isn’t really something that addresses mappings explosion but might still be useful if you want to limit the field length. It usually shouldn’t be necessary to set this setting. The default is okay unless a user starts to add a huge number of fields with really long names. Default is Long.MAX_VALUE (no limit).

        • dimension_fields object
          Hide dimension_fields attribute Show dimension_fields attribute object
          • limit number

            [preview] This functionality is in technical preview and may be changed or removed in a future release. Elastic will work to fix any issues, but features in technical preview are not subject to the support SLA of official GA features.

        • source object
          Hide source attribute Show source attribute object
          • mode string Required

            Values are disabled, stored, or synthetic.

        • ignore_malformed boolean | string

      • indexing.slowlog object
        Hide indexing.slowlog attributes Show indexing.slowlog attributes object
        • level string
        • source number
        • reformat boolean
        • threshold object
          Hide threshold attribute Show threshold attribute object
          • index object
            Hide index attributes Show index attributes object
            • warn string

              A duration. Units can be nanos, micros, ms (milliseconds), s (seconds), m (minutes), h (hours) and d (days). Also accepts "0" without a unit and "-1" to indicate an unspecified value.

            • info string

              A duration. Units can be nanos, micros, ms (milliseconds), s (seconds), m (minutes), h (hours) and d (days). Also accepts "0" without a unit and "-1" to indicate an unspecified value.

            • debug string

              A duration. Units can be nanos, micros, ms (milliseconds), s (seconds), m (minutes), h (hours) and d (days). Also accepts "0" without a unit and "-1" to indicate an unspecified value.

            • trace string

              A duration. Units can be nanos, micros, ms (milliseconds), s (seconds), m (minutes), h (hours) and d (days). Also accepts "0" without a unit and "-1" to indicate an unspecified value.

      • indexing_pressure object
        Hide indexing_pressure attribute Show indexing_pressure attribute object
        • memory object Required
          Hide memory attribute Show memory attribute object
          • limit number

            Number of outstanding bytes that may be consumed by indexing requests. When this limit is reached or exceeded, the node will reject new coordinating and primary operations. When replica operations consume 1.5x this limit, the node will reject new replica operations. Defaults to 10% of the heap.

      • store object
        Hide store attributes Show store attributes object
        • type string Required

          Any of:

          Values are fs, niofs, mmapfs, or hybridfs.

        • allow_mmap boolean

          You can restrict the use of the mmapfs and the related hybridfs store type via the setting node.store.allow_mmap. This is a boolean setting indicating whether or not memory-mapping is allowed. The default is to allow it. This setting is useful, for example, if you are in an environment where you can not control the ability to create a lot of memory maps so you need disable the ability to use memory-mapping.

    • data_stream string
    • lifecycle object
      Hide lifecycle attributes Show lifecycle attributes object
      • data_retention string

        A duration. Units can be nanos, micros, ms (milliseconds), s (seconds), m (minutes), h (hours) and d (days). Also accepts "0" without a unit and "-1" to indicate an unspecified value.

      • downsampling object
        Hide downsampling attribute Show downsampling attribute object
        • rounds array[object] Required

          The list of downsampling rounds to execute as part of this downsampling configuration

          Hide rounds attributes Show rounds attributes object
          • after string Required

            A duration. Units can be nanos, micros, ms (milliseconds), s (seconds), m (minutes), h (hours) and d (days). Also accepts "0" without a unit and "-1" to indicate an unspecified value.

          • config object Required
            Hide config attribute Show config attribute object
            • fixed_interval string Required

              A date histogram interval. Similar to Duration with additional units: w (week), M (month), q (quarter) and y (year)

      • enabled boolean

        If defined, it turns data stream lifecycle on/off (true/false) for this data stream. A data stream lifecycle that's disabled (enabled: false) will have no effect on the data stream.

  • version number
  • _meta object
    Hide _meta attribute Show _meta attribute object
    • * object Additional properties
  • deprecated boolean

    Marks this index template as deprecated. When creating or updating a non-deprecated index template that uses deprecated components, Elasticsearch will emit a deprecation warning.

Responses

  • 200 application/json
    Hide response attribute Show response attribute object
    • acknowledged boolean Required

      For a successful response, this value is always true. On failure, an exception is returned instead.

POST /_component_template/{name}
PUT _component_template/component_template1
{
  "template": {
    "mappings": {
      "properties": {
        "@timestamp": {
          "type": "date"
        }
      }
    }
  }
}
curl \
 --request POST 'http://api.example.com/_component_template/{name}' \
 --header "Content-Type: application/json" \
 --data '"{\n  \"template\": {\n    \"mappings\": {\n      \"properties\": {\n        \"@timestamp\": {\n          \"type\": \"date\"\n        }\n      }\n    }\n  }\n}"'
Request examples
An example body for a `PUT _component_template/component_template1` request.
{
  "template": {
    "mappings": {
      "properties": {
        "@timestamp": {
          "type": "date"
        }
      }
    }
  }
}
{
  "template": null,
  "settings": {
    "number_of_shards": 1
  },
  "mappings": {
    "_source": {
      "enabled": false
    },
    "properties": {
      "host_name": {
        "type": "keyword"
      },
      "created_at": {
        "type": "date",
        "format": "EEE MMM dd HH:mm:ss Z yyyy"
      }
    }
  }
}
You can include index aliases in a component template. During index creation, the `{index}` placeholder in the alias name will be replaced with the actual index name that the template gets applied to.
{
  "template": null,
  "settings": {
    "number_of_shards": 1
  },
  "aliases": {
    "alias1": {},
    "alias2": {
      "filter": {
        "term": {
          "user.id": "kimchy"
        }
      },
      "routing": "shard-1"
    },
    "{index}-alias": {}
  }
}

Documentation preview

This is a preview of your version @2025-06-09 which is not yet released.