Get the field capabilities Generally available; Added in 5.4.0

GET /_field_caps

Get information about the capabilities of fields among multiple indices.

For data streams, the API returns field capabilities among the stream’s backing indices. It returns runtime fields like any other field. For example, a runtime field with a type of keyword is returned the same as any other field that belongs to the keyword family.

Required authorization

  • Index privileges: view_index_metadata,read

Query parameters

  • allow_no_indices boolean

    If false, the request returns an error if any wildcard expression, index alias, or _all value targets only missing or closed indices. This behavior applies even if the request targets other open indices. For example, a request targeting foo*,bar* returns an error if an index starts with foo but no index starts with bar.

  • expand_wildcards string | array[string]

    The type of index that wildcard patterns can match. If the request can target data streams, this argument determines whether wildcard expressions match hidden data streams. Supports comma-separated values, such as open,hidden.

    Values are all, open, closed, hidden, or none.

  • fields string | array[string]

    A comma-separated list of fields to retrieve capabilities for. Wildcard (*) expressions are supported.

  • ignore_unavailable boolean

    If true, missing or closed indices are not included in the response.

  • include_unmapped boolean

    If true, unmapped fields are included in the response.

  • filters string | array[string] Generally available; Added in 8.2.0

    A comma-separated list of filters to apply to the response.

  • types array[string] Generally available; Added in 8.2.0

    A comma-separated list of field types to include. Any fields that do not match one of these types will be excluded from the results. It defaults to empty, meaning that all field types are returned.

  • include_empty_fields boolean Generally available; Added in 8.13.0

    If false, empty fields are not included in the response.

application/json

Body

  • fields string | array[string]

    A list of fields to retrieve capabilities for. Wildcard (*) expressions are supported.

  • index_filter object

    Filter indices if the provided query rewrites to match_none on every shard.

    IMPORTANT: The filtering is done on a best-effort basis, it uses index statistics and mappings to rewrite queries to match_none instead of fully running the request. For instance a range query over a date field can rewrite to match_none if all documents within a shard (including deleted documents) are outside of the provided range. However, not all queries can rewrite to match_none so this API may return an index even if the provided filter matches no document.

    External documentation
    Hide index_filter attributes Show index_filter attributes object
    • bool object

      matches documents matching boolean combinations of other queries.

      External documentation
      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.

        Default value is 1.0.

      • _name string
      • filter object | array[object]

        The clause (query) must appear in matching documents. However, unlike must, the score of the query will be ignored.

        One of:

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

      • minimum_should_match
      • must object | array[object]

        The clause (query) must appear in matching documents and will contribute to the score.

        One of:

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

      • must_not object | array[object]

        The clause (query) must not appear in the matching documents. Because scoring is ignored, a score of 0 is returned for all documents.

        One of:

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

      • should object | array[object]

        The clause (query) should appear in the matching document.

        One of:

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

    • boosting object

      Returns documents matching a positive query while reducing the relevance score of documents that also match a negative query.

      External documentation
      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.

        Default value is 1.0.

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

        Query used to decrease the relevance score of matching documents.

      • positive object Required

        Any returned documents must match this query.

    • common object Deprecated
    • combined_fields object Generally available; Added in 7.13.0

      The combined_fields query supports searching multiple text fields as if their contents had been indexed into one combined field.

      External documentation
      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.

        Default value is 1.0.

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

        Default value is true.

      • operator string

        Boolean logic used to interpret text in the query value.

        Values are or or and.

      • minimum_should_match
      • zero_terms_query string

        Indicates whether no documents are returned if the analyzer removes all tokens, such as when using a stop filter.

        Values are none or all.

    • constant_score object

      Wraps a filter query and returns every matching document with a relevance score equal to the boost parameter value.

      External documentation
      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.

        Default value is 1.0.

      • _name string
      • filter object Required

        Filter query you wish to run. Any returned documents must match this query. Filter queries do not calculate relevance scores. To speed up performance, Elasticsearch automatically caches frequently used filter queries.

    • dis_max object

      Returns documents matching one or more wrapped queries, called query clauses or clauses. If a returned document matches multiple query clauses, the dis_max query assigns the document the highest relevance score from any matching clause, plus a tie breaking increment for any additional matching subqueries.

      External documentation
      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.

        Default value is 1.0.

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

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

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

      • tie_breaker number

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

        Default value is 0.0.

    • distance_feature object Required

      Boosts the relevance score of documents closer to a provided origin date or point. For example, you can use this query to give more weight to documents closer to a certain date or location.

      External documentation
    • exists object

      Returns documents that contain an indexed value for a field.

      External documentation
      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.

        Default value is 1.0.

      • _name string
      • field string Required

        Name of the field you wish to search.

    • function_score object

      The function_score enables you to modify the score of documents that are retrieved by a query.

      External documentation
      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.

        Default value is 1.0.

      • _name string
      • boost_mode string

        Defines how he newly computed score is combined with the score of the query

        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

        A query that determines the documents for which a new score is computed.

      • score_mode string

        Specifies how the computed scores are combined

        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

      Matches geo_point and geo_shape values that intersect a bounding box.

      External documentation
      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.

        Default value is 1.0.

      • _name string
      • type string

        Values are memory or indexed.

      • validation_method string

        Set to IGNORE_MALFORMED to accept geo points with invalid latitude or longitude. Set to COERCE to also try to infer correct latitude or longitude.

        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.

        Default value is false.

    • geo_distance object

      Matches geo_point and geo_shape values within a given distance of a geopoint.

      External documentation
      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.

        Default value is 1.0.

      • _name string
      • distance string Required

        The radius of the circle centred on the specified location. Points which fall into this circle are considered to be matches.

      • distance_type string

        How to compute the distance. Set to plane for a faster calculation that's inaccurate on long distances and close to the poles.

        Values are arc or plane.

      • validation_method string

        Set to IGNORE_MALFORMED to accept geo points with invalid latitude or longitude. Set to COERCE to also try to infer correct latitude or longitude.

        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.

        Default value is false.

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

        Default value is 1.0.

      • _name string
      • validation_method string

        Values are coerce, ignore_malformed, or strict.

      • ignore_unmapped boolean
    • geo_shape object

      Filter documents indexed using either the geo_shape or the geo_point type.

      External documentation
      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.

        Default value is 1.0.

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

        Default value is false.

    • has_child object

      Returns parent documents whose joined child documents match a provided query.

      External documentation
      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.

        Default value is 1.0.

      • _name string
      • ignore_unmapped boolean

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

        Default value is false.

      • inner_hits object

        If defined, each search hit will contain inner hits.

      • 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

        Query you wish to run on child documents of the type field. If a child document matches the search, the query returns the parent document.

      • score_mode string

        Indicates how scores for matching child documents affect the root parent document’s relevance score.

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

      • type string Required

        Name of the child relationship mapped for the join field.

    • has_parent object

      Returns child documents whose joined parent document matches a provided query.

      External documentation
      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.

        Default value is 1.0.

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

        Default value is false.

      • inner_hits object

        If defined, each search hit will contain inner hits.

      • parent_type string Required

        Name of the parent relationship mapped for the join field.

      • query object Required

        Query you wish to run on parent documents of the parent_type field. If a parent document matches the search, the query returns its child documents.

      • score boolean

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

        Default value is false.

    • ids object

      Returns documents based on their IDs. This query uses document IDs stored in the _id field.

      External documentation
      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.

        Default value is 1.0.

      • _name string
      • values
    • intervals object

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

      External documentation
    • knn object

      Finds the k nearest vectors to a query vector, as measured by a similarity metric. knn query finds nearest vectors through approximate search on indexed dense_vectors.

      External documentation
      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.

        Default value is 1.0.

      • _name string
      • field string Required

        The name of the vector field to search against

      • query_vector array[number]

        The query vector

      • query_vector_builder object

        The query vector builder. You must provide a query_vector_builder or query_vector, but not both.

      • num_candidates number

        The number of nearest neighbor candidates to consider per shard

      • visit_percentage number Generally available; Added in 9.2.0

        The percentage of vectors to explore per shard while doing knn search with bbq_disk

      • k number

        The final number of nearest neighbors to return as top hits

      • filter object | array[object]

        Filters for the kNN search query

        One of:

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

      • similarity number

        The minimum similarity for a vector to be considered a match

      • rescore_vector object

        Apply oversampling and rescoring to quantized vectors

    • 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

      Matches all documents, giving them all a _score of 1.0.

      External documentation
      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.

        Default value is 1.0.

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

      Matches no documents.

      External documentation
      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.

        Default value is 1.0.

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

      Returns documents that are "like" a given set of documents.

      External documentation
      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.

        Default value is 1.0.

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

        External documentation
      • 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).

        Default value is 0.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).

        Default value is true.

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

        Default value is false.

      • like array[string | object] Required
      • 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.

        Default value is 25.0.

      • max_word_length number

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

        Default value is 0.0.

      • min_doc_freq number

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

        Default value is 5.0.

      • minimum_should_match
      • min_term_freq number

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

        Default value is 2.0.

      • min_word_length number

        The minimum word length below which the terms are ignored.

        Default value is 0.0.

      • routing string
      • stop_words
      • unlike array[string | object]
      • version number
      • version_type string

        Values are internal, external, or external_gte.

    • multi_match object

      Enables you to search for a provided text, number, date or boolean value across multiple fields. The provided text is analyzed before matching.

      External documentation
      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.

        Default value is 1.0.

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

        Default value is true.

      • cutoff_frequency number Deprecated
      • fields string | array[string]

        The fields to be queried. Defaults to the index.query.default_field index settings, which in turn defaults to *.

      • fuzziness
      • fuzzy_rewrite string

        Method used to rewrite the query.

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

        Default value is true.

      • lenient boolean

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

        Default value is false.

      • max_expansions number

        Maximum number of terms to which the query will expand.

        Default value is 50.0.

      • minimum_should_match
      • operator string

        Boolean logic used to interpret text in the query value.

        Values are and, AND, or, or OR.

      • prefix_length number

        Number of beginning characters left unchanged for fuzzy matching.

        Default value is 0.0.

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

        Default value is 0.0.

      • tie_breaker number

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

        Default value is 0.0.

      • type string

        How the multi_match query is executed internally.

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

      • zero_terms_query string

        Indicates whether no documents are returned if the analyzer removes all tokens, such as when using a stop filter.

        Values are all or none.

    • nested object

      Wraps another query to search nested fields. If an object matches the search, the nested query returns the root parent document.

      External documentation
      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.

        Default value is 1.0.

      • _name string
      • ignore_unmapped boolean

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

        Default value is false.

      • inner_hits object

        If defined, each search hit will contain inner hits.

      • path string Required

        Path to the nested object you wish to search.

      • query object Required

        Query you wish to run on nested objects in the path.

      • score_mode string

        How scores for matching child objects affect the root parent document’s relevance score.

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

    • parent_id object

      Returns child documents joined to a specific parent document.

      External documentation
      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.

        Default value is 1.0.

      • _name string
      • id string

        ID of the parent document.

      • ignore_unmapped boolean

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

        Default value is false.

      • type string

        Name of the child relationship mapped for the join field.

    • percolate object

      Matches queries stored in an index.

      External documentation
      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.

        Default value is 1.0.

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

        Field that holds the indexed queries. The field must use the percolator mapping type.

      • id string

        The ID of a stored document to percolate.

      • index string

        The index of a stored document to percolate.

      • 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

        Routing used to fetch document to percolate.

      • version number

        The expected version of a stored document to percolate.

    • pinned object

      Promotes selected documents to rank higher than those matching a given query.

      External documentation
      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.

        Default value is 1.0.

      • _name string
      • ids array[string]

        Document IDs listed in the order they are to appear in results. Required if docs is not specified.

      • docs array[object]

        Documents listed in the order they are to appear in results. Required if ids is not specified.

    • prefix object

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

      External documentation
    • query_string object

      Returns documents based on a provided query string, using a parser with a strict syntax.

      External documentation
      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.

        Default value is 1.0.

      • _name string
      • allow_leading_wildcard boolean

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

        Default value is true.

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

        Default value is false.

      • auto_generate_synonyms_phrase_query boolean

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

        Default value is true.

      • default_field string

        Default field to search if no field is provided in the query string. Supports wildcards (*). Defaults to the index.query.default_field index setting, which has a default value of *.

      • default_operator string

        Default boolean logic used to interpret text in the query string if no operators are specified.

        Values are and, AND, or, or OR.

      • enable_position_increments boolean

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

        Default value is true.

      • escape boolean

        Default value is false.

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

        Default value is 50.0.

      • fuzzy_prefix_length number

        Number of beginning characters left unchanged for fuzzy matching.

        Default value is 0.0.

      • fuzzy_rewrite string

        Method used to rewrite the query.

      • fuzzy_transpositions boolean

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

        Default value is true.

      • lenient boolean

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

        Default value is false.

      • max_determinized_states number

        Maximum number of automaton states required for the query.

        Default value is 10000.0.

      • minimum_should_match
      • phrase_slop number

        Maximum number of positions allowed between matching tokens for phrases.

        Default value is 0.0.

      • 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

        Method used to rewrite the query.

      • tie_breaker number

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

      • time_zone string

        Coordinated Universal Time (UTC) offset or IANA time zone used to convert date values in the query string to UTC.

      • type string

        Determines how the query matches and scores documents.

        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

      Boosts the relevance score of documents based on the numeric value of a rank_feature or rank_features field.

      External documentation
      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.

        Default value is 1.0.

      • _name string
      • field string Required

        rank_feature or rank_features field used to boost relevance scores.

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

        Default value is 1.0.

      • _name string
      • organic object Required

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

      • ruleset_ids string | array[string]

      • ruleset_id string
      • match_criteria object Required
    • script object

      Filters documents based on a provided script. The script query is typically used in a filter context.

      External documentation
      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.

        Default value is 1.0.

      • _name string
      • script object Required

        Contains a script to run as a query. This script must return a boolean value, true or false.

    • script_score object

      Uses a script to provide a custom score for returned documents.

      External documentation
      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.

        Default value is 1.0.

      • _name string
      • min_score number

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

      • query object Required

        Query used to return documents.

      • script object Required

        Script used to compute the score of documents returned by the query. Important: final relevance scores from the script_score query cannot be negative.

    • semantic object Generally available; Added in 8.15.0

      A semantic query to semantic_text field types

      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.

        Default value is 1.0.

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

      Queries documents that contain fields indexed using the shape type.

      External documentation
      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.

        Default value is 1.0.

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

      Returns documents based on a provided query string, using a parser with a limited but fault-tolerant syntax.

      External documentation
      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.

        Default value is 1.0.

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

        Default value is false.

      • auto_generate_synonyms_phrase_query boolean

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

        Default value is true.

      • default_operator string

        Default boolean logic used to interpret text in the query string if no operators are specified.

        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.

        Default value is 50.0.

      • fuzzy_prefix_length number

        Number of beginning characters left unchanged for fuzzy matching.

        Default value is 0.0.

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

        Default value is false.

      • 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

      Returns matches which enclose another span query.

      External documentation
      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.

        Default value is 1.0.

      • _name string
      • big object Required

        Can be any span query. Matching spans from big that contain matches from little are returned.

      • little object Required

        Can be any span query. Matching spans from big that contain matches from little are returned.

    • span_field_masking object

      Wrapper to allow span queries to participate in composite single-field span queries by lying about their search field.

      External documentation
      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.

        Default value is 1.0.

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

      Matches spans near the beginning of a field.

      External documentation
      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.

        Default value is 1.0.

      • _name string
      • end number Required

        Controls the maximum end position permitted in a match.

      • match object Required

        Can be any other span type query.

    • span_multi object

      Allows you to wrap a multi term query (one of wildcard, fuzzy, prefix, range, or regexp query) as a span query, so it can be nested.

      External documentation
      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.

        Default value is 1.0.

      • _name string
      • match object Required

        Should be a multi term query (one of wildcard, fuzzy, prefix, range, or regexp query).

    • span_near object

      Matches spans which are near one another. You can specify slop, the maximum number of intervening unmatched positions, as well as whether matches are required to be in-order.

      External documentation
      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.

        Default value is 1.0.

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

      Removes matches which overlap with another span query or which are within x tokens before (controlled by the parameter pre) or y tokens after (controlled by the parameter post) another span query.

      External documentation
      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.

        Default value is 1.0.

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

        Span query whose matches must not overlap those returned.

      • include object Required

        Span query whose matches are filtered.

      • post number

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

        Default value is 0.0.

      • pre number

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

        Default value is 0.0.

    • span_or object

      Matches the union of its span clauses.

      External documentation
      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.

        Default value is 1.0.

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

      Returns matches which are enclosed inside another span query.

      External documentation
      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.

        Default value is 1.0.

      • _name string
      • big object Required

        Can be any span query. Matching spans from little that are enclosed within big are returned.

      • little object Required

        Can be any span query. Matching spans from little that are enclosed within big are returned.

    • sparse_vector object Generally available; Added in 8.15.0

      Using input query vectors or a natural language processing model to convert a query into a list of token-weight pairs, queries against a sparse vector field.

      External documentation
      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.

        Default value is 1.0.

      • _name string
      • query string

        The query text you want to use for search. If inference_id is specified, query must also be specified.

      • prune boolean Generally available; Added in 8.15.0

        Whether to perform pruning, omitting the non-significant tokens from the query to improve query performance. If prune is true but the pruning_config is not specified, pruning will occur but default values will be used. Default: false

      • query_vector object

        Dictionary of precomputed sparse vectors and their associated weights. Only one of inference_id or query_vector may be supplied in a request.

    • 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

      Returns documents that contain one or more exact terms in a provided field. To return a document, one or more terms must exactly match a field value, including whitespace and capitalization.

      External documentation
      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.

        Default value is 1.0.

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

      A query that accepts any other query as base64 encoded string.

      External documentation
      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.

        Default value is 1.0.

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

        Default value is 1.0.

      • _name string
      • value string Required
  • runtime_mappings object Generally available; Added in 7.12.0

    Define ad-hoc runtime fields in the request similar to the way it is done in search requests. These fields exist only as part of the query and take precedence over fields defined with the same name in the index mappings.

    Hide runtime_mappings attribute Show runtime_mappings 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

        For type lookup

      • target_field string

        For type lookup

      • target_index string

        For type lookup

      • script object

        Painless script executed at query time.

        Hide script attributes Show script attributes object
        • source
        • id string

          The id for a stored script.

        • 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
        • options object
          Hide options attribute Show options attribute object
          • * string Additional properties
      • type string Required

        Field type, which can be: boolean, composite, date, double, geo_point, ip,keyword, long, or lookup.

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

Responses

  • 200 application/json
    Hide response attributes Show response attributes object
    • indices string | array[string] Required

      The list of indices where this field has the same type family, or null if all indices have the same type family for the field.

    • fields object Required
      Hide fields attribute Show fields attribute object
      • * object Additional properties
        Hide * attribute Show * attribute object
        • * object Additional properties
          Hide * attributes Show * attributes object
          • aggregatable boolean Required

            Whether this field can be aggregated on all indices.

          • indices string | array[string]

            The list of indices where this field has the same type family, or null if all indices have the same type family for the field.

          • meta object

            Merged metadata across all indices as a map of string keys to arrays of values. A value length of 1 indicates that all indices had the same value for this key, while a length of 2 or more indicates that not all indices had the same value for this key.

            Hide meta attribute Show meta attribute object
            • * object Additional properties
          • non_aggregatable_indices string | array[string]

            The list of indices where this field is not aggregatable, or null if all indices have the same definition for the field.

          • non_searchable_indices string | array[string]

            The list of indices where this field is not searchable, or null if all indices have the same definition for the field.

          • searchable boolean Required

            Whether this field is indexed for search on all indices.

          • type string Required
          • metadata_field boolean

            Whether this field is registered as a metadata field.

          • time_series_dimension boolean Technical preview; Added in 8.0.0

            Whether this field is used as a time series dimension.

          • time_series_metric string

            Contains metric type if this fields is used as a time series metrics, absent if the field is not used as metric.

            Values are gauge, counter, summary, histogram, or position.

          • non_dimension_indices array[string] Technical preview; Added in 8.0.0

            If this list is present in response then some indices have the field marked as a dimension and other indices, the ones in this list, do not.

          • metric_conflicts_indices array[string] Technical preview; Added in 8.0.0

            The list of indices where this field is present if these indices don’t have the same time_series_metric value for this field.

GET /_field_caps
curl \
 --request GET 'http://api.example.com/_field_caps' \
 --header "Content-Type: application/json" \
 --data '"{\n  \"index_filter\": {\n    \"range\": {\n      \"@timestamp\": {\n        \"gte\": \"2018\"\n      }\n    }\n  }\n}"'
Request example
Run `POST my-index-*/_field_caps?fields=rating` to get field capabilities and filter indices with a query. Indices that rewrite the provided filter to `match_none` on every shard will be filtered from the response.
{
  "index_filter": {
    "range": {
      "@timestamp": {
        "gte": "2018"
      }
    }
  }
}
Response examples (200)
A successful response from `GET _field_caps?fields=rating,title`. The field `rating` is defined as a long in `index1` and `index2` and as a `keyword` in `index3` and `index4`. The field `rating` is not aggregatable in `index1`. The field `rating` is not searchable in `index4`. The field `title` is defined as text in all indices.
{
  "indices": [ "index1", "index2", "index3", "index4", "index5" ],
  "fields": {
    "rating": {                                   
      "long": {
        "metadata_field": false,
        "searchable": true,
        "aggregatable": false,
        "indices": [ "index1", "index2" ],
        "non_aggregatable_indices": [ "index1" ]  
      },
      "keyword": {
        "metadata_field": false,
        "searchable": false,
        "aggregatable": true,
        "indices": [ "index3", "index4" ],
        "non_searchable_indices": [ "index4" ]    
      }
    },
    "title": {                                    
      "text": {
        "metadata_field": false,
        "searchable": true,
        "aggregatable": false
      }
    }
  }
}
A successful response from `GET _field_caps?fields=rating,title&include_unmapped`. The response contains an entry for each field that is present in some indices but not all. For example, the `rating` and `title` fields are unmapped in `index5`.
{
  "indices": [ "index1", "index2", "index3", "index4", "index5" ],
  "fields": {
    "rating": {                                   
      "long": {
        "metadata_field": false,
        "searchable": true,
        "aggregatable": false,
        "indices": [ "index1", "index2" ],
        "non_aggregatable_indices": [ "index1" ]  
      },
      "keyword": {
        "metadata_field": false,
        "searchable": false,
        "aggregatable": true,
        "indices": [ "index3", "index4" ],
        "non_searchable_indices": [ "index4" ]    
      }
    },
    "title": {                                    
      "text": {
        "metadata_field": false,
        "searchable": true,
        "aggregatable": false
      }
    }
  }
}