Create or update an autoscaling policy Added in 7.11.0

PUT /_autoscaling/policy/{name}

NOTE: This feature is designed for indirect use by Elasticsearch Service, Elastic Cloud Enterprise, and Elastic Cloud on Kubernetes. Direct use is not supported.

External documentation

Path parameters

  • name string Required

    the name of the autoscaling policy

Query parameters

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

  • timeout string

    Period to wait for a response. If no response is received before the timeout expires, the request fails and returns an error.

application/json

Body Required

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.

PUT /_autoscaling/policy/{name}
curl \
 --request PUT 'http://api.example.com/_autoscaling/policy/{name}' \
 --header "Authorization: $API_KEY" \
 --header "Content-Type: application/json" \
 --data '"{\n  \"roles\": [],\n  \"deciders\": {\n    \"fixed\": {\n    }\n  }\n}"'
Request examples
{
  "roles": [],
  "deciders": {
    "fixed": {
    }
  }
}
The API method and path for this request: `PUT /_autoscaling/policy/my_autoscaling_policy`. It creates `my_autoscaling_policy` using the fixed autoscaling decider, applying to the set of nodes having (only) the `data_hot` role.
{
  "roles" : [ "data_hot" ],
  "deciders": {
    "fixed": {
    }
  }
}
Response examples (200)
{
  "acknowledged": true
}










































































































Get anomaly detection jobs Added in 7.7.0

GET /_cat/ml/anomaly_detectors

Get configuration and usage information for anomaly detection jobs. This API returns a maximum of 10,000 jobs. If the Elasticsearch security features are enabled, you must have monitor_ml, monitor, manage_ml, or manage cluster privileges to use this API.

IMPORTANT: CAT APIs are only intended for human consumption using the Kibana console or command line. They are not intended for use by applications. For application consumption, use the get anomaly detection job statistics API.

Query parameters

  • Specifies what to do when the request:

    • Contains wildcard expressions and there are no jobs that match.
    • Contains the _all string or no identifiers and there are no matches.
    • Contains wildcard expressions and there are only partial matches.

    If true, the API returns an empty jobs array when there are no matches and the subset of results when there are partial matches. If false, the API returns a 404 status code when there are no matches or only partial matches.

  • bytes string

    The unit used to display byte values.

    Values are b, kb, mb, gb, tb, or pb.

  • h string | array[string]

    Comma-separated list of column names to display.

  • s string | array[string]

    Comma-separated list of column names or column aliases used to sort the response.

  • time string

    The unit used to display time values.

    Values are nanos, micros, ms, s, m, h, or d.

Responses

  • 200 application/json
    Hide response attributes Show response attributes object
    • id string
    • state string

      Values are closing, closed, opened, failed, or opening.

    • For open jobs only, the amount of time the job has been opened.

    • For open anomaly detection jobs only, contains messages relating to the selection of a node to run the job.

    • The number of input documents that have been processed by the anomaly detection job. This value includes documents with missing fields, since they are nonetheless analyzed. If you use datafeeds and have aggregations in your search query, the processed_record_count is the number of aggregation results processed, not the number of Elasticsearch documents.

    • The total number of fields in all the documents that have been processed by the anomaly detection job. Only fields that are specified in the detector configuration object contribute to this count. The timestamp is not included in this count.

    • The number of input documents posted to the anomaly detection job.

    • The total number of fields in input documents posted to the anomaly detection job. This count includes fields that are not used in the analysis. However, be aware that if you are using a datafeed, it extracts only the required fields from the documents it retrieves before posting them to the job.

    • The number of input documents with either a missing date field or a date that could not be parsed.

    • The number of input documents that are missing a field that the anomaly detection job is configured to analyze. Input documents with missing fields are still processed because it is possible that not all fields are missing. If you are using datafeeds or posting data to the job in JSON format, a high missing_field_count is often not an indication of data issues. It is not necessarily a cause for concern.

    • The number of input documents that have a timestamp chronologically preceding the start of the current anomaly detection bucket offset by the latency window. This information is applicable only when you provide data to the anomaly detection job by using the post data API. These out of order documents are discarded, since jobs require time series data to be in ascending chronological order.

    • The number of buckets which did not contain any data. If your data contains many empty buckets, consider increasing your bucket_span or using functions that are tolerant to gaps in data such as mean, non_null_sum or non_zero_count.

    • The number of buckets that contained few data points compared to the expected number of data points. If your data contains many sparse buckets, consider using a longer bucket_span.

    • The total number of buckets processed.

    • The timestamp of the earliest chronologically input document.

    • The timestamp of the latest chronologically input document.

    • The timestamp at which data was last analyzed, according to server time.

    • The timestamp of the last bucket that did not contain any data.

    • The timestamp of the last bucket that was considered sparse.

    • Values are ok, soft_limit, or hard_limit.

    • The upper limit for model memory usage, checked on increasing values.

    • The number of by field values that were analyzed by the models. This value is cumulative for all detectors in the job.

    • The number of over field values that were analyzed by the models. This value is cumulative for all detectors in the job.

    • The number of partition field values that were analyzed by the models. This value is cumulative for all detectors in the job.

    • The number of buckets for which new entities in incoming data were not processed due to insufficient model memory. This situation is also signified by a hard_limit: memory_status property value.

    • Values are ok or warn.

    • The number of documents that have had a field categorized.

    • The number of categories created by categorization.

    • The number of categories that match more than 1% of categorized documents.

    • The number of categories that match just one categorized document.

    • The number of categories created by categorization that will never be assigned again because another category’s definition makes it a superset of the dead category. Dead categories are a side effect of the way categorization has no prior training.

    • The number of times that categorization wanted to create a new category but couldn’t because the job had hit its model_memory_limit. This count does not track which specific categories failed to be created. Therefore you cannot use this value to determine the number of unique categories that were missed.

    • The timestamp when the model stats were gathered, according to server time.

    • The timestamp of the last record when the model stats were gathered.

    • The number of individual forecasts currently available for the job. A value of one or more indicates that forecasts exist.

    • The minimum memory usage in bytes for forecasts related to the anomaly detection job.

    • The maximum memory usage in bytes for forecasts related to the anomaly detection job.

    • The average memory usage in bytes for forecasts related to the anomaly detection job.

    • The total memory usage in bytes for forecasts related to the anomaly detection job.

    • The minimum number of model_forecast documents written for forecasts related to the anomaly detection job.

    • The maximum number of model_forecast documents written for forecasts related to the anomaly detection job.

    • The average number of model_forecast documents written for forecasts related to the anomaly detection job.

    • The total number of model_forecast documents written for forecasts related to the anomaly detection job.

    • The minimum runtime in milliseconds for forecasts related to the anomaly detection job.

    • The maximum runtime in milliseconds for forecasts related to the anomaly detection job.

    • The average runtime in milliseconds for forecasts related to the anomaly detection job.

    • The total runtime in milliseconds for forecasts related to the anomaly detection job.

    • node.id string
    • The name of the assigned node.

    • The network address of the assigned node.

    • The number of bucket results produced by the job.

    • The sum of all bucket processing times, in milliseconds.

    • The minimum of all bucket processing times, in milliseconds.

    • The maximum of all bucket processing times, in milliseconds.

    • The exponential moving average of all bucket processing times, in milliseconds.

    • The exponential moving average of bucket processing times calculated in a one hour time window, in milliseconds.

GET /_cat/ml/anomaly_detectors
curl \
 --request GET 'http://api.example.com/_cat/ml/anomaly_detectors' \
 --header "Authorization: $API_KEY"
Response examples (200)
A successful response from `GET _cat/ml/anomaly_detectors?h=id,s,dpr,mb&v=true&format=json`.
[
  {
    "id": "high_sum_total_sales",
    "s": "closed",
    "dpr": "14022",
    "mb": "1.5mb"
  },
  {
    "id": "low_request_rate",
    "s": "closed",
    "dpr": "1216",
    "mb": "40.5kb"
  },
  {
    "id": "response_code_rates",
    "s": "closed",
    "dpr": "28146",
    "mb": "132.7kb"
  },
  {
    "id": "url_scanning",
    "s": "closed",
    "dpr": "28146",
    "mb": "501.6kb"
  }
]





















































































































Get the cluster health status Added in 1.3.0

GET /_cluster/health

You can also use the API to get the health status of only specified data streams and indices. For data streams, the API retrieves the health status of the stream’s backing indices.

The cluster health status is: green, yellow or red. On the shard level, a red status indicates that the specific shard is not allocated in the cluster. Yellow means that the primary shard is allocated but replicas are not. Green means that all shards are allocated. The index level status is controlled by the worst shard status.

One of the main benefits of the API is the ability to wait until the cluster reaches a certain high watermark health level. The cluster status is controlled by the worst index status.

Query parameters

  • expand_wildcards string | array[string]

    Whether to expand wildcard expression to concrete indices that are open, closed or both.

  • level string

    Can be one of cluster, indices or shards. Controls the details level of the health information returned.

    Values are cluster, indices, or shards.

  • local boolean

    If true, the request retrieves information from the local node only. Defaults to false, which means information is retrieved from the master node.

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

  • timeout string

    Period to wait for a response. If no response is received before the timeout expires, the request fails and returns an error.

  • wait_for_active_shards number | string

    A number controlling to how many active shards to wait for, all to wait for all shards in the cluster to be active, or 0 to not wait.

  • Can be one of immediate, urgent, high, normal, low, languid. Wait until all currently queued events with the given priority are processed.

    Values are immediate, urgent, high, normal, low, or languid.

  • wait_for_nodes string | number

    The request waits until the specified number N of nodes is available. It also accepts >=N, <=N, >N and <N. Alternatively, it is possible to use ge(N), le(N), gt(N) and lt(N) notation.

  • A boolean value which controls whether to wait (until the timeout provided) for the cluster to have no shard initializations. Defaults to false, which means it will not wait for initializing shards.

  • A boolean value which controls whether to wait (until the timeout provided) for the cluster to have no shard relocations. Defaults to false, which means it will not wait for relocating shards.

  • One of green, yellow or red. Will wait (until the timeout provided) until the status of the cluster changes to the one provided or better, i.e. green > yellow > red. By default, will not wait for any status.

    Values are green, GREEN, yellow, YELLOW, red, or RED.

Responses

GET /_cluster/health
curl \
 --request GET 'http://api.example.com/_cluster/health' \
 --header "Authorization: $API_KEY"
Response examples (200)
A successful response from `GET _cluster/health`. It is the health status of a quiet single node cluster with a single index with one shard and one replica.
{
  "cluster_name" : "testcluster",
  "status" : "yellow",
  "timed_out" : false,
  "number_of_nodes" : 1,
  "number_of_data_nodes" : 1,
  "active_primary_shards" : 1,
  "active_shards" : 1,
  "relocating_shards" : 0,
  "initializing_shards" : 0,
  "unassigned_shards" : 1,
  "delayed_unassigned_shards": 0,
  "number_of_pending_tasks" : 0,
  "number_of_in_flight_fetch": 0,
  "task_max_waiting_in_queue_millis": 0,
  "active_shards_percent_as_number": 50.0
}






























































































































































































































Update the connector filtering Beta

PUT /_connector/{connector_id}/_filtering

Update the draft filtering configuration of a connector and marks the draft validation state as edited. The filtering draft is activated once validated by the running Elastic connector service. The filtering property is used to configure sync rules (both basic and advanced) for a connector.

Path parameters

  • connector_id string Required

    The unique identifier of the connector to be updated

application/json

Body Required

  • filtering array[object]
    Hide filtering attributes Show filtering attributes object
    • active object Required
      Hide active attributes Show active attributes object
      • advanced_snippet object Required
        Hide advanced_snippet attributes Show advanced_snippet attributes object
      • rules array[object] Required
        Hide rules attributes Show rules attributes object
        • field string Required

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

        • id string Required
        • order number Required
        • policy string Required

          Values are exclude or include.

        • rule string Required

          Values are contains, ends_with, equals, regex, starts_with, >, or <.

        • value string Required
      • validation object Required
        Hide validation attributes Show validation attributes object
        • errors array[object] Required
          Hide errors attributes Show errors attributes object
        • state string Required

          Values are edited, invalid, or valid.

    • domain string
    • draft object Required
      Hide draft attributes Show draft attributes object
      • advanced_snippet object Required
        Hide advanced_snippet attributes Show advanced_snippet attributes object
      • rules array[object] Required
        Hide rules attributes Show rules attributes object
        • field string Required

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

        • id string Required
        • order number Required
        • policy string Required

          Values are exclude or include.

        • rule string Required

          Values are contains, ends_with, equals, regex, starts_with, >, or <.

        • value string Required
      • validation object Required
        Hide validation attributes Show validation attributes object
        • errors array[object] Required
          Hide errors attributes Show errors attributes object
        • state string Required

          Values are edited, invalid, or valid.

  • rules array[object]
    Hide rules attributes Show rules attributes object
    • created_at 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.

    • field string Required

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

    • id string Required
    • order number Required
    • policy string Required

      Values are exclude or include.

    • rule string Required

      Values are contains, ends_with, equals, regex, starts_with, >, or <.

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

    • value string Required
  • Hide advanced_snippet attributes Show advanced_snippet attributes object

Responses

  • 200 application/json
    Hide response attribute Show response attribute object
    • result string Required

      Values are created, updated, deleted, not_found, or noop.

PUT /_connector/{connector_id}/_filtering
curl \
 --request PUT 'http://api.example.com/_connector/{connector_id}/_filtering' \
 --header "Authorization: $API_KEY" \
 --header "Content-Type: application/json" \
 --data '"{\n    \"rules\": [\n         {\n            \"field\": \"file_extension\",\n            \"id\": \"exclude-txt-files\",\n            \"order\": 0,\n            \"policy\": \"exclude\",\n            \"rule\": \"equals\",\n            \"value\": \"txt\"\n        },\n        {\n            \"field\": \"_\",\n            \"id\": \"DEFAULT\",\n            \"order\": 1,\n            \"policy\": \"include\",\n            \"rule\": \"regex\",\n            \"value\": \".*\"\n        }\n    ]\n}"'
Request examples
{
    "rules": [
         {
            "field": "file_extension",
            "id": "exclude-txt-files",
            "order": 0,
            "policy": "exclude",
            "rule": "equals",
            "value": "txt"
        },
        {
            "field": "_",
            "id": "DEFAULT",
            "order": 1,
            "policy": "include",
            "rule": "regex",
            "value": ".*"
        }
    ]
}
{
    "advanced_snippet": {
        "value": [{
            "tables": [
                "users",
                "orders"
            ],
            "query": "SELECT users.id AS id, orders.order_id AS order_id FROM users JOIN orders ON users.id = orders.user_id"
        }]
    }
}
Response examples (200)
{
  "result": "updated"
}




















Path parameters

  • connector_id string Required

    The unique identifier of the connector to be updated

application/json

Body Required

  • scheduling object Required
    Hide scheduling attributes Show scheduling attributes object
    • Hide access_control attributes Show access_control attributes object
      • enabled boolean Required
      • interval string Required

        The interval is expressed using the crontab syntax

    • full object
      Hide full attributes Show full attributes object
      • enabled boolean Required
      • interval string Required

        The interval is expressed using the crontab syntax

    • Hide incremental attributes Show incremental attributes object
      • enabled boolean Required
      • interval string Required

        The interval is expressed using the crontab syntax

Responses

  • 200 application/json
    Hide response attribute Show response attribute object
    • result string Required

      Values are created, updated, deleted, not_found, or noop.

PUT /_connector/{connector_id}/_scheduling
curl \
 --request PUT 'http://api.example.com/_connector/{connector_id}/_scheduling' \
 --header "Authorization: $API_KEY" \
 --header "Content-Type: application/json" \
 --data '"{\n    \"scheduling\": {\n        \"access_control\": {\n            \"enabled\": true,\n            \"interval\": \"0 10 0 * * ?\"\n        },\n        \"full\": {\n            \"enabled\": true,\n            \"interval\": \"0 20 0 * * ?\"\n        },\n        \"incremental\": {\n            \"enabled\": false,\n            \"interval\": \"0 30 0 * * ?\"\n        }\n    }\n}"'
{
    "scheduling": {
        "access_control": {
            "enabled": true,
            "interval": "0 10 0 * * ?"
        },
        "full": {
            "enabled": true,
            "interval": "0 20 0 * * ?"
        },
        "incremental": {
            "enabled": false,
            "interval": "0 30 0 * * ?"
        }
    }
}
{
    "scheduling": {
        "full": {
            "enabled": true,
            "interval": "0 10 0 * * ?"
        }
    }
}
Response examples (200)
{
  "result": "updated"
}












































































































































































































































































































































































































































































Get aliases

GET /{index}/_alias/{name}

Retrieves information for one or more data stream or index aliases.

Path parameters

  • index string | array[string] Required

    Comma-separated list of data streams or indices used to limit the request. Supports wildcards (*). To target all data streams and indices, omit this parameter or use * or _all.

  • name string | array[string] Required

    Comma-separated list of aliases to retrieve. Supports wildcards (*). To retrieve all aliases, omit this parameter or use * or _all.

Query parameters

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

  • expand_wildcards string | array[string]

    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. Valid values are: all, open, closed, hidden, none.

  • If false, the request returns an error if it targets a missing or closed index.

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

Responses

  • 200 application/json
    Hide response attribute Show response attribute object
    • * object Additional properties
      Hide * attribute Show * attribute object
      • aliases object Required
        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
          • Value used to route indexing operations to a specific shard. If specified, this overwrites the routing value for indexing operations.

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

          • routing string

            Value used to route indexing and search operations to a specific shard.

          • Value used to route search operations to a specific shard. If specified, this overwrites the routing value for search operations.

          • is_hidden boolean

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

GET /{index}/_alias/{name}
curl \
 --request GET 'http://api.example.com/{index}/_alias/{name}' \
 --header "Authorization: $API_KEY"
Response examples (200)
{
  "additionalProperty1": {
    "aliases": {
      "additionalProperty1": {
        "filter": {},
        "index_routing": "string",
        "is_write_index": true,
        "routing": "string",
        "search_routing": "string",
        "is_hidden": true
      },
      "additionalProperty2": {
        "filter": {},
        "index_routing": "string",
        "is_write_index": true,
        "routing": "string",
        "search_routing": "string",
        "is_hidden": true
      }
    }
  },
  "additionalProperty2": {
    "aliases": {
      "additionalProperty1": {
        "filter": {},
        "index_routing": "string",
        "is_write_index": true,
        "routing": "string",
        "search_routing": "string",
        "is_hidden": true
      },
      "additionalProperty2": {
        "filter": {},
        "index_routing": "string",
        "is_write_index": true,
        "routing": "string",
        "search_routing": "string",
        "is_hidden": true
      }
    }
  }
}












Check aliases

HEAD /{index}/_alias/{name}

Check if one or more data stream or index aliases exist.

Path parameters

  • index string | array[string] Required

    Comma-separated list of data streams or indices used to limit the request. Supports wildcards (*). To target all data streams and indices, omit this parameter or use * or _all.

  • name string | array[string] Required

    Comma-separated list of aliases to check. Supports wildcards (*).

Query parameters

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

  • expand_wildcards string | array[string]

    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. Valid values are: all, open, closed, hidden, none.

  • If false, requests that include a missing data stream or index in the target indices or data streams return an error.

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

Responses

HEAD /{index}/_alias/{name}
curl \
 --request HEAD 'http://api.example.com/{index}/_alias/{name}' \
 --header "Authorization: $API_KEY"




















































































Flush data streams or indices

POST /{index}/_flush

Flushing a data stream or index is the process of making sure that any data that is currently only stored in the transaction log is also permanently stored in the Lucene index. When restarting, Elasticsearch replays any unflushed operations from the transaction log into the Lucene index to bring it back into the state that it was in before the restart. Elasticsearch automatically triggers flushes as needed, using heuristics that trade off the size of the unflushed transaction log against the cost of performing each flush.

After each operation has been flushed it is permanently stored in the Lucene index. This may mean that there is no need to maintain an additional copy of it in the transaction log. The transaction log is made up of multiple files, called generations, and Elasticsearch will delete any generation files when they are no longer needed, freeing up disk space.

It is also possible to trigger a flush on one or more indices using the flush API, although it is rare for users to need to call this API directly. If you call the flush API after indexing some documents then a successful response indicates that Elasticsearch has flushed all the documents that were indexed before the flush API was called.

Path parameters

  • index string | array[string] Required

    Comma-separated list of data streams, indices, and aliases to flush. Supports wildcards (*). To flush all data streams and indices, omit this parameter or use * or _all.

Query parameters

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

  • expand_wildcards string | array[string]

    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. Valid values are: all, open, closed, hidden, none.

  • force boolean

    If true, the request forces a flush even if there are no changes to commit to the index.

  • If false, the request returns an error if it targets a missing or closed index.

  • If true, the flush operation blocks until execution when another flush operation is running. If false, Elasticsearch returns an error if you request a flush when another flush operation is running.

Responses

POST /{index}/_flush
curl \
 --request POST 'http://api.example.com/{index}/_flush' \
 --header "Authorization: $API_KEY"
Response examples (200)
{
  "_shards": {
    "failed": 42.0,
    "successful": 42.0,
    "total": 42.0,
    "failures": [
      {
        "index": "string",
        "node": "string",
        "reason": {
          "type": "string",
          "reason": "string",
          "stack_trace": "string",
          "caused_by": {},
          "root_cause": [
            {}
          ],
          "suppressed": [
            {}
          ]
        },
        "shard": 42.0,
        "status": "string"
      }
    ],
    "skipped": 42.0
  }
}








Get aliases

GET /_alias

Retrieves information for one or more data stream or index aliases.

Query parameters

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

  • expand_wildcards string | array[string]

    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. Valid values are: all, open, closed, hidden, none.

  • If false, the request returns an error if it targets a missing or closed index.

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

Responses

  • 200 application/json
    Hide response attribute Show response attribute object
    • * object Additional properties
      Hide * attribute Show * attribute object
      • aliases object Required
        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
          • Value used to route indexing operations to a specific shard. If specified, this overwrites the routing value for indexing operations.

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

          • routing string

            Value used to route indexing and search operations to a specific shard.

          • Value used to route search operations to a specific shard. If specified, this overwrites the routing value for search operations.

          • is_hidden boolean

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

GET /_alias
curl \
 --request GET 'http://api.example.com/_alias' \
 --header "Authorization: $API_KEY"
Response examples (200)
{
  "additionalProperty1": {
    "aliases": {
      "additionalProperty1": {
        "filter": {},
        "index_routing": "string",
        "is_write_index": true,
        "routing": "string",
        "search_routing": "string",
        "is_hidden": true
      },
      "additionalProperty2": {
        "filter": {},
        "index_routing": "string",
        "is_write_index": true,
        "routing": "string",
        "search_routing": "string",
        "is_hidden": true
      }
    }
  },
  "additionalProperty2": {
    "aliases": {
      "additionalProperty1": {
        "filter": {},
        "index_routing": "string",
        "is_write_index": true,
        "routing": "string",
        "search_routing": "string",
        "is_hidden": true
      },
      "additionalProperty2": {
        "filter": {},
        "index_routing": "string",
        "is_write_index": true,
        "routing": "string",
        "search_routing": "string",
        "is_hidden": true
      }
    }
  }
}








Get mapping definitions

GET /{index}/_mapping/field/{fields}

Retrieves mapping definitions for one or more fields. For data streams, the API retrieves field mappings for the stream’s backing indices.

This API is useful if you don't need a complete mapping or if an index mapping contains a large number of fields.

Path parameters

  • index string | array[string] Required

    Comma-separated list of data streams, indices, and aliases used to limit the request. Supports wildcards (*). To target all data streams and indices, omit this parameter or use * or _all.

  • fields string | array[string] Required

    Comma-separated list or wildcard expression of fields used to limit returned information. Supports wildcards (*).

Query parameters

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

  • expand_wildcards string | array[string]

    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. Valid values are: all, open, closed, hidden, none.

  • If false, the request returns an error if it targets a missing or closed index.

  • If true, return all default settings in the response.

Responses

  • 200 application/json
    Hide response attribute Show response attribute object
    • * object Additional properties
      Hide * attribute Show * attribute object
      • mappings object Required
        Hide mappings attribute Show mappings attribute object
        • * object Additional properties
          Hide * attributes Show * attributes object
GET /{index}/_mapping/field/{fields}
curl \
 --request GET 'http://api.example.com/{index}/_mapping/field/{fields}' \
 --header "Authorization: $API_KEY"
Response examples (200)
A sucessful response from `GET publications/_mapping/field/title`, which returns the mapping of a field called `title`.
{
   "publications": {
      "mappings": {
          "title": {
             "full_name": "title",
             "mapping": {
                "title": {
                   "type": "text"
                }
             }
          }
       }
   }
}
A successful response from `GET publications/_mapping/field/author.id,abstract,name`. The get field mapping API also supports wildcard notation.
{
   "publications": {
      "mappings": {
        "author.id": {
           "full_name": "author.id",
           "mapping": {
              "id": {
                 "type": "text"
              }
           }
        },
        "abstract": {
           "full_name": "abstract",
           "mapping": {
              "abstract": {
                 "type": "text"
              }
           }
        }
     }
   }
}
A successful response from `GET publications/_mapping/field/a*`.
{
   "publications": {
      "mappings": {
         "author.name": {
            "full_name": "author.name",
            "mapping": {
               "name": {
                 "type": "text"
               }
            }
         },
         "abstract": {
            "full_name": "abstract",
            "mapping": {
               "abstract": {
                  "type": "text"
               }
            }
         },
         "author.id": {
            "full_name": "author.id",
            "mapping": {
               "id": {
                  "type": "text"
               }
            }
         }
      }
   }
}




















































































































Get index shard stores

GET /{index}/_shard_stores

Get store information about replica shards in one or more indices. For data streams, the API retrieves store information for the stream's backing indices.

The index shard stores API returns the following information:

  • The node on which each replica shard exists.
  • The allocation ID for each replica shard.
  • A unique ID for each replica shard.
  • Any errors encountered while opening the shard index or from an earlier failure.

By default, the API returns store information only for primary shards that are unassigned or have one or more unassigned replica shards.

Path parameters

  • index string | array[string] Required

    List of data streams, indices, and aliases used to limit the request.

Query parameters

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

  • expand_wildcards string | array[string]

    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.

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

  • status string | array[string]

    List of shard health statuses used to limit the request.

Responses

  • 200 application/json
    Hide response attribute Show response attribute object
    • indices object Required
      Hide indices attribute Show indices attribute object
      • * object Additional properties
        Hide * attribute Show * attribute object
        • shards object Required
          Hide shards attribute Show shards attribute object
          • * object Additional properties
            Hide * attribute Show * attribute object
GET /{index}/_shard_stores
curl \
 --request GET 'http://api.example.com/{index}/_shard_stores' \
 --header "Authorization: $API_KEY"
Response examples (200)
An abbreviated response from `GET /_shard_stores?status=green`.
{
  "indices": {
    "my-index-000001": {
      "shards": {
        "0": {
          "stores": [
            {
              "sPa3OgxLSYGvQ4oPs-Tajw": {
                "name": "node_t0",
                "ephemeral_id": "9NlXRFGCT1m8tkvYCMK-8A",
                "transport_address": "local[1]",
                "external_id": "node_t0",
                "attributes": {},
                "roles": [],
                "version": "8.10.0",
                "min_index_version": 7000099,
                "max_index_version": 8100099
              },
              "allocation_id": "2iNySv_OQVePRX-yaRH_lQ",
              "allocation": "primary",
              "store_exception": {}
            }
          ]
        }
      }
    }
  }
}
































Get index statistics Added in 1.3.0

GET /_stats/{metric}

For data streams, the API retrieves statistics for the stream's backing indices.

By default, the returned statistics are index-level with primaries and total aggregations. primaries are the values for only the primary shards. total are the accumulated values for both primary and replica shards.

To get shard-level statistics, set the level parameter to shards.

NOTE: When moving to another node, the shard-level statistics for a shard are cleared. Although the shard is no longer part of the node, that node retains any node-level statistics to which the shard contributed.

Path parameters

  • metric string | array[string] Required

    Limit the information returned the specific metrics.

Query parameters

  • completion_fields string | array[string]

    Comma-separated list or wildcard expressions of fields to include in fielddata and suggest statistics.

  • expand_wildcards string | array[string]

    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.

  • fielddata_fields string | array[string]

    Comma-separated list or wildcard expressions of fields to include in fielddata statistics.

  • fields string | array[string]

    Comma-separated list or wildcard expressions of fields to include in the statistics.

  • If true, statistics are not collected from closed indices.

  • groups string | array[string]

    Comma-separated list of search groups to include in the search statistics.

  • If true, the call reports the aggregated disk usage of each one of the Lucene index files (only applies if segment stats are requested).

  • If true, the response includes information from segments that are not loaded into memory.

  • level string

    Indicates whether statistics are aggregated at the cluster, index, or shard level.

    Values are cluster, indices, or shards.

Responses

GET /_stats/{metric}
curl \
 --request GET 'http://api.example.com/_stats/{metric}' \
 --header "Authorization: $API_KEY"
Response examples (200)
{
  "indices": {
    "additionalProperty1": {
      "primaries": {
        "completion": {
          "size_in_bytes": 42.0,
          "": 42.0,
          "fields": {
            "additionalProperty1": {},
            "additionalProperty2": {}
          }
        },
        "docs": {
          "count": 42.0,
          "deleted": 42.0
        },
        "fielddata": {
          "evictions": 42.0,
          "": 42.0,
          "memory_size_in_bytes": 42.0,
          "fields": {
            "additionalProperty1": {},
            "additionalProperty2": {}
          }
        },
        "flush": {
          "periodic": 42.0,
          "total": 42.0,
          "total_time": "string",
          "": 42.0
        },
        "get": {
          "current": 42.0,
          "exists_time": "string",
          "": 42.0,
          "exists_total": 42.0,
          "missing_time": "string",
          "missing_total": 42.0,
          "time": "string",
          "total": 42.0
        },
        "indexing": {
          "index_current": 42.0,
          "delete_current": 42.0,
          "delete_time": "string",
          "": 42.0,
          "delete_total": 42.0,
          "is_throttled": true,
          "noop_update_total": 42.0,
          "throttle_time": "string",
          "index_time": "string",
          "index_total": 42.0,
          "index_failed": 42.0,
          "types": {
            "*": {}
          },
          "write_load": 42.0
        },
        "additionalProperty1": {},
        "additionalProperty2": {},
        "merges": {
          "current": 42.0,
          "current_docs": 42.0,
          "current_size": "string",
          "current_size_in_bytes": 42.0,
          "total": 42.0,
          "total_auto_throttle": "string",
          "total_auto_throttle_in_bytes": 42.0,
          "total_docs": 42.0,
          "total_size": "string",
          "total_size_in_bytes": 42.0,
          "total_stopped_time": "string",
          "": 42.0,
          "total_throttled_time": "string",
          "total_time": "string"
        },
        "query_cache": {
          "cache_count": 42.0,
          "cache_size": 42.0,
          "evictions": 42.0,
          "hit_count": 42.0,
          "": 42.0,
          "memory_size_in_bytes": 42.0,
          "miss_count": 42.0,
          "total_count": 42.0
        },
        "recovery": {
          "current_as_source": 42.0,
          "current_as_target": 42.0,
          "throttle_time": "string",
          "": 42.0
        },
        "refresh": {
          "external_total": 42.0,
          "": 42.0,
          "listeners": 42.0,
          "total": 42.0,
          "total_time": "string"
        },
        "request_cache": {
          "evictions": 42.0,
          "hit_count": 42.0,
          "memory_size": "string",
          "memory_size_in_bytes": 42.0,
          "miss_count": 42.0
        },
        "search": {
          "fetch_current": 42.0,
          "fetch_time": "string",
          "": 42.0,
          "fetch_total": 42.0,
          "open_contexts": 42.0,
          "query_current": 42.0,
          "query_time": "string",
          "query_total": 42.0,
          "scroll_current": 42.0,
          "scroll_time": "string",
          "scroll_total": 42.0,
          "suggest_current": 42.0,
          "suggest_time": "string",
          "suggest_total": 42.0,
          "groups": {
            "*": {}
          }
        },
        "segments": {
          "count": 42.0,
          "": 42.0,
          "doc_values_memory_in_bytes": 42.0,
          "file_sizes": {
            "additionalProperty1": {},
            "additionalProperty2": {}
          },
          "fixed_bit_set_memory_in_bytes": 42.0,
          "index_writer_max_memory_in_bytes": 42.0,
          "index_writer_memory_in_bytes": 42.0,
          "max_unsafe_auto_id_timestamp": 42.0,
          "memory_in_bytes": 42.0,
          "norms_memory_in_bytes": 42.0,
          "points_memory_in_bytes": 42.0,
          "stored_fields_memory_in_bytes": 42.0,
          "terms_memory_in_bytes": 42.0,
          "term_vectors_memory_in_bytes": 42.0,
          "version_map_memory_in_bytes": 42.0
        },
        "store": {
          "": 42.0,
          "size_in_bytes": 42.0,
          "reserved_in_bytes": 42.0,
          "total_data_set_size_in_bytes": 42.0
        },
        "translog": {
          "earliest_last_modified_age": 42.0,
          "operations": 42.0,
          "size": "string",
          "size_in_bytes": 42.0,
          "uncommitted_operations": 42.0,
          "uncommitted_size": "string",
          "uncommitted_size_in_bytes": 42.0
        },
        "warmer": {
          "current": 42.0,
          "total": 42.0,
          "total_time": "string",
          "": 42.0
        },
        "bulk": {
          "total_operations": 42.0,
          "total_time": "string",
          "": 42.0,
          "total_size_in_bytes": 42.0,
          "avg_time": "string",
          "avg_size_in_bytes": 42.0
        },
        "shard_stats": {
          "total_count": 42.0
        }
      },
      "shards": {
        "additionalProperty1": [
          {
            "commit": {},
            "completion": {},
            "docs": {},
            "fielddata": {},
            "flush": {},
            "get": {},
            "indexing": {},
            "mappings": {},
            "merges": {},
            "shard_path": {},
            "query_cache": {},
            "recovery": {},
            "refresh": {},
            "request_cache": {},
            "retention_leases": {},
            "routing": {},
            "search": {},
            "segments": {},
            "seq_no": {},
            "store": {},
            "translog": {},
            "warmer": {},
            "bulk": {},
            "shards": {},
            "shard_stats": {},
            "additionalProperty1": {},
            "additionalProperty2": {}
          }
        ],
        "additionalProperty2": [
          {
            "commit": {},
            "completion": {},
            "docs": {},
            "fielddata": {},
            "flush": {},
            "get": {},
            "indexing": {},
            "mappings": {},
            "merges": {},
            "shard_path": {},
            "query_cache": {},
            "recovery": {},
            "refresh": {},
            "request_cache": {},
            "retention_leases": {},
            "routing": {},
            "search": {},
            "segments": {},
            "seq_no": {},
            "store": {},
            "translog": {},
            "warmer": {},
            "bulk": {},
            "shards": {},
            "shard_stats": {},
            "additionalProperty1": {},
            "additionalProperty2": {}
          }
        ]
      },
      "total": {
        "completion": {
          "size_in_bytes": 42.0,
          "": 42.0,
          "fields": {
            "additionalProperty1": {},
            "additionalProperty2": {}
          }
        },
        "docs": {
          "count": 42.0,
          "deleted": 42.0
        },
        "fielddata": {
          "evictions": 42.0,
          "": 42.0,
          "memory_size_in_bytes": 42.0,
          "fields": {
            "additionalProperty1": {},
            "additionalProperty2": {}
          }
        },
        "flush": {
          "periodic": 42.0,
          "total": 42.0,
          "total_time": "string",
          "": 42.0
        },
        "get": {
          "current": 42.0,
          "exists_time": "string",
          "": 42.0,
          "exists_total": 42.0,
          "missing_time": "string",
          "missing_total": 42.0,
          "time": "string",
          "total": 42.0
        },
        "indexing": {
          "index_current": 42.0,
          "delete_current": 42.0,
          "delete_time": "string",
          "": 42.0,
          "delete_total": 42.0,
          "is_throttled": true,
          "noop_update_total": 42.0,
          "throttle_time": "string",
          "index_time": "string",
          "index_total": 42.0,
          "index_failed": 42.0,
          "types": {
            "*": {}
          },
          "write_load": 42.0
        },
        "additionalProperty1": {},
        "additionalProperty2": {},
        "merges": {
          "current": 42.0,
          "current_docs": 42.0,
          "current_size": "string",
          "current_size_in_bytes": 42.0,
          "total": 42.0,
          "total_auto_throttle": "string",
          "total_auto_throttle_in_bytes": 42.0,
          "total_docs": 42.0,
          "total_size": "string",
          "total_size_in_bytes": 42.0,
          "total_stopped_time": "string",
          "": 42.0,
          "total_throttled_time": "string",
          "total_time": "string"
        },
        "query_cache": {
          "cache_count": 42.0,
          "cache_size": 42.0,
          "evictions": 42.0,
          "hit_count": 42.0,
          "": 42.0,
          "memory_size_in_bytes": 42.0,
          "miss_count": 42.0,
          "total_count": 42.0
        },
        "recovery": {
          "current_as_source": 42.0,
          "current_as_target": 42.0,
          "throttle_time": "string",
          "": 42.0
        },
        "refresh": {
          "external_total": 42.0,
          "": 42.0,
          "listeners": 42.0,
          "total": 42.0,
          "total_time": "string"
        },
        "request_cache": {
          "evictions": 42.0,
          "hit_count": 42.0,
          "memory_size": "string",
          "memory_size_in_bytes": 42.0,
          "miss_count": 42.0
        },
        "search": {
          "fetch_current": 42.0,
          "fetch_time": "string",
          "": 42.0,
          "fetch_total": 42.0,
          "open_contexts": 42.0,
          "query_current": 42.0,
          "query_time": "string",
          "query_total": 42.0,
          "scroll_current": 42.0,
          "scroll_time": "string",
          "scroll_total": 42.0,
          "suggest_current": 42.0,
          "suggest_time": "string",
          "suggest_total": 42.0,
          "groups": {
            "*": {}
          }
        },
        "segments": {
          "count": 42.0,
          "": 42.0,
          "doc_values_memory_in_bytes": 42.0,
          "file_sizes": {
            "additionalProperty1": {},
            "additionalProperty2": {}
          },
          "fixed_bit_set_memory_in_bytes": 42.0,
          "index_writer_max_memory_in_bytes": 42.0,
          "index_writer_memory_in_bytes": 42.0,
          "max_unsafe_auto_id_timestamp": 42.0,
          "memory_in_bytes": 42.0,
          "norms_memory_in_bytes": 42.0,
          "points_memory_in_bytes": 42.0,
          "stored_fields_memory_in_bytes": 42.0,
          "terms_memory_in_bytes": 42.0,
          "term_vectors_memory_in_bytes": 42.0,
          "version_map_memory_in_bytes": 42.0
        },
        "store": {
          "": 42.0,
          "size_in_bytes": 42.0,
          "reserved_in_bytes": 42.0,
          "total_data_set_size_in_bytes": 42.0
        },
        "translog": {
          "earliest_last_modified_age": 42.0,
          "operations": 42.0,
          "size": "string",
          "size_in_bytes": 42.0,
          "uncommitted_operations": 42.0,
          "uncommitted_size": "string",
          "uncommitted_size_in_bytes": 42.0
        },
        "warmer": {
          "current": 42.0,
          "total": 42.0,
          "total_time": "string",
          "": 42.0
        },
        "bulk": {
          "total_operations": 42.0,
          "total_time": "string",
          "": 42.0,
          "total_size_in_bytes": 42.0,
          "avg_time": "string",
          "avg_size_in_bytes": 42.0
        },
        "shard_stats": {
          "total_count": 42.0
        }
      },
      "uuid": "string",
      "health": "green",
      "status": "open"
    },
    "additionalProperty2": {
      "primaries": {
        "completion": {
          "size_in_bytes": 42.0,
          "": 42.0,
          "fields": {
            "additionalProperty1": {},
            "additionalProperty2": {}
          }
        },
        "docs": {
          "count": 42.0,
          "deleted": 42.0
        },
        "fielddata": {
          "evictions": 42.0,
          "": 42.0,
          "memory_size_in_bytes": 42.0,
          "fields": {
            "additionalProperty1": {},
            "additionalProperty2": {}
          }
        },
        "flush": {
          "periodic": 42.0,
          "total": 42.0,
          "total_time": "string",
          "": 42.0
        },
        "get": {
          "current": 42.0,
          "exists_time": "string",
          "": 42.0,
          "exists_total": 42.0,
          "missing_time": "string",
          "missing_total": 42.0,
          "time": "string",
          "total": 42.0
        },
        "indexing": {
          "index_current": 42.0,
          "delete_current": 42.0,
          "delete_time": "string",
          "": 42.0,
          "delete_total": 42.0,
          "is_throttled": true,
          "noop_update_total": 42.0,
          "throttle_time": "string",
          "index_time": "string",
          "index_total": 42.0,
          "index_failed": 42.0,
          "types": {
            "*": {}
          },
          "write_load": 42.0
        },
        "additionalProperty1": {},
        "additionalProperty2": {},
        "merges": {
          "current": 42.0,
          "current_docs": 42.0,
          "current_size": "string",
          "current_size_in_bytes": 42.0,
          "total": 42.0,
          "total_auto_throttle": "string",
          "total_auto_throttle_in_bytes": 42.0,
          "total_docs": 42.0,
          "total_size": "string",
          "total_size_in_bytes": 42.0,
          "total_stopped_time": "string",
          "": 42.0,
          "total_throttled_time": "string",
          "total_time": "string"
        },
        "query_cache": {
          "cache_count": 42.0,
          "cache_size": 42.0,
          "evictions": 42.0,
          "hit_count": 42.0,
          "": 42.0,
          "memory_size_in_bytes": 42.0,
          "miss_count": 42.0,
          "total_count": 42.0
        },
        "recovery": {
          "current_as_source": 42.0,
          "current_as_target": 42.0,
          "throttle_time": "string",
          "": 42.0
        },
        "refresh": {
          "external_total": 42.0,
          "": 42.0,
          "listeners": 42.0,
          "total": 42.0,
          "total_time": "string"
        },
        "request_cache": {
          "evictions": 42.0,
          "hit_count": 42.0,
          "memory_size": "string",
          "memory_size_in_bytes": 42.0,
          "miss_count": 42.0
        },
        "search": {
          "fetch_current": 42.0,
          "fetch_time": "string",
          "": 42.0,
          "fetch_total": 42.0,
          "open_contexts": 42.0,
          "query_current": 42.0,
          "query_time": "string",
          "query_total": 42.0,
          "scroll_current": 42.0,
          "scroll_time": "string",
          "scroll_total": 42.0,
          "suggest_current": 42.0,
          "suggest_time": "string",
          "suggest_total": 42.0,
          "groups": {
            "*": {}
          }
        },
        "segments": {
          "count": 42.0,
          "": 42.0,
          "doc_values_memory_in_bytes": 42.0,
          "file_sizes": {
            "additionalProperty1": {},
            "additionalProperty2": {}
          },
          "fixed_bit_set_memory_in_bytes": 42.0,
          "index_writer_max_memory_in_bytes": 42.0,
          "index_writer_memory_in_bytes": 42.0,
          "max_unsafe_auto_id_timestamp": 42.0,
          "memory_in_bytes": 42.0,
          "norms_memory_in_bytes": 42.0,
          "points_memory_in_bytes": 42.0,
          "stored_fields_memory_in_bytes": 42.0,
          "terms_memory_in_bytes": 42.0,
          "term_vectors_memory_in_bytes": 42.0,
          "version_map_memory_in_bytes": 42.0
        },
        "store": {
          "": 42.0,
          "size_in_bytes": 42.0,
          "reserved_in_bytes": 42.0,
          "total_data_set_size_in_bytes": 42.0
        },
        "translog": {
          "earliest_last_modified_age": 42.0,
          "operations": 42.0,
          "size": "string",
          "size_in_bytes": 42.0,
          "uncommitted_operations": 42.0,
          "uncommitted_size": "string",
          "uncommitted_size_in_bytes": 42.0
        },
        "warmer": {
          "current": 42.0,
          "total": 42.0,
          "total_time": "string",
          "": 42.0
        },
        "bulk": {
          "total_operations": 42.0,
          "total_time": "string",
          "": 42.0,
          "total_size_in_bytes": 42.0,
          "avg_time": "string",
          "avg_size_in_bytes": 42.0
        },
        "shard_stats": {
          "total_count": 42.0
        }
      },
      "shards": {
        "additionalProperty1": [
          {
            "commit": {},
            "completion": {},
            "docs": {},
            "fielddata": {},
            "flush": {},
            "get": {},
            "indexing": {},
            "mappings": {},
            "merges": {},
            "shard_path": {},
            "query_cache": {},
            "recovery": {},
            "refresh": {},
            "request_cache": {},
            "retention_leases": {},
            "routing": {},
            "search": {},
            "segments": {},
            "seq_no": {},
            "store": {},
            "translog": {},
            "warmer": {},
            "bulk": {},
            "shards": {},
            "shard_stats": {},
            "additionalProperty1": {},
            "additionalProperty2": {}
          }
        ],
        "additionalProperty2": [
          {
            "commit": {},
            "completion": {},
            "docs": {},
            "fielddata": {},
            "flush": {},
            "get": {},
            "indexing": {},
            "mappings": {},
            "merges": {},
            "shard_path": {},
            "query_cache": {},
            "recovery": {},
            "refresh": {},
            "request_cache": {},
            "retention_leases": {},
            "routing": {},
            "search": {},
            "segments": {},
            "seq_no": {},
            "store": {},
            "translog": {},
            "warmer": {},
            "bulk": {},
            "shards": {},
            "shard_stats": {},
            "additionalProperty1": {},
            "additionalProperty2": {}
          }
        ]
      },
      "total": {
        "completion": {
          "size_in_bytes": 42.0,
          "": 42.0,
          "fields": {
            "additionalProperty1": {},
            "additionalProperty2": {}
          }
        },
        "docs": {
          "count": 42.0,
          "deleted": 42.0
        },
        "fielddata": {
          "evictions": 42.0,
          "": 42.0,
          "memory_size_in_bytes": 42.0,
          "fields": {
            "additionalProperty1": {},
            "additionalProperty2": {}
          }
        },
        "flush": {
          "periodic": 42.0,
          "total": 42.0,
          "total_time": "string",
          "": 42.0
        },
        "get": {
          "current": 42.0,
          "exists_time": "string",
          "": 42.0,
          "exists_total": 42.0,
          "missing_time": "string",
          "missing_total": 42.0,
          "time": "string",
          "total": 42.0
        },
        "indexing": {
          "index_current": 42.0,
          "delete_current": 42.0,
          "delete_time": "string",
          "": 42.0,
          "delete_total": 42.0,
          "is_throttled": true,
          "noop_update_total": 42.0,
          "throttle_time": "string",
          "index_time": "string",
          "index_total": 42.0,
          "index_failed": 42.0,
          "types": {
            "*": {}
          },
          "write_load": 42.0
        },
        "additionalProperty1": {},
        "additionalProperty2": {},
        "merges": {
          "current": 42.0,
          "current_docs": 42.0,
          "current_size": "string",
          "current_size_in_bytes": 42.0,
          "total": 42.0,
          "total_auto_throttle": "string",
          "total_auto_throttle_in_bytes": 42.0,
          "total_docs": 42.0,
          "total_size": "string",
          "total_size_in_bytes": 42.0,
          "total_stopped_time": "string",
          "": 42.0,
          "total_throttled_time": "string",
          "total_time": "string"
        },
        "query_cache": {
          "cache_count": 42.0,
          "cache_size": 42.0,
          "evictions": 42.0,
          "hit_count": 42.0,
          "": 42.0,
          "memory_size_in_bytes": 42.0,
          "miss_count": 42.0,
          "total_count": 42.0
        },
        "recovery": {
          "current_as_source": 42.0,
          "current_as_target": 42.0,
          "throttle_time": "string",
          "": 42.0
        },
        "refresh": {
          "external_total": 42.0,
          "": 42.0,
          "listeners": 42.0,
          "total": 42.0,
          "total_time": "string"
        },
        "request_cache": {
          "evictions": 42.0,
          "hit_count": 42.0,
          "memory_size": "string",
          "memory_size_in_bytes": 42.0,
          "miss_count": 42.0
        },
        "search": {
          "fetch_current": 42.0,
          "fetch_time": "string",
          "": 42.0,
          "fetch_total": 42.0,
          "open_contexts": 42.0,
          "query_current": 42.0,
          "query_time": "string",
          "query_total": 42.0,
          "scroll_current": 42.0,
          "scroll_time": "string",
          "scroll_total": 42.0,
          "suggest_current": 42.0,
          "suggest_time": "string",
          "suggest_total": 42.0,
          "groups": {
            "*": {}
          }
        },
        "segments": {
          "count": 42.0,
          "": 42.0,
          "doc_values_memory_in_bytes": 42.0,
          "file_sizes": {
            "additionalProperty1": {},
            "additionalProperty2": {}
          },
          "fixed_bit_set_memory_in_bytes": 42.0,
          "index_writer_max_memory_in_bytes": 42.0,
          "index_writer_memory_in_bytes": 42.0,
          "max_unsafe_auto_id_timestamp": 42.0,
          "memory_in_bytes": 42.0,
          "norms_memory_in_bytes": 42.0,
          "points_memory_in_bytes": 42.0,
          "stored_fields_memory_in_bytes": 42.0,
          "terms_memory_in_bytes": 42.0,
          "term_vectors_memory_in_bytes": 42.0,
          "version_map_memory_in_bytes": 42.0
        },
        "store": {
          "": 42.0,
          "size_in_bytes": 42.0,
          "reserved_in_bytes": 42.0,
          "total_data_set_size_in_bytes": 42.0
        },
        "translog": {
          "earliest_last_modified_age": 42.0,
          "operations": 42.0,
          "size": "string",
          "size_in_bytes": 42.0,
          "uncommitted_operations": 42.0,
          "uncommitted_size": "string",
          "uncommitted_size_in_bytes": 42.0
        },
        "warmer": {
          "current": 42.0,
          "total": 42.0,
          "total_time": "string",
          "": 42.0
        },
        "bulk": {
          "total_operations": 42.0,
          "total_time": "string",
          "": 42.0,
          "total_size_in_bytes": 42.0,
          "avg_time": "string",
          "avg_size_in_bytes": 42.0
        },
        "shard_stats": {
          "total_count": 42.0
        }
      },
      "uuid": "string",
      "health": "green",
      "status": "open"
    }
  },
  "_shards": {
    "failed": 42.0,
    "successful": 42.0,
    "total": 42.0,
    "failures": [
      {
        "index": "string",
        "node": "string",
        "reason": {
          "type": "string",
          "reason": "string",
          "stack_trace": "string",
          "caused_by": {},
          "root_cause": [
            {}
          ],
          "suppressed": [
            {}
          ]
        },
        "shard": 42.0,
        "status": "string"
      }
    ],
    "skipped": 42.0
  },
  "additionalProperty1": {
    "primaries": {
      "completion": {
        "size_in_bytes": 42.0,
        "": 42.0,
        "fields": {
          "additionalProperty1": {
            "size_in_bytes": 42.0
          },
          "additionalProperty2": {
            "size_in_bytes": 42.0
          }
        }
      },
      "docs": {
        "count": 42.0,
        "deleted": 42.0
      },
      "fielddata": {
        "evictions": 42.0,
        "": 42.0,
        "memory_size_in_bytes": 42.0,
        "fields": {
          "additionalProperty1": {
            "memory_size_in_bytes": 42.0
          },
          "additionalProperty2": {
            "memory_size_in_bytes": 42.0
          }
        }
      },
      "flush": {
        "periodic": 42.0,
        "total": 42.0,
        "total_time": "string",
        "": 42.0
      },
      "get": {
        "current": 42.0,
        "exists_time": "string",
        "": 42.0,
        "exists_total": 42.0,
        "missing_time": "string",
        "missing_total": 42.0,
        "time": "string",
        "total": 42.0
      },
      "indexing": {
        "index_current": 42.0,
        "delete_current": 42.0,
        "delete_time": "string",
        "": 42.0,
        "delete_total": 42.0,
        "is_throttled": true,
        "noop_update_total": 42.0,
        "throttle_time": "string",
        "index_time": "string",
        "index_total": 42.0,
        "index_failed": 42.0,
        "types": {
          "*": {}
        },
        "write_load": 42.0
      },
      "additionalProperty1": {},
      "additionalProperty2": {},
      "merges": {
        "current": 42.0,
        "current_docs": 42.0,
        "current_size": "string",
        "current_size_in_bytes": 42.0,
        "total": 42.0,
        "total_auto_throttle": "string",
        "total_auto_throttle_in_bytes": 42.0,
        "total_docs": 42.0,
        "total_size": "string",
        "total_size_in_bytes": 42.0,
        "total_stopped_time": "string",
        "": 42.0,
        "total_throttled_time": "string",
        "total_time": "string"
      },
      "query_cache": {
        "cache_count": 42.0,
        "cache_size": 42.0,
        "evictions": 42.0,
        "hit_count": 42.0,
        "": 42.0,
        "memory_size_in_bytes": 42.0,
        "miss_count": 42.0,
        "total_count": 42.0
      },
      "recovery": {
        "current_as_source": 42.0,
        "current_as_target": 42.0,
        "throttle_time": "string",
        "": 42.0
      },
      "refresh": {
        "external_total": 42.0,
        "": 42.0,
        "listeners": 42.0,
        "total": 42.0,
        "total_time": "string"
      },
      "request_cache": {
        "evictions": 42.0,
        "hit_count": 42.0,
        "memory_size": "string",
        "memory_size_in_bytes": 42.0,
        "miss_count": 42.0
      },
      "search": {
        "fetch_current": 42.0,
        "fetch_time": "string",
        "": 42.0,
        "fetch_total": 42.0,
        "open_contexts": 42.0,
        "query_current": 42.0,
        "query_time": "string",
        "query_total": 42.0,
        "scroll_current": 42.0,
        "scroll_time": "string",
        "scroll_total": 42.0,
        "suggest_current": 42.0,
        "suggest_time": "string",
        "suggest_total": 42.0,
        "groups": {
          "*": {}
        }
      },
      "segments": {
        "count": 42.0,
        "": 42.0,
        "doc_values_memory_in_bytes": 42.0,
        "file_sizes": {
          "additionalProperty1": {
            "description": "string",
            "size_in_bytes": 42.0,
            "min_size_in_bytes": 42.0,
            "max_size_in_bytes": 42.0,
            "average_size_in_bytes": 42.0,
            "count": 42.0
          },
          "additionalProperty2": {
            "description": "string",
            "size_in_bytes": 42.0,
            "min_size_in_bytes": 42.0,
            "max_size_in_bytes": 42.0,
            "average_size_in_bytes": 42.0,
            "count": 42.0
          }
        },
        "fixed_bit_set_memory_in_bytes": 42.0,
        "index_writer_max_memory_in_bytes": 42.0,
        "index_writer_memory_in_bytes": 42.0,
        "max_unsafe_auto_id_timestamp": 42.0,
        "memory_in_bytes": 42.0,
        "norms_memory_in_bytes": 42.0,
        "points_memory_in_bytes": 42.0,
        "stored_fields_memory_in_bytes": 42.0,
        "terms_memory_in_bytes": 42.0,
        "term_vectors_memory_in_bytes": 42.0,
        "version_map_memory_in_bytes": 42.0
      },
      "store": {
        "": 42.0,
        "size_in_bytes": 42.0,
        "reserved_in_bytes": 42.0,
        "total_data_set_size_in_bytes": 42.0
      },
      "translog": {
        "earliest_last_modified_age": 42.0,
        "operations": 42.0,
        "size": "string",
        "size_in_bytes": 42.0,
        "uncommitted_operations": 42.0,
        "uncommitted_size": "string",
        "uncommitted_size_in_bytes": 42.0
      },
      "warmer": {
        "current": 42.0,
        "total": 42.0,
        "total_time": "string",
        "": 42.0
      },
      "bulk": {
        "total_operations": 42.0,
        "total_time": "string",
        "": 42.0,
        "total_size_in_bytes": 42.0,
        "avg_time": "string",
        "avg_size_in_bytes": 42.0
      },
      "shard_stats": {
        "total_count": 42.0
      }
    },
    "shards": {
      "additionalProperty1": [
        {
          "commit": {
            "generation": 42.0,
            "id": "string",
            "num_docs": 42.0,
            "user_data": {}
          },
          "completion": {
            "size_in_bytes": 42.0,
            "fields": {}
          },
          "docs": {
            "count": 42.0,
            "deleted": 42.0
          },
          "fielddata": {
            "evictions": 42.0,
            "memory_size_in_bytes": 42.0,
            "fields": {}
          },
          "flush": {
            "periodic": 42.0,
            "total": 42.0,
            "total_time": "string"
          },
          "get": {
            "current": 42.0,
            "exists_time": "string",
            "exists_total": 42.0,
            "missing_time": "string",
            "missing_total": 42.0,
            "time": "string",
            "total": 42.0
          },
          "indexing": {
            "index_current": 42.0,
            "delete_current": 42.0,
            "delete_time": "string",
            "delete_total": 42.0,
            "is_throttled": true,
            "noop_update_total": 42.0,
            "throttle_time": "string",
            "index_time": "string",
            "index_total": 42.0,
            "index_failed": 42.0,
            "types": {},
            "write_load": 42.0
          },
          "mappings": {
            "total_count": 42.0,
            "total_estimated_overhead_in_bytes": 42.0
          },
          "merges": {
            "current": 42.0,
            "current_docs": 42.0,
            "current_size": "string",
            "current_size_in_bytes": 42.0,
            "total": 42.0,
            "total_auto_throttle": "string",
            "total_auto_throttle_in_bytes": 42.0,
            "total_docs": 42.0,
            "total_size": "string",
            "total_size_in_bytes": 42.0,
            "total_stopped_time": "string",
            "total_throttled_time": "string",
            "total_time": "string"
          },
          "shard_path": {
            "data_path": "string",
            "is_custom_data_path": true,
            "state_path": "string"
          },
          "query_cache": {
            "cache_count": 42.0,
            "cache_size": 42.0,
            "evictions": 42.0,
            "hit_count": 42.0,
            "memory_size_in_bytes": 42.0,
            "miss_count": 42.0,
            "total_count": 42.0
          },
          "recovery": {
            "current_as_source": 42.0,
            "current_as_target": 42.0,
            "throttle_time": "string"
          },
          "refresh": {
            "external_total": 42.0,
            "listeners": 42.0,
            "total": 42.0,
            "total_time": "string"
          },
          "request_cache": {
            "evictions": 42.0,
            "hit_count": 42.0,
            "memory_size": "string",
            "memory_size_in_bytes": 42.0,
            "miss_count": 42.0
          },
          "retention_leases": {
            "primary_term": 42.0,
            "version": 42.0,
            "leases": [
              {}
            ]
          },
          "routing": {
            "node": "string",
            "primary": true,
            "state": "UNASSIGNED"
          },
          "search": {
            "fetch_current": 42.0,
            "fetch_time": "string",
            "fetch_total": 42.0,
            "open_contexts": 42.0,
            "query_current": 42.0,
            "query_time": "string",
            "query_total": 42.0,
            "scroll_current": 42.0,
            "scroll_time": "string",
            "scroll_total": 42.0,
            "suggest_current": 42.0,
            "suggest_time": "string",
            "suggest_total": 42.0,
            "groups": {}
          },
          "segments": {
            "count": 42.0,
            "doc_values_memory_in_bytes": 42.0,
            "file_sizes": {},
            "fixed_bit_set_memory_in_bytes": 42.0,
            "index_writer_max_memory_in_bytes": 42.0,
            "index_writer_memory_in_bytes": 42.0,
            "max_unsafe_auto_id_timestamp": 42.0,
            "memory_in_bytes": 42.0,
            "norms_memory_in_bytes": 42.0,
            "points_memory_in_bytes": 42.0,
            "stored_fields_memory_in_bytes": 42.0,
            "terms_memory_in_bytes": 42.0,
            "term_vectors_memory_in_bytes": 42.0,
            "version_map_memory_in_bytes": 42.0
          },
          "seq_no": {
            "global_checkpoint": 42.0,
            "local_checkpoint": 42.0,
            "max_seq_no": 42.0
          },
          "store": {
            "size_in_bytes": 42.0,
            "reserved_in_bytes": 42.0,
            "total_data_set_size_in_bytes": 42.0
          },
          "translog": {
            "earliest_last_modified_age": 42.0,
            "operations": 42.0,
            "size": "string",
            "size_in_bytes": 42.0,
            "uncommitted_operations": 42.0,
            "uncommitted_size": "string",
            "uncommitted_size_in_bytes": 42.0
          },
          "warmer": {
            "current": 42.0,
            "total": 42.0,
            "total_time": "string"
          },
          "bulk": {
            "total_operations": 42.0,
            "total_time": "string",
            "total_size_in_bytes": 42.0,
            "avg_time": "string",
            "avg_size_in_bytes": 42.0
          },
          "shards": {
            "additionalProperty1": {},
            "additionalProperty2": {}
          },
          "shard_stats": {
            "total_count": 42.0
          },
          "additionalProperty1": {},
          "additionalProperty2": {}
        }
      ],
      "additionalProperty2": [
        {
          "commit": {
            "generation": 42.0,
            "id": "string",
            "num_docs": 42.0,
            "user_data": {}
          },
          "completion": {
            "size_in_bytes": 42.0,
            "fields": {}
          },
          "docs": {
            "count": 42.0,
            "deleted": 42.0
          },
          "fielddata": {
            "evictions": 42.0,
            "memory_size_in_bytes": 42.0,
            "fields": {}
          },
          "flush": {
            "periodic": 42.0,
            "total": 42.0,
            "total_time": "string"
          },
          "get": {
            "current": 42.0,
            "exists_time": "string",
            "exists_total": 42.0,
            "missing_time": "string",
            "missing_total": 42.0,
            "time": "string",
            "total": 42.0
          },
          "indexing": {
            "index_current": 42.0,
            "delete_current": 42.0,
            "delete_time": "string",
            "delete_total": 42.0,
            "is_throttled": true,
            "noop_update_total": 42.0,
            "throttle_time": "string",
            "index_time": "string",
            "index_total": 42.0,
            "index_failed": 42.0,
            "types": {},
            "write_load": 42.0
          },
          "mappings": {
            "total_count": 42.0,
            "total_estimated_overhead_in_bytes": 42.0
          },
          "merges": {
            "current": 42.0,
            "current_docs": 42.0,
            "current_size": "string",
            "current_size_in_bytes": 42.0,
            "total": 42.0,
            "total_auto_throttle": "string",
            "total_auto_throttle_in_bytes": 42.0,
            "total_docs": 42.0,
            "total_size": "string",
            "total_size_in_bytes": 42.0,
            "total_stopped_time": "string",
            "total_throttled_time": "string",
            "total_time": "string"
          },
          "shard_path": {
            "data_path": "string",
            "is_custom_data_path": true,
            "state_path": "string"
          },
          "query_cache": {
            "cache_count": 42.0,
            "cache_size": 42.0,
            "evictions": 42.0,
            "hit_count": 42.0,
            "memory_size_in_bytes": 42.0,
            "miss_count": 42.0,
            "total_count": 42.0
          },
          "recovery": {
            "current_as_source": 42.0,
            "current_as_target": 42.0,
            "throttle_time": "string"
          },
          "refresh": {
            "external_total": 42.0,
            "listeners": 42.0,
            "total": 42.0,
            "total_time": "string"
          },
          "request_cache": {
            "evictions": 42.0,
            "hit_count": 42.0,
            "memory_size": "string",
            "memory_size_in_bytes": 42.0,
            "miss_count": 42.0
          },
          "retention_leases": {
            "primary_term": 42.0,
            "version": 42.0,
            "leases": [
              {}
            ]
          },
          "routing": {
            "node": "string",
            "primary": true,
            "state": "UNASSIGNED"
          },
          "search": {
            "fetch_current": 42.0,
            "fetch_time": "string",
            "fetch_total": 42.0,
            "open_contexts": 42.0,
            "query_current": 42.0,
            "query_time": "string",
            "query_total": 42.0,
            "scroll_current": 42.0,
            "scroll_time": "string",
            "scroll_total": 42.0,
            "suggest_current": 42.0,
            "suggest_time": "string",
            "suggest_total": 42.0,
            "groups": {}
          },
          "segments": {
            "count": 42.0,
            "doc_values_memory_in_bytes": 42.0,
            "file_sizes": {},
            "fixed_bit_set_memory_in_bytes": 42.0,
            "index_writer_max_memory_in_bytes": 42.0,
            "index_writer_memory_in_bytes": 42.0,
            "max_unsafe_auto_id_timestamp": 42.0,
            "memory_in_bytes": 42.0,
            "norms_memory_in_bytes": 42.0,
            "points_memory_in_bytes": 42.0,
            "stored_fields_memory_in_bytes": 42.0,
            "terms_memory_in_bytes": 42.0,
            "term_vectors_memory_in_bytes": 42.0,
            "version_map_memory_in_bytes": 42.0
          },
          "seq_no": {
            "global_checkpoint": 42.0,
            "local_checkpoint": 42.0,
            "max_seq_no": 42.0
          },
          "store": {
            "size_in_bytes": 42.0,
            "reserved_in_bytes": 42.0,
            "total_data_set_size_in_bytes": 42.0
          },
          "translog": {
            "earliest_last_modified_age": 42.0,
            "operations": 42.0,
            "size": "string",
            "size_in_bytes": 42.0,
            "uncommitted_operations": 42.0,
            "uncommitted_size": "string",
            "uncommitted_size_in_bytes": 42.0
          },
          "warmer": {
            "current": 42.0,
            "total": 42.0,
            "total_time": "string"
          },
          "bulk": {
            "total_operations": 42.0,
            "total_time": "string",
            "total_size_in_bytes": 42.0,
            "avg_time": "string",
            "avg_size_in_bytes": 42.0
          },
          "shards": {
            "additionalProperty1": {},
            "additionalProperty2": {}
          },
          "shard_stats": {
            "total_count": 42.0
          },
          "additionalProperty1": {},
          "additionalProperty2": {}
        }
      ]
    },
    "total": {
      "completion": {
        "size_in_bytes": 42.0,
        "": 42.0,
        "fields": {
          "additionalProperty1": {
            "size_in_bytes": 42.0
          },
          "additionalProperty2": {
            "size_in_bytes": 42.0
          }
        }
      },
      "docs": {
        "count": 42.0,
        "deleted": 42.0
      },
      "fielddata": {
        "evictions": 42.0,
        "": 42.0,
        "memory_size_in_bytes": 42.0,
        "fields": {
          "additionalProperty1": {
            "memory_size_in_bytes": 42.0
          },
          "additionalProperty2": {
            "memory_size_in_bytes": 42.0
          }
        }
      },
      "flush": {
        "periodic": 42.0,
        "total": 42.0,
        "total_time": "string",
        "": 42.0
      },
      "get": {
        "current": 42.0,
        "exists_time": "string",
        "": 42.0,
        "exists_total": 42.0,
        "missing_time": "string",
        "missing_total": 42.0,
        "time": "string",
        "total": 42.0
      },
      "indexing": {
        "index_current": 42.0,
        "delete_current": 42.0,
        "delete_time": "string",
        "": 42.0,
        "delete_total": 42.0,
        "is_throttled": true,
        "noop_update_total": 42.0,
        "throttle_time": "string",
        "index_time": "string",
        "index_total": 42.0,
        "index_failed": 42.0,
        "types": {
          "*": {}
        },
        "write_load": 42.0
      },
      "additionalProperty1": {},
      "additionalProperty2": {},
      "merges": {
        "current": 42.0,
        "current_docs": 42.0,
        "current_size": "string",
        "current_size_in_bytes": 42.0,
        "total": 42.0,
        "total_auto_throttle": "string",
        "total_auto_throttle_in_bytes": 42.0,
        "total_docs": 42.0,
        "total_size": "string",
        "total_size_in_bytes": 42.0,
        "total_stopped_time": "string",
        "": 42.0,
        "total_throttled_time": "string",
        "total_time": "string"
      },
      "query_cache": {
        "cache_count": 42.0,
        "cache_size": 42.0,
        "evictions": 42.0,
        "hit_count": 42.0,
        "": 42.0,
        "memory_size_in_bytes": 42.0,
        "miss_count": 42.0,
        "total_count": 42.0
      },
      "recovery": {
        "current_as_source": 42.0,
        "current_as_target": 42.0,
        "throttle_time": "string",
        "": 42.0
      },
      "refresh": {
        "external_total": 42.0,
        "": 42.0,
        "listeners": 42.0,
        "total": 42.0,
        "total_time": "string"
      },
      "request_cache": {
        "evictions": 42.0,
        "hit_count": 42.0,
        "memory_size": "string",
        "memory_size_in_bytes": 42.0,
        "miss_count": 42.0
      },
      "search": {
        "fetch_current": 42.0,
        "fetch_time": "string",
        "": 42.0,
        "fetch_total": 42.0,
        "open_contexts": 42.0,
        "query_current": 42.0,
        "query_time": "string",
        "query_total": 42.0,
        "scroll_current": 42.0,
        "scroll_time": "string",
        "scroll_total": 42.0,
        "suggest_current": 42.0,
        "suggest_time": "string",
        "suggest_total": 42.0,
        "groups": {
          "*": {}
        }
      },
      "segments": {
        "count": 42.0,
        "": 42.0,
        "doc_values_memory_in_bytes": 42.0,
        "file_sizes": {
          "additionalProperty1": {
            "description": "string",
            "size_in_bytes": 42.0,
            "min_size_in_bytes": 42.0,
            "max_size_in_bytes": 42.0,
            "average_size_in_bytes": 42.0,
            "count": 42.0
          },
          "additionalProperty2": {
            "description": "string",
            "size_in_bytes": 42.0,
            "min_size_in_bytes": 42.0,
            "max_size_in_bytes": 42.0,
            "average_size_in_bytes": 42.0,
            "count": 42.0
          }
        },
        "fixed_bit_set_memory_in_bytes": 42.0,
        "index_writer_max_memory_in_bytes": 42.0,
        "index_writer_memory_in_bytes": 42.0,
        "max_unsafe_auto_id_timestamp": 42.0,
        "memory_in_bytes": 42.0,
        "norms_memory_in_bytes": 42.0,
        "points_memory_in_bytes": 42.0,
        "stored_fields_memory_in_bytes": 42.0,
        "terms_memory_in_bytes": 42.0,
        "term_vectors_memory_in_bytes": 42.0,
        "version_map_memory_in_bytes": 42.0
      },
      "store": {
        "": 42.0,
        "size_in_bytes": 42.0,
        "reserved_in_bytes": 42.0,
        "total_data_set_size_in_bytes": 42.0
      },
      "translog": {
        "earliest_last_modified_age": 42.0,
        "operations": 42.0,
        "size": "string",
        "size_in_bytes": 42.0,
        "uncommitted_operations": 42.0,
        "uncommitted_size": "string",
        "uncommitted_size_in_bytes": 42.0
      },
      "warmer": {
        "current": 42.0,
        "total": 42.0,
        "total_time": "string",
        "": 42.0
      },
      "bulk": {
        "total_operations": 42.0,
        "total_time": "string",
        "": 42.0,
        "total_size_in_bytes": 42.0,
        "avg_time": "string",
        "avg_size_in_bytes": 42.0
      },
      "shard_stats": {
        "total_count": 42.0
      }
    },
    "uuid": "string",
    "health": "green",
    "status": "open"
  },
  "additionalProperty2": {
    "primaries": {
      "completion": {
        "size_in_bytes": 42.0,
        "": 42.0,
        "fields": {
          "additionalProperty1": {
            "size_in_bytes": 42.0
          },
          "additionalProperty2": {
            "size_in_bytes": 42.0
          }
        }
      },
      "docs": {
        "count": 42.0,
        "deleted": 42.0
      },
      "fielddata": {
        "evictions": 42.0,
        "": 42.0,
        "memory_size_in_bytes": 42.0,
        "fields": {
          "additionalProperty1": {
            "memory_size_in_bytes": 42.0
          },
          "additionalProperty2": {
            "memory_size_in_bytes": 42.0
          }
        }
      },
      "flush": {
        "periodic": 42.0,
        "total": 42.0,
        "total_time": "string",
        "": 42.0
      },
      "get": {
        "current": 42.0,
        "exists_time": "string",
        "": 42.0,
        "exists_total": 42.0,
        "missing_time": "string",
        "missing_total": 42.0,
        "time": "string",
        "total": 42.0
      },
      "indexing": {
        "index_current": 42.0,
        "delete_current": 42.0,
        "delete_time": "string",
        "": 42.0,
        "delete_total": 42.0,
        "is_throttled": true,
        "noop_update_total": 42.0,
        "throttle_time": "string",
        "index_time": "string",
        "index_total": 42.0,
        "index_failed": 42.0,
        "types": {
          "*": {}
        },
        "write_load": 42.0
      },
      "additionalProperty1": {},
      "additionalProperty2": {},
      "merges": {
        "current": 42.0,
        "current_docs": 42.0,
        "current_size": "string",
        "current_size_in_bytes": 42.0,
        "total": 42.0,
        "total_auto_throttle": "string",
        "total_auto_throttle_in_bytes": 42.0,
        "total_docs": 42.0,
        "total_size": "string",
        "total_size_in_bytes": 42.0,
        "total_stopped_time": "string",
        "": 42.0,
        "total_throttled_time": "string",
        "total_time": "string"
      },
      "query_cache": {
        "cache_count": 42.0,
        "cache_size": 42.0,
        "evictions": 42.0,
        "hit_count": 42.0,
        "": 42.0,
        "memory_size_in_bytes": 42.0,
        "miss_count": 42.0,
        "total_count": 42.0
      },
      "recovery": {
        "current_as_source": 42.0,
        "current_as_target": 42.0,
        "throttle_time": "string",
        "": 42.0
      },
      "refresh": {
        "external_total": 42.0,
        "": 42.0,
        "listeners": 42.0,
        "total": 42.0,
        "total_time": "string"
      },
      "request_cache": {
        "evictions": 42.0,
        "hit_count": 42.0,
        "memory_size": "string",
        "memory_size_in_bytes": 42.0,
        "miss_count": 42.0
      },
      "search": {
        "fetch_current": 42.0,
        "fetch_time": "string",
        "": 42.0,
        "fetch_total": 42.0,
        "open_contexts": 42.0,
        "query_current": 42.0,
        "query_time": "string",
        "query_total": 42.0,
        "scroll_current": 42.0,
        "scroll_time": "string",
        "scroll_total": 42.0,
        "suggest_current": 42.0,
        "suggest_time": "string",
        "suggest_total": 42.0,
        "groups": {
          "*": {}
        }
      },
      "segments": {
        "count": 42.0,
        "": 42.0,
        "doc_values_memory_in_bytes": 42.0,
        "file_sizes": {
          "additionalProperty1": {
            "description": "string",
            "size_in_bytes": 42.0,
            "min_size_in_bytes": 42.0,
            "max_size_in_bytes": 42.0,
            "average_size_in_bytes": 42.0,
            "count": 42.0
          },
          "additionalProperty2": {
            "description": "string",
            "size_in_bytes": 42.0,
            "min_size_in_bytes": 42.0,
            "max_size_in_bytes": 42.0,
            "average_size_in_bytes": 42.0,
            "count": 42.0
          }
        },
        "fixed_bit_set_memory_in_bytes": 42.0,
        "index_writer_max_memory_in_bytes": 42.0,
        "index_writer_memory_in_bytes": 42.0,
        "max_unsafe_auto_id_timestamp": 42.0,
        "memory_in_bytes": 42.0,
        "norms_memory_in_bytes": 42.0,
        "points_memory_in_bytes": 42.0,
        "stored_fields_memory_in_bytes": 42.0,
        "terms_memory_in_bytes": 42.0,
        "term_vectors_memory_in_bytes": 42.0,
        "version_map_memory_in_bytes": 42.0
      },
      "store": {
        "": 42.0,
        "size_in_bytes": 42.0,
        "reserved_in_bytes": 42.0,
        "total_data_set_size_in_bytes": 42.0
      },
      "translog": {
        "earliest_last_modified_age": 42.0,
        "operations": 42.0,
        "size": "string",
        "size_in_bytes": 42.0,
        "uncommitted_operations": 42.0,
        "uncommitted_size": "string",
        "uncommitted_size_in_bytes": 42.0
      },
      "warmer": {
        "current": 42.0,
        "total": 42.0,
        "total_time": "string",
        "": 42.0
      },
      "bulk": {
        "total_operations": 42.0,
        "total_time": "string",
        "": 42.0,
        "total_size_in_bytes": 42.0,
        "avg_time": "string",
        "avg_size_in_bytes": 42.0
      },
      "shard_stats": {
        "total_count": 42.0
      }
    },
    "shards": {
      "additionalProperty1": [
        {
          "commit": {
            "generation": 42.0,
            "id": "string",
            "num_docs": 42.0,
            "user_data": {}
          },
          "completion": {
            "size_in_bytes": 42.0,
            "fields": {}
          },
          "docs": {
            "count": 42.0,
            "deleted": 42.0
          },
          "fielddata": {
            "evictions": 42.0,
            "memory_size_in_bytes": 42.0,
            "fields": {}
          },
          "flush": {
            "periodic": 42.0,
            "total": 42.0,
            "total_time": "string"
          },
          "get": {
            "current": 42.0,
            "exists_time": "string",
            "exists_total": 42.0,
            "missing_time": "string",
            "missing_total": 42.0,
            "time": "string",
            "total": 42.0
          },
          "indexing": {
            "index_current": 42.0,
            "delete_current": 42.0,
            "delete_time": "string",
            "delete_total": 42.0,
            "is_throttled": true,
            "noop_update_total": 42.0,
            "throttle_time": "string",
            "index_time": "string",
            "index_total": 42.0,
            "index_failed": 42.0,
            "types": {},
            "write_load": 42.0
          },
          "mappings": {
            "total_count": 42.0,
            "total_estimated_overhead_in_bytes": 42.0
          },
          "merges": {
            "current": 42.0,
            "current_docs": 42.0,
            "current_size": "string",
            "current_size_in_bytes": 42.0,
            "total": 42.0,
            "total_auto_throttle": "string",
            "total_auto_throttle_in_bytes": 42.0,
            "total_docs": 42.0,
            "total_size": "string",
            "total_size_in_bytes": 42.0,
            "total_stopped_time": "string",
            "total_throttled_time": "string",
            "total_time": "string"
          },
          "shard_path": {
            "data_path": "string",
            "is_custom_data_path": true,
            "state_path": "string"
          },
          "query_cache": {
            "cache_count": 42.0,
            "cache_size": 42.0,
            "evictions": 42.0,
            "hit_count": 42.0,
            "memory_size_in_bytes": 42.0,
            "miss_count": 42.0,
            "total_count": 42.0
          },
          "recovery": {
            "current_as_source": 42.0,
            "current_as_target": 42.0,
            "throttle_time": "string"
          },
          "refresh": {
            "external_total": 42.0,
            "listeners": 42.0,
            "total": 42.0,
            "total_time": "string"
          },
          "request_cache": {
            "evictions": 42.0,
            "hit_count": 42.0,
            "memory_size": "string",
            "memory_size_in_bytes": 42.0,
            "miss_count": 42.0
          },
          "retention_leases": {
            "primary_term": 42.0,
            "version": 42.0,
            "leases": [
              {}
            ]
          },
          "routing": {
            "node": "string",
            "primary": true,
            "state": "UNASSIGNED"
          },
          "search": {
            "fetch_current": 42.0,
            "fetch_time": "string",
            "fetch_total": 42.0,
            "open_contexts": 42.0,
            "query_current": 42.0,
            "query_time": "string",
            "query_total": 42.0,
            "scroll_current": 42.0,
            "scroll_time": "string",
            "scroll_total": 42.0,
            "suggest_current": 42.0,
            "suggest_time": "string",
            "suggest_total": 42.0,
            "groups": {}
          },
          "segments": {
            "count": 42.0,
            "doc_values_memory_in_bytes": 42.0,
            "file_sizes": {},
            "fixed_bit_set_memory_in_bytes": 42.0,
            "index_writer_max_memory_in_bytes": 42.0,
            "index_writer_memory_in_bytes": 42.0,
            "max_unsafe_auto_id_timestamp": 42.0,
            "memory_in_bytes": 42.0,
            "norms_memory_in_bytes": 42.0,
            "points_memory_in_bytes": 42.0,
            "stored_fields_memory_in_bytes": 42.0,
            "terms_memory_in_bytes": 42.0,
            "term_vectors_memory_in_bytes": 42.0,
            "version_map_memory_in_bytes": 42.0
          },
          "seq_no": {
            "global_checkpoint": 42.0,
            "local_checkpoint": 42.0,
            "max_seq_no": 42.0
          },
          "store": {
            "size_in_bytes": 42.0,
            "reserved_in_bytes": 42.0,
            "total_data_set_size_in_bytes": 42.0
          },
          "translog": {
            "earliest_last_modified_age": 42.0,
            "operations": 42.0,
            "size": "string",
            "size_in_bytes": 42.0,
            "uncommitted_operations": 42.0,
            "uncommitted_size": "string",
            "uncommitted_size_in_bytes": 42.0
          },
          "warmer": {
            "current": 42.0,
            "total": 42.0,
            "total_time": "string"
          },
          "bulk": {
            "total_operations": 42.0,
            "total_time": "string",
            "total_size_in_bytes": 42.0,
            "avg_time": "string",
            "avg_size_in_bytes": 42.0
          },
          "shards": {
            "additionalProperty1": {},
            "additionalProperty2": {}
          },
          "shard_stats": {
            "total_count": 42.0
          },
          "additionalProperty1": {},
          "additionalProperty2": {}
        }
      ],
      "additionalProperty2": [
        {
          "commit": {
            "generation": 42.0,
            "id": "string",
            "num_docs": 42.0,
            "user_data": {}
          },
          "completion": {
            "size_in_bytes": 42.0,
            "fields": {}
          },
          "docs": {
            "count": 42.0,
            "deleted": 42.0
          },
          "fielddata": {
            "evictions": 42.0,
            "memory_size_in_bytes": 42.0,
            "fields": {}
          },
          "flush": {
            "periodic": 42.0,
            "total": 42.0,
            "total_time": "string"
          },
          "get": {
            "current": 42.0,
            "exists_time": "string",
            "exists_total": 42.0,
            "missing_time": "string",
            "missing_total": 42.0,
            "time": "string",
            "total": 42.0
          },
          "indexing": {
            "index_current": 42.0,
            "delete_current": 42.0,
            "delete_time": "string",
            "delete_total": 42.0,
            "is_throttled": true,
            "noop_update_total": 42.0,
            "throttle_time": "string",
            "index_time": "string",
            "index_total": 42.0,
            "index_failed": 42.0,
            "types": {},
            "write_load": 42.0
          },
          "mappings": {
            "total_count": 42.0,
            "total_estimated_overhead_in_bytes": 42.0
          },
          "merges": {
            "current": 42.0,
            "current_docs": 42.0,
            "current_size": "string",
            "current_size_in_bytes": 42.0,
            "total": 42.0,
            "total_auto_throttle": "string",
            "total_auto_throttle_in_bytes": 42.0,
            "total_docs": 42.0,
            "total_size": "string",
            "total_size_in_bytes": 42.0,
            "total_stopped_time": "string",
            "total_throttled_time": "string",
            "total_time": "string"
          },
          "shard_path": {
            "data_path": "string",
            "is_custom_data_path": true,
            "state_path": "string"
          },
          "query_cache": {
            "cache_count": 42.0,
            "cache_size": 42.0,
            "evictions": 42.0,
            "hit_count": 42.0,
            "memory_size_in_bytes": 42.0,
            "miss_count": 42.0,
            "total_count": 42.0
          },
          "recovery": {
            "current_as_source": 42.0,
            "current_as_target": 42.0,
            "throttle_time": "string"
          },
          "refresh": {
            "external_total": 42.0,
            "listeners": 42.0,
            "total": 42.0,
            "total_time": "string"
          },
          "request_cache": {
            "evictions": 42.0,
            "hit_count": 42.0,
            "memory_size": "string",
            "memory_size_in_bytes": 42.0,
            "miss_count": 42.0
          },
          "retention_leases": {
            "primary_term": 42.0,
            "version": 42.0,
            "leases": [
              {}
            ]
          },
          "routing": {
            "node": "string",
            "primary": true,
            "state": "UNASSIGNED"
          },
          "search": {
            "fetch_current": 42.0,
            "fetch_time": "string",
            "fetch_total": 42.0,
            "open_contexts": 42.0,
            "query_current": 42.0,
            "query_time": "string",
            "query_total": 42.0,
            "scroll_current": 42.0,
            "scroll_time": "string",
            "scroll_total": 42.0,
            "suggest_current": 42.0,
            "suggest_time": "string",
            "suggest_total": 42.0,
            "groups": {}
          },
          "segments": {
            "count": 42.0,
            "doc_values_memory_in_bytes": 42.0,
            "file_sizes": {},
            "fixed_bit_set_memory_in_bytes": 42.0,
            "index_writer_max_memory_in_bytes": 42.0,
            "index_writer_memory_in_bytes": 42.0,
            "max_unsafe_auto_id_timestamp": 42.0,
            "memory_in_bytes": 42.0,
            "norms_memory_in_bytes": 42.0,
            "points_memory_in_bytes": 42.0,
            "stored_fields_memory_in_bytes": 42.0,
            "terms_memory_in_bytes": 42.0,
            "term_vectors_memory_in_bytes": 42.0,
            "version_map_memory_in_bytes": 42.0
          },
          "seq_no": {
            "global_checkpoint": 42.0,
            "local_checkpoint": 42.0,
            "max_seq_no": 42.0
          },
          "store": {
            "size_in_bytes": 42.0,
            "reserved_in_bytes": 42.0,
            "total_data_set_size_in_bytes": 42.0
          },
          "translog": {
            "earliest_last_modified_age": 42.0,
            "operations": 42.0,
            "size": "string",
            "size_in_bytes": 42.0,
            "uncommitted_operations": 42.0,
            "uncommitted_size": "string",
            "uncommitted_size_in_bytes": 42.0
          },
          "warmer": {
            "current": 42.0,
            "total": 42.0,
            "total_time": "string"
          },
          "bulk": {
            "total_operations": 42.0,
            "total_time": "string",
            "total_size_in_bytes": 42.0,
            "avg_time": "string",
            "avg_size_in_bytes": 42.0
          },
          "shards": {
            "additionalProperty1": {},
            "additionalProperty2": {}
          },
          "shard_stats": {
            "total_count": 42.0
          },
          "additionalProperty1": {},
          "additionalProperty2": {}
        }
      ]
    },
    "total": {
      "completion": {
        "size_in_bytes": 42.0,
        "": 42.0,
        "fields": {
          "additionalProperty1": {
            "size_in_bytes": 42.0
          },
          "additionalProperty2": {
            "size_in_bytes": 42.0
          }
        }
      },
      "docs": {
        "count": 42.0,
        "deleted": 42.0
      },
      "fielddata": {
        "evictions": 42.0,
        "": 42.0,
        "memory_size_in_bytes": 42.0,
        "fields": {
          "additionalProperty1": {
            "memory_size_in_bytes": 42.0
          },
          "additionalProperty2": {
            "memory_size_in_bytes": 42.0
          }
        }
      },
      "flush": {
        "periodic": 42.0,
        "total": 42.0,
        "total_time": "string",
        "": 42.0
      },
      "get": {
        "current": 42.0,
        "exists_time": "string",
        "": 42.0,
        "exists_total": 42.0,
        "missing_time": "string",
        "missing_total": 42.0,
        "time": "string",
        "total": 42.0
      },
      "indexing": {
        "index_current": 42.0,
        "delete_current": 42.0,
        "delete_time": "string",
        "": 42.0,
        "delete_total": 42.0,
        "is_throttled": true,
        "noop_update_total": 42.0,
        "throttle_time": "string",
        "index_time": "string",
        "index_total": 42.0,
        "index_failed": 42.0,
        "types": {
          "*": {}
        },
        "write_load": 42.0
      },
      "additionalProperty1": {},
      "additionalProperty2": {},
      "merges": {
        "current": 42.0,
        "current_docs": 42.0,
        "current_size": "string",
        "current_size_in_bytes": 42.0,
        "total": 42.0,
        "total_auto_throttle": "string",
        "total_auto_throttle_in_bytes": 42.0,
        "total_docs": 42.0,
        "total_size": "string",
        "total_size_in_bytes": 42.0,
        "total_stopped_time": "string",
        "": 42.0,
        "total_throttled_time": "string",
        "total_time": "string"
      },
      "query_cache": {
        "cache_count": 42.0,
        "cache_size": 42.0,
        "evictions": 42.0,
        "hit_count": 42.0,
        "": 42.0,
        "memory_size_in_bytes": 42.0,
        "miss_count": 42.0,
        "total_count": 42.0
      },
      "recovery": {
        "current_as_source": 42.0,
        "current_as_target": 42.0,
        "throttle_time": "string",
        "": 42.0
      },
      "refresh": {
        "external_total": 42.0,
        "": 42.0,
        "listeners": 42.0,
        "total": 42.0,
        "total_time": "string"
      },
      "request_cache": {
        "evictions": 42.0,
        "hit_count": 42.0,
        "memory_size": "string",
        "memory_size_in_bytes": 42.0,
        "miss_count": 42.0
      },
      "search": {
        "fetch_current": 42.0,
        "fetch_time": "string",
        "": 42.0,
        "fetch_total": 42.0,
        "open_contexts": 42.0,
        "query_current": 42.0,
        "query_time": "string",
        "query_total": 42.0,
        "scroll_current": 42.0,
        "scroll_time": "string",
        "scroll_total": 42.0,
        "suggest_current": 42.0,
        "suggest_time": "string",
        "suggest_total": 42.0,
        "groups": {
          "*": {}
        }
      },
      "segments": {
        "count": 42.0,
        "": 42.0,
        "doc_values_memory_in_bytes": 42.0,
        "file_sizes": {
          "additionalProperty1": {
            "description": "string",
            "size_in_bytes": 42.0,
            "min_size_in_bytes": 42.0,
            "max_size_in_bytes": 42.0,
            "average_size_in_bytes": 42.0,
            "count": 42.0
          },
          "additionalProperty2": {
            "description": "string",
            "size_in_bytes": 42.0,
            "min_size_in_bytes": 42.0,
            "max_size_in_bytes": 42.0,
            "average_size_in_bytes": 42.0,
            "count": 42.0
          }
        },
        "fixed_bit_set_memory_in_bytes": 42.0,
        "index_writer_max_memory_in_bytes": 42.0,
        "index_writer_memory_in_bytes": 42.0,
        "max_unsafe_auto_id_timestamp": 42.0,
        "memory_in_bytes": 42.0,
        "norms_memory_in_bytes": 42.0,
        "points_memory_in_bytes": 42.0,
        "stored_fields_memory_in_bytes": 42.0,
        "terms_memory_in_bytes": 42.0,
        "term_vectors_memory_in_bytes": 42.0,
        "version_map_memory_in_bytes": 42.0
      },
      "store": {
        "": 42.0,
        "size_in_bytes": 42.0,
        "reserved_in_bytes": 42.0,
        "total_data_set_size_in_bytes": 42.0
      },
      "translog": {
        "earliest_last_modified_age": 42.0,
        "operations": 42.0,
        "size": "string",
        "size_in_bytes": 42.0,
        "uncommitted_operations": 42.0,
        "uncommitted_size": "string",
        "uncommitted_size_in_bytes": 42.0
      },
      "warmer": {
        "current": 42.0,
        "total": 42.0,
        "total_time": "string",
        "": 42.0
      },
      "bulk": {
        "total_operations": 42.0,
        "total_time": "string",
        "": 42.0,
        "total_size_in_bytes": 42.0,
        "avg_time": "string",
        "avg_size_in_bytes": 42.0
      },
      "shard_stats": {
        "total_count": 42.0
      }
    },
    "uuid": "string",
    "health": "green",
    "status": "open"
  }
}












Validate a query Added in 1.3.0

GET /_validate/query

Validates a query without running it.

Query parameters

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

  • all_shards boolean

    If true, the validation is executed on all shards instead of one random shard per index.

  • analyzer string

    Analyzer to use for the query string. This parameter can only be used when the q query string parameter is specified.

  • If true, wildcard and prefix queries are analyzed.

  • The default operator for query string query: AND or OR.

    Values are and, AND, or, or OR.

  • df string

    Field to use as default where no field prefix is given in the query string. This parameter can only be used when the q query string parameter is specified.

  • expand_wildcards string | array[string]

    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. Valid values are: all, open, closed, hidden, none.

  • explain boolean

    If true, the response returns detailed information if an error has occurred.

  • If false, the request returns an error if it targets a missing or closed index.

  • lenient boolean

    If true, format-based query failures (such as providing text to a numeric field) in the query string will be ignored.

  • rewrite boolean

    If true, returns a more detailed explanation showing the actual Lucene query that will be executed.

  • q string

    Query in the Lucene query string syntax.

application/json

Body

Responses

GET /_validate/query
curl \
 --request GET 'http://api.example.com/_validate/query' \
 --header "Authorization: $API_KEY" \
 --header "Content-Type: application/json" \
 --data '{"query":{}}'
Request examples
{
  "query": {}
}
Response examples (200)
{
  "explanations": [
    {
      "error": "string",
      "explanation": "string",
      "index": "string",
      "valid": true
    }
  ],
  "_shards": {
    "failed": 42.0,
    "successful": 42.0,
    "total": 42.0,
    "failures": [
      {
        "index": "string",
        "node": "string",
        "reason": {
          "type": "string",
          "reason": "string",
          "stack_trace": "string",
          "caused_by": {},
          "root_cause": [
            {}
          ],
          "suppressed": [
            {}
          ]
        },
        "shard": 42.0,
        "status": "string"
      }
    ],
    "skipped": 42.0
  },
  "valid": true,
  "error": "string"
}


























































































Delete an inference endpoint Added in 8.11.0

DELETE /_inference/{task_type}/{inference_id}

Path parameters

  • task_type string Required

    The task type

    Values are sparse_embedding, text_embedding, rerank, completion, or chat_completion.

  • inference_id string Required

    The inference identifier.

Query parameters

  • dry_run boolean

    When true, the endpoint is not deleted and a list of ingest processors which reference this endpoint is returned.

  • force boolean

    When true, the inference endpoint is forcefully deleted even if it is still being used by ingest processors or semantic text fields.

Responses

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

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

    • pipelines array[string] Required
DELETE /_inference/{task_type}/{inference_id}
curl \
 --request DELETE 'http://api.example.com/_inference/{task_type}/{inference_id}' \
 --header "Authorization: $API_KEY"
Response examples (200)
{
  "acknowledged": true,
  "pipelines": [
    "string"
  ]
}
































































































Update an inference endpoint Added in 8.17.0

PUT /_inference/{task_type}/{inference_id}/_update

Modify task_settings, secrets (within service_settings), or num_allocations for an inference endpoint, depending on the specific endpoint service and task_type.

IMPORTANT: The inference APIs enable you to use certain services, such as built-in machine learning models (ELSER, E5), models uploaded through Eland, Cohere, OpenAI, Azure, Google AI Studio, Google Vertex AI, Anthropic, Watsonx.ai, or Hugging Face. For built-in models and models uploaded through Eland, the inference APIs offer an alternative way to use and manage trained models. However, if you do not plan to use the inference APIs to use these models or if you want to use non-NLP models, use the machine learning trained model APIs.

Path parameters

  • task_type string Required

    The type of inference task that the model performs.

    Values are sparse_embedding, text_embedding, rerank, completion, or chat_completion.

  • inference_id string Required

    The unique identifier of the inference endpoint.

application/json

Body Required

  • Hide chunking_settings attributes Show chunking_settings attributes object
    • The maximum size of a chunk in words. This value cannot be higher than 300 or lower than 20 (for sentence strategy) or 10 (for word strategy).

    • overlap number

      The number of overlapping words for chunks. It is applicable only to a word chunking strategy. This value cannot be higher than half the max_chunk_size value.

    • The number of overlapping sentences for chunks. It is applicable only for a sentence chunking strategy. It can be either 1 or 0.

    • strategy string

      The chunking strategy: sentence or word.

  • service string Required

    The service type

  • service_settings object Required

Responses

  • 200 application/json
    Hide response attributes Show response attributes object
    • Hide attributes Show attributes object
      • The maximum size of a chunk in words. This value cannot be higher than 300 or lower than 20 (for sentence strategy) or 10 (for word strategy).

      • overlap number

        The number of overlapping words for chunks. It is applicable only to a word chunking strategy. This value cannot be higher than half the max_chunk_size value.

      • The number of overlapping sentences for chunks. It is applicable only for a sentence chunking strategy. It can be either 1 or 0.

      • strategy string

        The chunking strategy: sentence or word.

    • service string Required

      The service type

    • service_settings object Required
    • inference_id string Required

      The inference Id

    • task_type string Required

      Values are sparse_embedding, text_embedding, rerank, completion, or chat_completion.

PUT /_inference/{task_type}/{inference_id}/_update
curl \
 --request PUT 'http://api.example.com/_inference/{task_type}/{inference_id}/_update' \
 --header "Authorization: $API_KEY" \
 --header "Content-Type: application/json" \
 --data '{"":{"max_chunk_size":42.0,"overlap":42.0,"sentence_overlap":42.0,"strategy":"string"},"service":"string","service_settings":{},"task_settings":{}}'
Request examples
{
  "": {
    "max_chunk_size": 42.0,
    "overlap": 42.0,
    "sentence_overlap": 42.0,
    "strategy": "string"
  },
  "service": "string",
  "service_settings": {},
  "task_settings": {}
}
Response examples (200)
{
  "": {
    "max_chunk_size": 42.0,
    "overlap": 42.0,
    "sentence_overlap": 42.0,
    "strategy": "string"
  },
  "service": "string",
  "service_settings": {},
  "task_settings": {},
  "inference_id": "string",
  "task_type": "sparse_embedding"
}






Get GeoIP database configurations Added in 8.15.0

GET /_ingest/geoip/database/{id}

Get information about one or more IP geolocation database configurations.

Path parameters

  • id string | array[string] Required

    A comma-separated list of database configuration IDs to retrieve. Wildcard (*) expressions are supported. To get all database configurations, omit this parameter or use *.

Responses

  • 200 application/json
    Hide response attribute Show response attribute object
    • databases array[object] Required
      Hide databases attributes Show databases attributes object
      • id string Required
      • version number Required
      • Time unit for milliseconds

      • database object

        The configuration necessary to identify which IP geolocation provider to use to download a database, as well as any provider-specific configuration necessary for such downloading. At present, the only supported providers are maxmind and ipinfo, and the maxmind provider requires that an account_id (string) is configured. A provider (either maxmind or ipinfo) must be specified. The web and local providers can be returned as read only configurations.

        Hide database attributes Show database attributes object
GET /_ingest/geoip/database/{id}
curl \
 --request GET 'http://api.example.com/_ingest/geoip/database/{id}' \
 --header "Authorization: $API_KEY"
Response examples (200)
{
  "databases": [
    {
      "id": "string",
      "version": 42.0,
      "": {
        "name": "string",
        "maxmind": {
          "account_id": "string"
        },
        "ipinfo": {}
      }
    }
  ]
}




Delete GeoIP database configurations Added in 8.15.0

DELETE /_ingest/geoip/database/{id}

Delete one or more IP geolocation database configurations.

Path parameters

  • id string | array[string] Required

    A comma-separated list of geoip database configurations to delete

Query parameters

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

  • timeout string

    The period to wait for a response. If no response is received before the timeout expires, the request fails and returns an error.

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.

DELETE /_ingest/geoip/database/{id}
curl \
 --request DELETE 'http://api.example.com/_ingest/geoip/database/{id}' \
 --header "Authorization: $API_KEY"
Response examples (200)
{
  "acknowledged": true
}




















































































































































Path parameters

  • calendar_id string Required

    A string that uniquely identifies a calendar. You can get information for multiple calendars by using a comma-separated list of ids or a wildcard expression. You can get information for all calendars by using _all or * or by omitting the calendar identifier.

Query parameters

  • from number

    Skips the specified number of calendars. This parameter is supported only when you omit the calendar identifier.

  • size number

    Specifies the maximum number of calendars to obtain. This parameter is supported only when you omit the calendar identifier.

application/json

Body

  • page object
    Hide page attributes Show page attributes object
    • from number

      Skips the specified number of items.

    • size number

      Specifies the maximum number of items to obtain.

Responses

  • 200 application/json
    Hide response attributes Show response attributes object
    • calendars array[object] Required
      Hide calendars attributes Show calendars attributes object
    • count number Required
GET /_ml/calendars/{calendar_id}
curl \
 --request GET 'http://api.example.com/_ml/calendars/{calendar_id}' \
 --header "Authorization: $API_KEY" \
 --header "Content-Type: application/json" \
 --data '{"page":{"from":42.0,"size":42.0}}'
Request examples
{
  "page": {
    "from": 42.0,
    "size": 42.0
  }
}
Response examples (200)
{
  "calendars": [
    {
      "calendar_id": "string",
      "description": "string",
      "job_ids": [
        "string"
      ]
    }
  ],
  "count": 42.0
}




















































Delete a filter Added in 5.4.0

DELETE /_ml/filters/{filter_id}

If an anomaly detection job references the filter, you cannot delete the filter. You must update or delete the job before you can delete the filter.

Path parameters

  • filter_id string Required

    A string that uniquely identifies a filter.

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.

DELETE /_ml/filters/{filter_id}
curl \
 --request DELETE 'http://api.example.com/_ml/filters/{filter_id}' \
 --header "Authorization: $API_KEY"
Response examples (200)
A successful response when deleting a filter.
{
  "acknowledged": true
}












































































Get anomaly detection job results for categories Added in 5.4.0

GET /_ml/anomaly_detectors/{job_id}/results/categories/{category_id}

Path parameters

  • job_id string Required

    Identifier for the anomaly detection job.

  • category_id string Required

    Identifier for the category, which is unique in the job. If you specify neither the category ID nor the partition_field_value, the API returns information about all categories. If you specify only the partition_field_value, it returns information about all categories for the specified partition.

Query parameters

  • from number

    Skips the specified number of categories.

  • Only return categories for the specified partition.

  • size number

    Specifies the maximum number of categories to obtain.

application/json

Body

  • page object
    Hide page attributes Show page attributes object
    • from number

      Skips the specified number of items.

    • size number

      Specifies the maximum number of items to obtain.

Responses

  • 200 application/json
    Hide response attributes Show response attributes object
    • categories array[object] Required
      Hide categories attributes Show categories attributes object
      • category_id number Required
      • examples array[string] Required

        A list of examples of actual values that matched the category.

      • job_id string Required
      • max_matching_length number Required
      • If per-partition categorization is enabled, this property identifies the field used to segment the categorization. It is not present when per-partition categorization is disabled.

      • If per-partition categorization is enabled, this property identifies the value of the partition_field_name for the category. It is not present when per-partition categorization is disabled.

      • regex string Required

        A regular expression that is used to search for values that match the category.

      • terms string Required

        A space separated list of the common tokens that are matched in values of the category.

      • The number of messages that have been matched by this category. This is only guaranteed to have the latest accurate count after a job _flush or _close

      • A list of category_id entries that this current category encompasses. Any new message that is processed by the categorizer will match against this category and not any of the categories in this list. This is only guaranteed to have the latest accurate list of categories after a job _flush or _close

      • p string
      • result_type string Required
      • mlcategory string Required
    • count number Required
GET /_ml/anomaly_detectors/{job_id}/results/categories/{category_id}
curl \
 --request GET 'http://api.example.com/_ml/anomaly_detectors/{job_id}/results/categories/{category_id}' \
 --header "Authorization: $API_KEY" \
 --header "Content-Type: application/json" \
 --data '{"page":{"from":42.0,"size":42.0}}'
Request examples
{
  "page": {
    "from": 42.0,
    "size": 42.0
  }
}
Response examples (200)
{
  "categories": [
    {
      "category_id": 42.0,
      "examples": [
        "string"
      ],
      "grok_pattern": "string",
      "job_id": "string",
      "max_matching_length": 42.0,
      "partition_field_name": "string",
      "partition_field_value": "string",
      "regex": "string",
      "terms": "string",
      "num_matches": 42.0,
      "preferred_to_categories": [
        "string"
      ],
      "p": "string",
      "result_type": "string",
      "mlcategory": "string"
    }
  ],
  "count": 42.0
}

Get anomaly detection job results for categories Added in 5.4.0

POST /_ml/anomaly_detectors/{job_id}/results/categories/{category_id}

Path parameters

  • job_id string Required

    Identifier for the anomaly detection job.

  • category_id string Required

    Identifier for the category, which is unique in the job. If you specify neither the category ID nor the partition_field_value, the API returns information about all categories. If you specify only the partition_field_value, it returns information about all categories for the specified partition.

Query parameters

  • from number

    Skips the specified number of categories.

  • Only return categories for the specified partition.

  • size number

    Specifies the maximum number of categories to obtain.

application/json

Body

  • page object
    Hide page attributes Show page attributes object
    • from number

      Skips the specified number of items.

    • size number

      Specifies the maximum number of items to obtain.

Responses

  • 200 application/json
    Hide response attributes Show response attributes object
    • categories array[object] Required
      Hide categories attributes Show categories attributes object
      • category_id number Required
      • examples array[string] Required

        A list of examples of actual values that matched the category.

      • job_id string Required
      • max_matching_length number Required
      • If per-partition categorization is enabled, this property identifies the field used to segment the categorization. It is not present when per-partition categorization is disabled.

      • If per-partition categorization is enabled, this property identifies the value of the partition_field_name for the category. It is not present when per-partition categorization is disabled.

      • regex string Required

        A regular expression that is used to search for values that match the category.

      • terms string Required

        A space separated list of the common tokens that are matched in values of the category.

      • The number of messages that have been matched by this category. This is only guaranteed to have the latest accurate count after a job _flush or _close

      • A list of category_id entries that this current category encompasses. Any new message that is processed by the categorizer will match against this category and not any of the categories in this list. This is only guaranteed to have the latest accurate list of categories after a job _flush or _close

      • p string
      • result_type string Required
      • mlcategory string Required
    • count number Required
POST /_ml/anomaly_detectors/{job_id}/results/categories/{category_id}
curl \
 --request POST 'http://api.example.com/_ml/anomaly_detectors/{job_id}/results/categories/{category_id}' \
 --header "Authorization: $API_KEY" \
 --header "Content-Type: application/json" \
 --data '{"page":{"from":42.0,"size":42.0}}'
Request examples
{
  "page": {
    "from": 42.0,
    "size": 42.0
  }
}
Response examples (200)
{
  "categories": [
    {
      "category_id": 42.0,
      "examples": [
        "string"
      ],
      "grok_pattern": "string",
      "job_id": "string",
      "max_matching_length": 42.0,
      "partition_field_name": "string",
      "partition_field_value": "string",
      "regex": "string",
      "terms": "string",
      "num_matches": 42.0,
      "preferred_to_categories": [
        "string"
      ],
      "p": "string",
      "result_type": "string",
      "mlcategory": "string"
    }
  ],
  "count": 42.0
}

Get anomaly detection job results for categories Added in 5.4.0

GET /_ml/anomaly_detectors/{job_id}/results/categories

Path parameters

  • job_id string Required

    Identifier for the anomaly detection job.

Query parameters

  • from number

    Skips the specified number of categories.

  • Only return categories for the specified partition.

  • size number

    Specifies the maximum number of categories to obtain.

application/json

Body

  • page object
    Hide page attributes Show page attributes object
    • from number

      Skips the specified number of items.

    • size number

      Specifies the maximum number of items to obtain.

Responses

  • 200 application/json
    Hide response attributes Show response attributes object
    • categories array[object] Required
      Hide categories attributes Show categories attributes object
      • category_id number Required
      • examples array[string] Required

        A list of examples of actual values that matched the category.

      • job_id string Required
      • max_matching_length number Required
      • If per-partition categorization is enabled, this property identifies the field used to segment the categorization. It is not present when per-partition categorization is disabled.

      • If per-partition categorization is enabled, this property identifies the value of the partition_field_name for the category. It is not present when per-partition categorization is disabled.

      • regex string Required

        A regular expression that is used to search for values that match the category.

      • terms string Required

        A space separated list of the common tokens that are matched in values of the category.

      • The number of messages that have been matched by this category. This is only guaranteed to have the latest accurate count after a job _flush or _close

      • A list of category_id entries that this current category encompasses. Any new message that is processed by the categorizer will match against this category and not any of the categories in this list. This is only guaranteed to have the latest accurate list of categories after a job _flush or _close

      • p string
      • result_type string Required
      • mlcategory string Required
    • count number Required
GET /_ml/anomaly_detectors/{job_id}/results/categories
curl \
 --request GET 'http://api.example.com/_ml/anomaly_detectors/{job_id}/results/categories' \
 --header "Authorization: $API_KEY" \
 --header "Content-Type: application/json" \
 --data '{"page":{"from":42.0,"size":42.0}}'
Request examples
{
  "page": {
    "from": 42.0,
    "size": 42.0
  }
}
Response examples (200)
{
  "categories": [
    {
      "category_id": 42.0,
      "examples": [
        "string"
      ],
      "grok_pattern": "string",
      "job_id": "string",
      "max_matching_length": 42.0,
      "partition_field_name": "string",
      "partition_field_value": "string",
      "regex": "string",
      "terms": "string",
      "num_matches": 42.0,
      "preferred_to_categories": [
        "string"
      ],
      "p": "string",
      "result_type": "string",
      "mlcategory": "string"
    }
  ],
  "count": 42.0
}





























































































































































































Preview features used by data frame analytics Added in 7.13.0

GET /_ml/data_frame/analytics/{id}/_preview

Preview the extracted features used by a data frame analytics config.

Path parameters

  • id string Required

    Identifier for the data frame analytics job.

application/json

Body

  • config object
    Hide config attributes Show config attributes object
    • source object Required
      Hide source attributes Show source attributes object
      • index string | array[string] Required
      • 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.

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

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

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

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

      • _source object
        Hide _source attributes Show _source attributes object
        • includes array[string]

          An array of strings that defines the fields that will be excluded from the analysis. You do not need to add fields with unsupported data types to excludes, these fields are excluded from the analysis automatically.

        • excludes array[string]

          An array of strings that defines the fields that will be included in the analysis.

      • query object

        The Elasticsearch query domain-specific language (DSL). This value corresponds to the query object in an Elasticsearch search POST body. All the options that are supported by Elasticsearch can be used, as this object is passed verbatim to Elasticsearch. By default, this property has the following value: {"match_all": {}}.

        Query DSL
    • analysis object Required
      Hide analysis attributes Show analysis attributes object
      • Hide classification attributes Show classification attributes object
        • alpha number

          Advanced configuration option. Machine learning uses loss guided tree growing, which means that the decision trees grow where the regularized loss decreases most quickly. This parameter affects loss calculations by acting as a multiplier of the tree depth. Higher alpha values result in shallower trees and faster training times. By default, this value is calculated during hyperparameter optimization. It must be greater than or equal to zero.

        • dependent_variable string Required

          Defines which field of the document is to be predicted. It must match one of the fields in the index being used to train. If this field is missing from a document, then that document will not be used for training, but a prediction with the trained model will be generated for it. It is also known as continuous target variable. For classification analysis, the data type of the field must be numeric (integer, short, long, byte), categorical (ip or keyword), or boolean. There must be no more than 30 different values in this field. For regression analysis, the data type of the field must be numeric.

        • Advanced configuration option. Controls the fraction of data that is used to compute the derivatives of the loss function for tree training. A small value results in the use of a small fraction of the data. If this value is set to be less than 1, accuracy typically improves. However, too small a value may result in poor convergence for the ensemble and so require more trees. By default, this value is calculated during hyperparameter optimization. It must be greater than zero and less than or equal to 1.

        • Advanced configuration option. Specifies whether the training process should finish if it is not finding any better performing models. If disabled, the training process can take significantly longer and the chance of finding a better performing model is unremarkable.

        • eta number

          Advanced configuration option. The shrinkage applied to the weights. Smaller values result in larger forests which have a better generalization error. However, larger forests cause slower training. By default, this value is calculated during hyperparameter optimization. It must be a value between 0.001 and 1.

        • Advanced configuration option. Specifies the rate at which eta increases for each new tree that is added to the forest. For example, a rate of 1.05 increases eta by 5% for each extra tree. By default, this value is calculated during hyperparameter optimization. It must be between 0.5 and 2.

        • Advanced configuration option. Defines the fraction of features that will be used when selecting a random bag for each candidate split. By default, this value is calculated during hyperparameter optimization.

        • feature_processors array[object]

          Advanced configuration option. A collection of feature preprocessors that modify one or more included fields. The analysis uses the resulting one or more features instead of the original document field. However, these features are ephemeral; they are not stored in the destination index. Multiple feature_processors entries can refer to the same document fields. Automatic categorical feature encoding still occurs for the fields that are unprocessed by a custom processor or that have categorical values. Use this property only if you want to override the automatic feature encoding of the specified fields.

          Hide feature_processors attributes Show feature_processors attributes object
        • gamma number

          Advanced configuration option. Regularization parameter to prevent overfitting on the training data set. Multiplies a linear penalty associated with the size of individual trees in the forest. A high gamma value causes training to prefer small trees. A small gamma value results in larger individual trees and slower training. By default, this value is calculated during hyperparameter optimization. It must be a nonnegative value.

        • lambda number

          Advanced configuration option. Regularization parameter to prevent overfitting on the training data set. Multiplies an L2 regularization term which applies to leaf weights of the individual trees in the forest. A high lambda value causes training to favor small leaf weights. This behavior makes the prediction function smoother at the expense of potentially not being able to capture relevant relationships between the features and the dependent variable. A small lambda value results in large individual trees and slower training. By default, this value is calculated during hyperparameter optimization. It must be a nonnegative value.

        • Advanced configuration option. A multiplier responsible for determining the maximum number of hyperparameter optimization steps in the Bayesian optimization procedure. The maximum number of steps is determined based on the number of undefined hyperparameters times the maximum optimization rounds per hyperparameter. By default, this value is calculated during hyperparameter optimization.

        • Advanced configuration option. Defines the maximum number of decision trees in the forest. The maximum value is 2000. By default, this value is calculated during hyperparameter optimization.

        • Advanced configuration option. Specifies the maximum number of feature importance values per document to return. By default, no feature importance calculation occurs.

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

        • Defines the seed for the random generator that is used to pick training data. By default, it is randomly generated. Set it to a specific value to use the same training data each time you start a job (assuming other related parameters such as source and analyzed_fields are the same).

        • Advanced configuration option. Machine learning uses loss guided tree growing, which means that the decision trees grow where the regularized loss decreases most quickly. This soft limit combines with the soft_tree_depth_tolerance to penalize trees that exceed the specified depth; the regularized loss increases quickly beyond this depth. By default, this value is calculated during hyperparameter optimization. It must be greater than or equal to 0.

        • Advanced configuration option. This option controls how quickly the regularized loss increases when the tree depth exceeds soft_tree_depth_limit. By default, this value is calculated during hyperparameter optimization. It must be greater than or equal to 0.01.

        • Defines the number of categories for which the predicted probabilities are reported. It must be non-negative or -1. If it is -1 or greater than the total number of categories, probabilities are reported for all categories; if you have a large number of categories, there could be a significant effect on the size of your destination index. NOTE: To use the AUC ROC evaluation method, num_top_classes must be set to -1 or a value greater than or equal to the total number of categories.

      • Hide outlier_detection attributes Show outlier_detection attributes object
        • Specifies whether the feature influence calculation is enabled.

        • The minimum outlier score that a document needs to have in order to calculate its feature influence score. Value range: 0-1.

        • method string

          The method that outlier detection uses. Available methods are lof, ldof, distance_kth_nn, distance_knn, and ensemble. The default value is ensemble, which means that outlier detection uses an ensemble of different methods and normalises and combines their individual outlier scores to obtain the overall outlier score.

        • Defines the value for how many nearest neighbors each method of outlier detection uses to calculate its outlier score. When the value is not set, different values are used for different ensemble members. This default behavior helps improve the diversity in the ensemble; only override it if you are confident that the value you choose is appropriate for the data set.

        • The proportion of the data set that is assumed to be outlying prior to outlier detection. For example, 0.05 means it is assumed that 5% of values are real outliers and 95% are inliers.

        • If true, the following operation is performed on the columns before computing outlier scores: (x_i - mean(x_i)) / sd(x_i).

      • Hide regression attributes Show regression attributes object
        • alpha number

          Advanced configuration option. Machine learning uses loss guided tree growing, which means that the decision trees grow where the regularized loss decreases most quickly. This parameter affects loss calculations by acting as a multiplier of the tree depth. Higher alpha values result in shallower trees and faster training times. By default, this value is calculated during hyperparameter optimization. It must be greater than or equal to zero.

        • dependent_variable string Required

          Defines which field of the document is to be predicted. It must match one of the fields in the index being used to train. If this field is missing from a document, then that document will not be used for training, but a prediction with the trained model will be generated for it. It is also known as continuous target variable. For classification analysis, the data type of the field must be numeric (integer, short, long, byte), categorical (ip or keyword), or boolean. There must be no more than 30 different values in this field. For regression analysis, the data type of the field must be numeric.

        • Advanced configuration option. Controls the fraction of data that is used to compute the derivatives of the loss function for tree training. A small value results in the use of a small fraction of the data. If this value is set to be less than 1, accuracy typically improves. However, too small a value may result in poor convergence for the ensemble and so require more trees. By default, this value is calculated during hyperparameter optimization. It must be greater than zero and less than or equal to 1.

        • Advanced configuration option. Specifies whether the training process should finish if it is not finding any better performing models. If disabled, the training process can take significantly longer and the chance of finding a better performing model is unremarkable.

        • eta number

          Advanced configuration option. The shrinkage applied to the weights. Smaller values result in larger forests which have a better generalization error. However, larger forests cause slower training. By default, this value is calculated during hyperparameter optimization. It must be a value between 0.001 and 1.

        • Advanced configuration option. Specifies the rate at which eta increases for each new tree that is added to the forest. For example, a rate of 1.05 increases eta by 5% for each extra tree. By default, this value is calculated during hyperparameter optimization. It must be between 0.5 and 2.

        • Advanced configuration option. Defines the fraction of features that will be used when selecting a random bag for each candidate split. By default, this value is calculated during hyperparameter optimization.

        • feature_processors array[object]

          Advanced configuration option. A collection of feature preprocessors that modify one or more included fields. The analysis uses the resulting one or more features instead of the original document field. However, these features are ephemeral; they are not stored in the destination index. Multiple feature_processors entries can refer to the same document fields. Automatic categorical feature encoding still occurs for the fields that are unprocessed by a custom processor or that have categorical values. Use this property only if you want to override the automatic feature encoding of the specified fields.

          Hide feature_processors attributes Show feature_processors attributes object
        • gamma number

          Advanced configuration option. Regularization parameter to prevent overfitting on the training data set. Multiplies a linear penalty associated with the size of individual trees in the forest. A high gamma value causes training to prefer small trees. A small gamma value results in larger individual trees and slower training. By default, this value is calculated during hyperparameter optimization. It must be a nonnegative value.

        • lambda number

          Advanced configuration option. Regularization parameter to prevent overfitting on the training data set. Multiplies an L2 regularization term which applies to leaf weights of the individual trees in the forest. A high lambda value causes training to favor small leaf weights. This behavior makes the prediction function smoother at the expense of potentially not being able to capture relevant relationships between the features and the dependent variable. A small lambda value results in large individual trees and slower training. By default, this value is calculated during hyperparameter optimization. It must be a nonnegative value.

        • Advanced configuration option. A multiplier responsible for determining the maximum number of hyperparameter optimization steps in the Bayesian optimization procedure. The maximum number of steps is determined based on the number of undefined hyperparameters times the maximum optimization rounds per hyperparameter. By default, this value is calculated during hyperparameter optimization.

        • Advanced configuration option. Defines the maximum number of decision trees in the forest. The maximum value is 2000. By default, this value is calculated during hyperparameter optimization.

        • Advanced configuration option. Specifies the maximum number of feature importance values per document to return. By default, no feature importance calculation occurs.

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

        • Defines the seed for the random generator that is used to pick training data. By default, it is randomly generated. Set it to a specific value to use the same training data each time you start a job (assuming other related parameters such as source and analyzed_fields are the same).

        • Advanced configuration option. Machine learning uses loss guided tree growing, which means that the decision trees grow where the regularized loss decreases most quickly. This soft limit combines with the soft_tree_depth_tolerance to penalize trees that exceed the specified depth; the regularized loss increases quickly beyond this depth. By default, this value is calculated during hyperparameter optimization. It must be greater than or equal to 0.

        • Advanced configuration option. This option controls how quickly the regularized loss increases when the tree depth exceeds soft_tree_depth_limit. By default, this value is calculated during hyperparameter optimization. It must be greater than or equal to 0.01.

        • The loss function used during regression. Available options are mse (mean squared error), msle (mean squared logarithmic error), huber (Pseudo-Huber loss).

        • A positive number that is used as a parameter to the loss_function.

    • Hide analyzed_fields attributes Show analyzed_fields attributes object
      • includes array[string]

        An array of strings that defines the fields that will be excluded from the analysis. You do not need to add fields with unsupported data types to excludes, these fields are excluded from the analysis automatically.

      • excludes array[string]

        An array of strings that defines the fields that will be included in the analysis.

Responses

  • 200 application/json
    Hide response attribute Show response attribute object
    • feature_values array[object] Required

      An array of objects that contain feature name and value pairs. The features have been processed and indicate what will be sent to the model for training.

      Hide feature_values attribute Show feature_values attribute object
      • * string Additional properties
GET /_ml/data_frame/analytics/{id}/_preview
curl \
 --request GET 'http://api.example.com/_ml/data_frame/analytics/{id}/_preview' \
 --header "Authorization: $API_KEY" \
 --header "Content-Type: application/json" \
 --data '{"config":{"source":{"index":"string","runtime_mappings":{"additionalProperty1":{"fields":{"additionalProperty1":{"type":"boolean"},"additionalProperty2":{"type":"boolean"}},"fetch_fields":[{"field":"string","format":"string"}],"format":"string","input_field":"string","target_field":"string","target_index":"string","script":{"source":"string","id":"string","params":{"additionalProperty1":{},"additionalProperty2":{}},"":"painless","options":{"additionalProperty1":"string","additionalProperty2":"string"}},"type":"boolean"},"additionalProperty2":{"fields":{"additionalProperty1":{"type":"boolean"},"additionalProperty2":{"type":"boolean"}},"fetch_fields":[{"field":"string","format":"string"}],"format":"string","input_field":"string","target_field":"string","target_index":"string","script":{"source":"string","id":"string","params":{"additionalProperty1":{},"additionalProperty2":{}},"":"painless","options":{"additionalProperty1":"string","additionalProperty2":"string"}},"type":"boolean"}},"_source":{"includes":["string"],"excludes":["string"]},"query":{}},"analysis":{"":{"alpha":42.0,"dependent_variable":"string","downsample_factor":42.0,"early_stopping_enabled":true,"eta":42.0,"eta_growth_rate_per_tree":42.0,"feature_bag_fraction":42.0,"feature_processors":[{"frequency_encoding":{},"multi_encoding":{},"n_gram_encoding":{},"one_hot_encoding":{},"target_mean_encoding":{}}],"gamma":42.0,"lambda":42.0,"max_optimization_rounds_per_hyperparameter":42.0,"max_trees":42.0,"num_top_feature_importance_values":42.0,"prediction_field_name":"string","randomize_seed":42.0,"soft_tree_depth_limit":42.0,"soft_tree_depth_tolerance":42.0,"":"string","loss_function":"string","loss_function_parameter":42.0},"outlier_detection":{"compute_feature_influence":true,"feature_influence_threshold":42.0,"method":"string","n_neighbors":42.0,"outlier_fraction":42.0,"standardization_enabled":true}},"model_memory_limit":"string","max_num_threads":42.0,"analyzed_fields":{"includes":["string"],"excludes":["string"]}}}'
Request examples
{
  "config": {
    "source": {
      "index": "string",
      "runtime_mappings": {
        "additionalProperty1": {
          "fields": {
            "additionalProperty1": {
              "type": "boolean"
            },
            "additionalProperty2": {
              "type": "boolean"
            }
          },
          "fetch_fields": [
            {
              "field": "string",
              "format": "string"
            }
          ],
          "format": "string",
          "input_field": "string",
          "target_field": "string",
          "target_index": "string",
          "script": {
            "source": "string",
            "id": "string",
            "params": {
              "additionalProperty1": {},
              "additionalProperty2": {}
            },
            "": "painless",
            "options": {
              "additionalProperty1": "string",
              "additionalProperty2": "string"
            }
          },
          "type": "boolean"
        },
        "additionalProperty2": {
          "fields": {
            "additionalProperty1": {
              "type": "boolean"
            },
            "additionalProperty2": {
              "type": "boolean"
            }
          },
          "fetch_fields": [
            {
              "field": "string",
              "format": "string"
            }
          ],
          "format": "string",
          "input_field": "string",
          "target_field": "string",
          "target_index": "string",
          "script": {
            "source": "string",
            "id": "string",
            "params": {
              "additionalProperty1": {},
              "additionalProperty2": {}
            },
            "": "painless",
            "options": {
              "additionalProperty1": "string",
              "additionalProperty2": "string"
            }
          },
          "type": "boolean"
        }
      },
      "_source": {
        "includes": [
          "string"
        ],
        "excludes": [
          "string"
        ]
      },
      "query": {}
    },
    "analysis": {
      "": {
        "alpha": 42.0,
        "dependent_variable": "string",
        "downsample_factor": 42.0,
        "early_stopping_enabled": true,
        "eta": 42.0,
        "eta_growth_rate_per_tree": 42.0,
        "feature_bag_fraction": 42.0,
        "feature_processors": [
          {
            "frequency_encoding": {},
            "multi_encoding": {},
            "n_gram_encoding": {},
            "one_hot_encoding": {},
            "target_mean_encoding": {}
          }
        ],
        "gamma": 42.0,
        "lambda": 42.0,
        "max_optimization_rounds_per_hyperparameter": 42.0,
        "max_trees": 42.0,
        "num_top_feature_importance_values": 42.0,
        "prediction_field_name": "string",
        "randomize_seed": 42.0,
        "soft_tree_depth_limit": 42.0,
        "soft_tree_depth_tolerance": 42.0,
        "": "string",
        "loss_function": "string",
        "loss_function_parameter": 42.0
      },
      "outlier_detection": {
        "compute_feature_influence": true,
        "feature_influence_threshold": 42.0,
        "method": "string",
        "n_neighbors": 42.0,
        "outlier_fraction": 42.0,
        "standardization_enabled": true
      }
    },
    "model_memory_limit": "string",
    "max_num_threads": 42.0,
    "analyzed_fields": {
      "includes": [
        "string"
      ],
      "excludes": [
        "string"
      ]
    }
  }
}
Response examples (200)
{
  "feature_values": [
    {
      "additionalProperty1": "string",
      "additionalProperty2": "string"
    }
  ]
}

























































Create part of a trained model definition Added in 8.0.0

PUT /_ml/trained_models/{model_id}/definition/{part}

Path parameters

  • model_id string Required

    The unique identifier of the trained model.

  • part number Required

    The definition part number. When the definition is loaded for inference the definition parts are streamed in the order of their part number. The first part must be 0 and the final part must be total_parts - 1.

application/json

Body Required

  • definition string Required

    The definition part for the model. Must be a base64 encoded string.

  • The total uncompressed definition length in bytes. Not base64 encoded.

  • total_parts number Required

    The total number of parts that will be uploaded. Must be greater than 0.

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.

PUT /_ml/trained_models/{model_id}/definition/{part}
curl \
 --request PUT 'http://api.example.com/_ml/trained_models/{model_id}/definition/{part}' \
 --header "Authorization: $API_KEY" \
 --header "Content-Type: application/json" \
 --data '{"definition":"string","total_definition_length":42.0,"total_parts":42.0}'
Request examples
{
  "definition": "string",
  "total_definition_length": 42.0,
  "total_parts": 42.0
}
Response examples (200)
{
  "acknowledged": true
}


























































Send monitoring data Added in 6.3.0

POST /_monitoring/bulk

This API is used by the monitoring features to send monitoring data.

Query parameters

application/json

Body object Required

One of:
  • index object
    Hide index attributes Show index attributes object
    • _id string
    • _index string
    • routing string
    • version number
    • Values are internal, external, external_gte, or force.

    • A map from the full name of fields to the name of dynamic templates. It defaults to an empty map. If a name matches a dynamic template, that template will be applied regardless of other match predicates defined in the template. If a field is already defined in the mapping, then this parameter won't be used.

      Hide dynamic_templates attribute Show dynamic_templates attribute object
      • * string Additional properties
    • pipeline string

      The ID of the pipeline to use to preprocess incoming documents. If the index has a default ingest pipeline specified, setting the value to _none turns off the default ingest pipeline for this request. If a final pipeline is configured, it will always run regardless of the value of this parameter.

    • If true, the request's actions must target an index alias.

  • create object
    Hide create attributes Show create attributes object
    • _id string
    • _index string
    • routing string
    • version number
    • Values are internal, external, external_gte, or force.

    • A map from the full name of fields to the name of dynamic templates. It defaults to an empty map. If a name matches a dynamic template, that template will be applied regardless of other match predicates defined in the template. If a field is already defined in the mapping, then this parameter won't be used.

      Hide dynamic_templates attribute Show dynamic_templates attribute object
      • * string Additional properties
    • pipeline string

      The ID of the pipeline to use to preprocess incoming documents. If the index has a default ingest pipeline specified, setting the value to _none turns off the default ingest pipeline for this request. If a final pipeline is configured, it will always run regardless of the value of this parameter.

    • If true, the request's actions must target an index alias.

  • update object
    Hide update attributes Show update attributes object
  • delete object
    Hide delete attributes Show delete attributes object

Responses

  • 200 application/json
    Hide response attributes Show response attributes object
    • error object
      Hide error attributes Show error attributes object
    • errors boolean Required

      True if there is was an error

    • ignored boolean Required

      Was collection disabled?

    • took number Required
POST /_monitoring/bulk
curl \
 --request POST 'http://api.example.com/_monitoring/bulk?system_id=string&system_api_version=string&interval=string' \
 --header "Authorization: $API_KEY" \
 --header "Content-Type: application/json" \
 --data '[{"":{"_id":"string","_index":"string","routing":"string","if_primary_term":42.0,"if_seq_no":42.0,"version":42.0,"version_type":"internal"}}]'
Request examples
[
  {
    "": {
      "_id": "string",
      "_index": "string",
      "routing": "string",
      "if_primary_term": 42.0,
      "if_seq_no": 42.0,
      "version": 42.0,
      "version_type": "internal"
    }
  }
]
Response examples (200)
{
  "error": {
    "type": "string",
    "reason": "string",
    "stack_trace": "string",
    "caused_by": {},
    "root_cause": [
      {}
    ],
    "suppressed": [
      {}
    ]
  },
  "errors": true,
  "ignored": true,
  "took": 42.0
}













Prepare a node to be shut down Added in 7.13.0

PUT /_nodes/{node_id}/shutdown

NOTE: This feature is designed for indirect use by Elastic Cloud, Elastic Cloud Enterprise, and Elastic Cloud on Kubernetes. Direct use is not supported.

If you specify a node that is offline, it will be prepared for shut down when it rejoins the cluster.

If the operator privileges feature is enabled, you must be an operator to use this API.

The API migrates ongoing tasks and index shards to other nodes as needed to prepare a node to be restarted or shut down and removed from the cluster. This ensures that Elasticsearch can be stopped safely with minimal disruption to the cluster.

You must specify the type of shutdown: restart, remove, or replace. If a node is already being prepared for shutdown, you can use this API to change the shutdown type.

IMPORTANT: This API does NOT terminate the Elasticsearch process. Monitor the node shutdown status to determine when it is safe to stop Elasticsearch.

Path parameters

  • node_id string Required

    The node identifier. This parameter is not validated against the cluster's active nodes. This enables you to register a node for shut down while it is offline. No error is thrown if you specify an invalid node ID.

Query parameters

  • The 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 nanos, micros, ms, s, m, h, or d.

  • timeout string

    The period to wait for a response. If no response is received before the timeout expires, the request fails and returns an error.

    Values are nanos, micros, ms, s, m, h, or d.

application/json

Body Required

  • type string Required

    Values are restart, remove, or replace.

  • reason string Required

    A human-readable reason that the node is being shut down. This field provides information for other cluster operators; it does not affect the shut down process.

  • Only valid if type is restart. Controls how long Elasticsearch will wait for the node to restart and join the cluster before reassigning its shards to other nodes. This works the same as delaying allocation with the index.unassigned.node_left.delayed_timeout setting. If you specify both a restart allocation delay and an index-level allocation delay, the longer of the two is used.

  • Only valid if type is replace. Specifies the name of the node that is replacing the node being shut down. Shards from the shut down node are only allowed to be allocated to the target node, and no other data will be allocated to the target node. During relocation of data certain allocation rules are ignored, such as disk watermarks or user attribute filtering rules.

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.

PUT /_nodes/{node_id}/shutdown
curl \
 --request PUT 'http://api.example.com/_nodes/{node_id}/shutdown' \
 --header "Authorization: $API_KEY" \
 --header "Content-Type: application/json" \
 --data '"{\n  \"type\": \"restart\",\n  \"reason\": \"Demonstrating how the node shutdown API works\",\n  \"allocation_delay\": \"20m\"\n}"'
Request example
Register a node for shutdown with `PUT /_nodes/USpTGYaBSIKbgSUJR2Z9lg/shutdown`. The `restart` type prepares the node to be restarted.
{
  "type": "restart",
  "reason": "Demonstrating how the node shutdown API works",
  "allocation_delay": "20m"
}
Response examples (200)
{
  "acknowledged": true
}


























































Get the rollup job capabilities Deprecated Technical preview

GET /_rollup/data/{id}

Get the capabilities of any rollup jobs that have been configured for a specific index or index pattern.

This API is useful because a rollup job is often configured to rollup only a subset of fields from the source index. Furthermore, only certain aggregations can be configured for various fields, leading to a limited subset of functionality depending on that configuration. This API enables you to inspect an index and determine:

  1. Does this index have associated rollup data somewhere in the cluster?
  2. If yes to the first question, what fields were rolled up, what aggregations can be performed, and where does the data live?

Path parameters

  • id string Required

    Index, indices or index-pattern to return rollup capabilities for. _all may be used to fetch rollup capabilities from all jobs.

Responses

  • 200 application/json
    Hide response attribute Show response attribute object
    • * object Additional properties
      Hide * attribute Show * attribute object
      • rollup_jobs array[object] Required

        There can be multiple, independent jobs configured for a single index or index pattern. Each of these jobs may have different configurations, so the API returns a list of all the various configurations available.

        Hide rollup_jobs attributes Show rollup_jobs attributes object
GET /_rollup/data/{id}
curl \
 --request GET 'http://api.example.com/_rollup/data/{id}' \
 --header "Authorization: $API_KEY"
Response examples (200)
A successful response from `GET _rollup/data/sensor-*` for a rollup job that targets the index pattern `sensor-*`. The response contains the rollup job ID, the index that holds the rolled data, and the index pattern that the job was targeting. It also shows a list of fields that contain data eligible for rollup searches. For example, you can use a `min`, `max`, or `sum` aggregation on the `temperature` field, but only a `date_histogram` on `timestamp`.
{
  "sensor-*" : {
    "rollup_jobs" : [
      {
        "job_id" : "sensor",
        "rollup_index" : "sensor_rollup",
        "index_pattern" : "sensor-*",
        "fields" : {
          "node" : [
            {
              "agg" : "terms"
            }
          ],
          "temperature" : [
            {
              "agg" : "min"
            },
            {
              "agg" : "max"
            },
            {
              "agg" : "sum"
            }
          ],
          "timestamp" : [
            {
              "agg" : "date_histogram",
              "time_zone" : "UTC",
              "fixed_interval" : "1h",
              "delay": "7d"
            }
          ],
          "voltage" : [
            {
              "agg" : "avg"
            }
          ]
        }
      }
    ]
  }
}






















































































































































































































Render a search template

GET /_render/template

Render a search template as a search request body.

application/json

Body

  • id string
  • file string
  • params object

    Key-value pairs used to replace Mustache variables in the template. The key is the variable name. The value is the variable value.

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

    An inline search template. It supports the same parameters as the search API's request body. These parameters also support Mustache variables. If no id or <templated-id> is specified, this parameter is required.

Responses

  • 200 application/json
    Hide response attribute Show response attribute object
    • template_output object Required
      Hide template_output attribute Show template_output attribute object
      • * object Additional properties
GET /_render/template
curl \
 --request GET 'http://api.example.com/_render/template' \
 --header "Authorization: $API_KEY" \
 --header "Content-Type: application/json" \
 --data '"{\n  \"id\": \"my-search-template\",\n  \"params\": {\n    \"query_string\": \"hello world\",\n    \"from\": 20,\n    \"size\": 10\n  }\n}"'
Request example
Run `POST _render/template`
{
  "id": "my-search-template",
  "params": {
    "query_string": "hello world",
    "from": 20,
    "size": 10
  }
}
Response examples (200)
{
  "template_output": {
    "additionalProperty1": {},
    "additionalProperty2": {}
  }
}
















































Get the search shards

POST /{index}/_search_shards

Get the indices and shards that a search request would be run against. This information can be useful for working out issues or planning optimizations with routing and shard preferences. When filtered aliases are used, the filter is returned as part of the indices section.

If the Elasticsearch security features are enabled, you must have the view_index_metadata or manage index privilege for the target data stream, index, or alias.

Path parameters

  • index string | array[string] Required

    A comma-separated list of data streams, indices, and aliases to search. It supports wildcards (*). To search all data streams and indices, omit this parameter or use * or _all.

Query parameters

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

    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. Valid values are: all, open, closed, hidden, none.

  • If false, the request returns an error if it targets a missing or closed index.

  • local boolean

    If true, the request retrieves information from the local node only.

  • The period to wait for a connection to the master node. If the master node is not available before the timeout expires, the request fails and returns an error. IT can also be set to -1 to indicate that the request should never timeout.

  • The node or shard the operation should be performed on. It is random by default.

  • routing string

    A custom value used to route operations to a specific shard.

Responses

POST /{index}/_search_shards
curl \
 --request POST 'http://api.example.com/{index}/_search_shards' \
 --header "Authorization: $API_KEY"
Response examples (200)
An abbreviated response from `GET /my-index-000001/_search_shards`.
{
  "nodes": {},
  "indices": {
      "my-index-000001": { }
  },
  "shards": [
      [
      {
          "index": "my-index-000001",
          "node": "JklnKbD7Tyqi9TP3_Q_tBg",
          "relocating_node": null,
          "primary": true,
          "shard": 0,
          "state": "STARTED",
          "allocation_id": {"id":"0TvkCyF7TAmM1wHP4a42-A"},
          "relocation_failure_info" : {
          "failed_attempts" : 0
          }
      }
      ],
      [
      {
          "index": "my-index-000001",
          "node": "JklnKbD7Tyqi9TP3_Q_tBg",
          "relocating_node": null,
          "primary": true,
          "shard": 1,
          "state": "STARTED",
          "allocation_id": {"id":"fMju3hd1QHWmWrIgFnI4Ww"},
          "relocation_failure_info" : {
          "failed_attempts" : 0
          }
      }
      ],
      [
      {
          "index": "my-index-000001",
          "node": "JklnKbD7Tyqi9TP3_Q_tBg",
          "relocating_node": null,
          "primary": true,
          "shard": 2,
          "state": "STARTED",
          "allocation_id": {"id":"Nwl0wbMBTHCWjEEbGYGapg"},
          "relocation_failure_info" : {
          "failed_attempts" : 0
          }
      }
      ],
      [
      {
          "index": "my-index-000001",
          "node": "JklnKbD7Tyqi9TP3_Q_tBg",
          "relocating_node": null,
          "primary": true,
          "shard": 3,
          "state": "STARTED",
          "allocation_id": {"id":"bU_KLGJISbW0RejwnwDPKw"},
          "relocation_failure_info" : {
          "failed_attempts" : 0
          }
      }
      ],
      [
      {
          "index": "my-index-000001",
          "node": "JklnKbD7Tyqi9TP3_Q_tBg",
          "relocating_node": null,
          "primary": true,
          "shard": 4,
          "state": "STARTED",
          "allocation_id": {"id":"DMs7_giNSwmdqVukF7UydA"},
          "relocation_failure_info" : {
          "failed_attempts" : 0
          }
      }
      ]
    ]
  }














































































Get searchable snapshot statistics Added in 7.10.0

GET /{index}/_searchable_snapshots/stats

Path parameters

  • index string | array[string] Required

    A comma-separated list of data streams and indices to retrieve statistics for.

Query parameters

  • level string

    Return stats aggregated at cluster, index or shard level

    Values are cluster, indices, or shards.

Responses

  • 200 application/json
    Hide response attributes Show response attributes object
GET /{index}/_searchable_snapshots/stats
curl \
 --request GET 'http://api.example.com/{index}/_searchable_snapshots/stats' \
 --header "Authorization: $API_KEY"
Response examples (200)
{
  "stats": {},
  "total": {}
}









Get roles

GET /_security/role

Get roles in the native realm. The role management APIs are generally the preferred way to manage roles, rather than using file-based role management. The get roles API cannot retrieve roles that are defined in roles files.

Responses

  • 200 application/json
    Hide response attribute Show response attribute object
    • * object Additional properties
      Hide * attributes Show * attributes object
      • cluster array[string] Required
      • indices array[object] Required
        Hide indices attributes Show indices attributes object
      • remote_indices array[object]
        Hide remote_indices attributes Show remote_indices attributes object
      • remote_cluster array[object]
        Hide remote_cluster attributes Show remote_cluster attributes object
        • clusters string | array[string] Required
        • privileges array[string] Required

          The cluster level privileges that owners of the role have on the remote cluster.

          Values are monitor_enrich or monitor_stats.

      • metadata object Required
        Hide metadata attribute Show metadata attribute object
        • * object Additional properties
      • run_as array[string]
      • Hide transient_metadata attribute Show transient_metadata attribute object
        • * object Additional properties
      • applications array[object] Required
        Hide applications attributes Show applications attributes object
        • application string Required

          The name of the application to which this entry applies.

        • privileges array[string] Required

          A list of strings, where each element is the name of an application privilege or action.

        • resources array[string] Required

          A list resources to which the privileges are applied.

      • role_templates array[object]
        Hide role_templates attributes Show role_templates attributes object
      • global object
        Hide global attribute Show global attribute object
        • * object Additional properties
          Hide * attribute Show * attribute object
          • * object Additional properties
            Hide * attribute Show * attribute object
            • * array[string] Additional properties
GET /_security/role
curl \
 --request GET 'http://api.example.com/_security/role' \
 --header "Authorization: $API_KEY"
Response examples (200)
A successful response from `GET /_security/role/my_admin_role`. The response contains information about the `my_admin_role` role in the native realm.
{
  "my_admin_role": {
    "description": "Grants full access to all management features within the cluster.",
    "cluster" : [ "all" ],
    "indices" : [
      {
        "names" : [ "index1", "index2" ],
        "privileges" : [ "all" ],
        "allow_restricted_indices" : false,
        "field_security" : {
          "grant" : [ "title", "body" ]}
      }
    ],
    "applications" : [ ],
    "run_as" : [ "other_user" ],
    "metadata" : {
      "version" : 1
    },
    "transient_metadata": {
      "enabled": true
    }
  }
}




















































































Delegate PKI authentication Added in 7.4.0

POST /_security/delegate_pki

This API implements the exchange of an X509Certificate chain for an Elasticsearch access token. The certificate chain is validated, according to RFC 5280, by sequentially considering the trust configuration of every installed PKI realm that has delegation.enabled set to true. A successfully trusted client certificate is also subject to the validation of the subject distinguished name according to thw username_pattern of the respective realm.

This API is called by smart and trusted proxies, such as Kibana, which terminate the user's TLS session but still want to authenticate the user by using a PKI realm—-​as if the user connected directly to Elasticsearch.

IMPORTANT: The association between the subject public key in the target certificate and the corresponding private key is not validated. This is part of the TLS authentication process and it is delegated to the proxy that calls this API. The proxy is trusted to have performed the TLS authentication and this API translates that authentication into an Elasticsearch access token.

External documentation
application/json

Body Required

  • x509_certificate_chain array[string] Required

    The X509Certificate chain, which is represented as an ordered string array. Each string in the array is a base64-encoded (Section 4 of RFC4648 - not base64url-encoded) of the certificate's DER encoding.

    The first element is the target certificate that contains the subject distinguished name that is requesting access. This may be followed by additional certificates; each subsequent certificate is used to certify the previous one.

Responses

POST /_security/delegate_pki
curl \
 --request POST 'http://api.example.com/_security/delegate_pki' \
 --header "Authorization: $API_KEY" \
 --header "Content-Type: application/json" \
 --data '"{\n\"x509_certificate_chain\": [\"MIIDeDCCAmCgAwIBAgIUBzj/nGGKxP2iXawsSquHmQjCJmMwDQYJKoZIhvcNAQELBQAwUzErMCkGA1UEAxMiRWxhc3RpY3NlYXJjaCBUZXN0IEludGVybWVkaWF0ZSBDQTEWMBQGA1UECxMNRWxhc3RpY3NlYXJjaDEMMAoGA1UEChMDb3JnMB4XDTIzMDcxODE5MjkwNloXDTQzMDcxMzE5MjkwNlowSjEiMCAGA1UEAxMZRWxhc3RpY3NlYXJjaCBUZXN0IENsaWVudDEWMBQGA1UECxMNRWxhc3RpY3NlYXJjaDEMMAoGA1UEChMDb3JnMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAllHL4pQkkfwAm/oLkxYYO+r950DEy1bjH+4viCHzNADLCTWO+lOZJVlNx7QEzJE3QGMdif9CCBBxQFMapA7oUFCLq84fPSQQu5AnvvbltVD9nwVtCs+9ZGDjMKsz98RhSLMFIkxdxi6HkQ3Lfa4ZSI4lvba4oo+T/GveazBDS+NgmKyq00EOXt3tWi1G9vEVItommzXWfv0agJWzVnLMldwkPqsw0W7zrpyT7FZS4iLbQADGceOW8fiauOGMkscu9zAnDR/SbWl/chYioQOdw6ndFLn1YIFPd37xL0WsdsldTpn0vH3YfzgLMffT/3P6YlwBegWzsx6FnM/93Ecb4wIDAQABo00wSzAJBgNVHRMEAjAAMB0GA1UdDgQWBBQKNRwjW+Ad/FN1Rpoqme/5+jrFWzAfBgNVHSMEGDAWgBRcya0c0x/PaI7MbmJVIylWgLqXNjANBgkqhkiG9w0BAQsFAAOCAQEACZ3PF7Uqu47lplXHP6YlzYL2jL0D28hpj5lGtdha4Muw1m/BjDb0Pu8l0NQ1z3AP6AVcvjNDkQq6Y5jeSz0bwQlealQpYfo7EMXjOidrft1GbqOMFmTBLpLA9SvwYGobSTXWTkJzonqVaTcf80HpMgM2uEhodwTcvz6v1WEfeT/HMjmdIsq4ImrOL9RNrcZG6nWfw0HR3JNOgrbfyEztEI471jHznZ336OEcyX7gQuvHE8tOv5+oD1d7s3Xg1yuFp+Ynh+FfOi3hPCuaHA+7F6fLmzMDLVUBAllugst1C3U+L/paD7tqIa4ka+KNPCbSfwazmJrt4XNiivPR4hwH5g==\"]\n}"'
Request example
Delegate a one element certificate chain.
{
"x509_certificate_chain": ["MIIDeDCCAmCgAwIBAgIUBzj/nGGKxP2iXawsSquHmQjCJmMwDQYJKoZIhvcNAQELBQAwUzErMCkGA1UEAxMiRWxhc3RpY3NlYXJjaCBUZXN0IEludGVybWVkaWF0ZSBDQTEWMBQGA1UECxMNRWxhc3RpY3NlYXJjaDEMMAoGA1UEChMDb3JnMB4XDTIzMDcxODE5MjkwNloXDTQzMDcxMzE5MjkwNlowSjEiMCAGA1UEAxMZRWxhc3RpY3NlYXJjaCBUZXN0IENsaWVudDEWMBQGA1UECxMNRWxhc3RpY3NlYXJjaDEMMAoGA1UEChMDb3JnMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAllHL4pQkkfwAm/oLkxYYO+r950DEy1bjH+4viCHzNADLCTWO+lOZJVlNx7QEzJE3QGMdif9CCBBxQFMapA7oUFCLq84fPSQQu5AnvvbltVD9nwVtCs+9ZGDjMKsz98RhSLMFIkxdxi6HkQ3Lfa4ZSI4lvba4oo+T/GveazBDS+NgmKyq00EOXt3tWi1G9vEVItommzXWfv0agJWzVnLMldwkPqsw0W7zrpyT7FZS4iLbQADGceOW8fiauOGMkscu9zAnDR/SbWl/chYioQOdw6ndFLn1YIFPd37xL0WsdsldTpn0vH3YfzgLMffT/3P6YlwBegWzsx6FnM/93Ecb4wIDAQABo00wSzAJBgNVHRMEAjAAMB0GA1UdDgQWBBQKNRwjW+Ad/FN1Rpoqme/5+jrFWzAfBgNVHSMEGDAWgBRcya0c0x/PaI7MbmJVIylWgLqXNjANBgkqhkiG9w0BAQsFAAOCAQEACZ3PF7Uqu47lplXHP6YlzYL2jL0D28hpj5lGtdha4Muw1m/BjDb0Pu8l0NQ1z3AP6AVcvjNDkQq6Y5jeSz0bwQlealQpYfo7EMXjOidrft1GbqOMFmTBLpLA9SvwYGobSTXWTkJzonqVaTcf80HpMgM2uEhodwTcvz6v1WEfeT/HMjmdIsq4ImrOL9RNrcZG6nWfw0HR3JNOgrbfyEztEI471jHznZ336OEcyX7gQuvHE8tOv5+oD1d7s3Xg1yuFp+Ynh+FfOi3hPCuaHA+7F6fLmzMDLVUBAllugst1C3U+L/paD7tqIa4ka+KNPCbSfwazmJrt4XNiivPR4hwH5g=="]
}
Response examples (200)
A successful response from delegating a one element certificate chain.
{
  "access_token": "dGhpcyBpcyBub3QgYSByZWFsIHRva2VuIGJ1dCBpdCBpcyBvbmx5IHRlc3QgZGF0YS4gZG8gbm90IHRyeSB0byByZWFkIHRva2VuIQ==",
  "type": "Bearer",
  "expires_in": 1200,
  "authentication": {
    "username": "Elasticsearch Test Client",
    "roles": [],
    "full_name": null,
    "email": null,
    "metadata": {
      "pki_dn": "O=org, OU=Elasticsearch, CN=Elasticsearch Test Client",
      "pki_delegated_by_user": "test_admin",
      "pki_delegated_by_realm": "file"
    },
    "enabled": true,
    "authentication_realm": {
      "name": "pki1",
      "type": "pki"
    },
    "lookup_realm": {
      "name": "pki1",
      "type": "pki"
    },
    "authentication_type": "realm"
  }
}