diff --git a/output/schema/schema-serverless.json b/output/schema/schema-serverless.json index 8c3ad80575..7116a98b77 100644 --- a/output/schema/schema-serverless.json +++ b/output/schema/schema-serverless.json @@ -174,7 +174,7 @@ "stability": "stable" } }, - "description": "Bulk index or delete documents.\nPerforms multiple indexing or delete operations in a single API call.\nThis reduces overhead and can greatly increase indexing speed.", + "description": "Bulk index or delete documents.\nPerform multiple `index`, `create`, `delete`, and `update` actions in a single request.\nThis reduces overhead and can greatly increase indexing speed.\n\nIf the Elasticsearch security features are enabled, you must have the following index privileges for the target data stream, index, or index alias:\n\n* To use the `create` action, you must have the `create_doc`, `create`, `index`, or `write` index privilege. Data streams support only the `create` action.\n* To use the `index` action, you must have the `create`, `index`, or `write` index privilege.\n* To use the `delete` action, you must have the `delete` or `write` index privilege.\n* To use the `update` action, you must have the `index` or `write` index privilege.\n* To automatically create a data stream or index with a bulk API request, you must have the `auto_configure`, `create_index`, or `manage` index privilege.\n* To make the result of a bulk operation visible to search using the `refresh` parameter, you must have the `maintenance` or `manage` index privilege.\n\nAutomatic data stream creation requires a matching index template with data stream enabled.\n\nThe actions are specified in the request body using a newline delimited JSON (NDJSON) structure:\n\n```\naction_and_meta_data\\n\noptional_source\\n\naction_and_meta_data\\n\noptional_source\\n\n....\naction_and_meta_data\\n\noptional_source\\n\n```\n\nThe `index` and `create` actions expect a source on the next line and have the same semantics as the `op_type` parameter in the standard index API.\nA `create` action fails if a document with the same ID already exists in the target\nAn `index` action adds or replaces a document as necessary.\n\nNOTE: Data streams support only the `create` action.\nTo update or delete a document in a data stream, you must target the backing index containing the document.\n\nAn `update` action expects that the partial doc, upsert, and script and its options are specified on the next line.\n\nA `delete` action does not expect a source on the next line and has the same semantics as the standard delete API.\n\nNOTE: The final line of data must end with a newline character (`\\n`).\nEach newline character may be preceded by a carriage return (`\\r`).\nWhen sending NDJSON data to the `_bulk` endpoint, use a `Content-Type` header of `application/json` or `application/x-ndjson`.\nBecause this format uses literal newline characters (`\\n`) as delimiters, make sure that the JSON actions and sources are not pretty printed.\n\nIf you provide a target in the request path, it is used for any actions that don't explicitly specify an `_index` argument.\n\nA note on the format: the idea here is to make processing as fast as possible.\nAs some of the actions are redirected to other shards on other nodes, only `action_meta_data` is parsed on the receiving node side.\n\nClient libraries using this protocol should try and strive to do something similar on the client side, and reduce buffering as much as possible.\n\nThere is no \"correct\" number of actions to perform in a single bulk request.\nExperiment with different settings to find the optimal size for your particular workload.\nNote that Elasticsearch limits the maximum size of a HTTP request to 100mb by default so clients must ensure that no request exceeds this size.\nIt is not possible to index a single document that exceeds the size limit, so you must pre-process any such documents into smaller pieces before sending them to Elasticsearch.\nFor instance, split documents into pages or chapters before indexing them, or store raw binary data in a system outside Elasticsearch and replace the raw data with a link to the external system in the documents that you send to Elasticsearch.\n\n**Client suppport for bulk requests**\n\nSome of the officially supported clients provide helpers to assist with bulk requests and reindexing:\n\n* Go: Check out `esutil.BulkIndexer`\n* Perl: Check out `Search::Elasticsearch::Client::5_0::Bulk` and `Search::Elasticsearch::Client::5_0::Scroll`\n* Python: Check out `elasticsearch.helpers.*`\n* JavaScript: Check out `client.helpers.*`\n* .NET: Check out `BulkAllObservable`\n* PHP: Check out bulk indexing.\n\n**Submitting bulk requests with cURL**\n\nIf you're providing text file input to `curl`, you must use the `--data-binary` flag instead of plain `-d`.\nThe latter doesn't preserve newlines. For example:\n\n```\n$ cat requests\n{ \"index\" : { \"_index\" : \"test\", \"_id\" : \"1\" } }\n{ \"field1\" : \"value1\" }\n$ curl -s -H \"Content-Type: application/x-ndjson\" -XPOST localhost:9200/_bulk --data-binary \"@requests\"; echo\n{\"took\":7, \"errors\": false, \"items\":[{\"index\":{\"_index\":\"test\",\"_id\":\"1\",\"_version\":1,\"result\":\"created\",\"forced_refresh\":false}}]}\n```\n\n**Optimistic concurrency control**\n\nEach `index` and `delete` action within a bulk API call may include the `if_seq_no` and `if_primary_term` parameters in their respective action and meta data lines.\nThe `if_seq_no` and `if_primary_term` parameters control how operations are run, based on the last modification to existing documents. See Optimistic concurrency control for more details.\n\n**Versioning**\n\nEach bulk item can include the version value using the `version` field.\nIt automatically follows the behavior of the index or delete operation based on the `_version` mapping.\nIt also support the `version_type`.\n\n**Routing**\n\nEach bulk item can include the routing value using the `routing` field.\nIt automatically follows the behavior of the index or delete operation based on the `_routing` mapping.\n\nNOTE: Data streams do not support custom routing unless they were created with the `allow_custom_routing` setting enabled in the template.\n\n**Wait for active shards**\n\nWhen making bulk calls, you can set the `wait_for_active_shards` parameter to require a minimum number of shard copies to be active before starting to process the bulk request.\n\n**Refresh**\n\nControl when the changes made by this request are visible to search.\n\nNOTE: Only the shards that receive the bulk request will be affected by refresh.\nImagine a `_bulk?refresh=wait_for` request with three documents in it that happen to be routed to different shards in an index with five shards.\nThe request will only wait for those three shards to refresh.\nThe other two shards that make up the index do not participate in the `_bulk` request at all.", "docId": "docs-bulk", "docTag": "document", "docUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/docs-bulk.html", @@ -221,7 +221,7 @@ "stability": "stable" } }, - "description": "Get aliases.\nRetrieves the cluster’s index aliases, including filter and routing information.\nThe API does not return data stream aliases.\n\nCAT APIs are only intended for human consumption using the command line or the Kibana console. They are not intended for use by applications. For application consumption, use the aliases API.", + "description": "Get aliases.\n\nGet the cluster's index aliases, including filter and routing information.\nThis API does not return data stream aliases.\n\nIMPORTANT: CAT APIs are only intended for human consumption using the command line or the Kibana console. They are not intended for use by applications. For application consumption, use the aliases API.", "docId": "cat-alias", "docUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/cat-alias.html", "name": "cat.aliases", @@ -269,8 +269,9 @@ "stability": "stable" } }, - "description": "Get component templates.\nReturns information about component templates in a cluster.\nComponent templates are building blocks for constructing index templates that specify index mappings, settings, and aliases.\n\nCAT APIs are only intended for human consumption using the command line or Kibana console.\nThey are not intended for use by applications. For application consumption, use the get component template API.", - "docUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/master/cat-component-templates.html", + "description": "Get component templates.\n\nGet information about component templates in a cluster.\nComponent templates are building blocks for constructing index templates that specify index mappings, settings, and aliases.\n\nIMPORTANT: CAT APIs are only intended for human consumption using the command line or Kibana console.\nThey are not intended for use by applications. For application consumption, use the get component template API.", + "docId": "cat-component-templates", + "docUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/cat-component-templates.html", "name": "cat.component_templates", "privileges": { "cluster": [ @@ -315,7 +316,7 @@ "stability": "stable" } }, - "description": "Get a document count.\nProvides quick access to a document count for a data stream, an index, or an entire cluster.\nThe document count only includes live documents, not deleted documents which have not yet been removed by the merge process.\n\nCAT APIs are only intended for human consumption using the command line or Kibana console.\nThey are not intended for use by applications. For application consumption, use the count API.", + "description": "Get a document count.\n\nGet quick access to a document count for a data stream, an index, or an entire cluster.\nThe document count only includes live documents, not deleted documents which have not yet been removed by the merge process.\n\nIMPORTANT: CAT APIs are only intended for human consumption using the command line or Kibana console.\nThey are not intended for use by applications. For application consumption, use the count API.", "docId": "cat-count", "docUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/cat-count.html", "name": "cat.count", @@ -362,7 +363,7 @@ "stability": "stable" } }, - "description": "Get CAT help.\nReturns help for the CAT APIs.", + "description": "Get CAT help.\n\nGet help for the CAT APIs.", "docId": "cat", "docUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/cat.html", "name": "cat.help", @@ -397,7 +398,7 @@ "stability": "stable" } }, - "description": "Get index information.\nReturns high-level information about indices in a cluster, including backing indices for data streams.\n\nUse this request to get the following information for each index in a cluster:\n- shard count\n- document count\n- deleted document count\n- primary store size\n- total store size of all shards, including shard replicas\n\nThese metrics are retrieved directly from Lucene, which Elasticsearch uses internally to power indexing and search. As a result, all document counts include hidden nested documents.\nTo get an accurate count of Elasticsearch documents, use the cat count or count APIs.\n\nCAT APIs are only intended for human consumption using the command line or Kibana console.\nThey are not intended for use by applications. For application consumption, use an index endpoint.", + "description": "Get index information.\n\nGet high-level information about indices in a cluster, including backing indices for data streams.\n\nUse this request to get the following information for each index in a cluster:\n- shard count\n- document count\n- deleted document count\n- primary store size\n- total store size of all shards, including shard replicas\n\nThese metrics are retrieved directly from Lucene, which Elasticsearch uses internally to power indexing and search. As a result, all document counts include hidden nested documents.\nTo get an accurate count of Elasticsearch documents, use the cat count or count APIs.\n\nCAT APIs are only intended for human consumption using the command line or Kibana console.\nThey are not intended for use by applications. For application consumption, use an index endpoint.", "docId": "cat-indices", "docUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/cat-indices.html", "name": "cat.indices", @@ -448,7 +449,7 @@ "stability": "stable" } }, - "description": "Get data frame analytics jobs.\nReturns configuration and usage information about data frame analytics jobs.\n\nCAT APIs are only intended for human consumption using the Kibana\nconsole or command line. They are not intended for use by applications. For\napplication consumption, use the get data frame analytics jobs statistics API.", + "description": "Get data frame analytics jobs.\n\nGet configuration and usage information about data frame analytics jobs.\n\nIMPORTANT: CAT APIs are only intended for human consumption using the Kibana\nconsole or command line. They are not intended for use by applications. For\napplication consumption, use the get data frame analytics jobs statistics API.", "docId": "cat-dfanalytics", "docUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/cat-dfanalytics.html", "name": "cat.ml_data_frame_analytics", @@ -496,7 +497,7 @@ "stability": "stable" } }, - "description": "Get datafeeds.\nReturns configuration and usage information about datafeeds.\nThis API returns a maximum of 10,000 datafeeds.\nIf the Elasticsearch security features are enabled, you must have `monitor_ml`, `monitor`, `manage_ml`, or `manage`\ncluster privileges to use this API.\n\nCAT APIs are only intended for human consumption using the Kibana\nconsole or command line. They are not intended for use by applications. For\napplication consumption, use the get datafeed statistics API.", + "description": "Get datafeeds.\n\nGet configuration and usage information about datafeeds.\nThis API returns a maximum of 10,000 datafeeds.\nIf the Elasticsearch security features are enabled, you must have `monitor_ml`, `monitor`, `manage_ml`, or `manage`\ncluster privileges to use this API.\n\nIMPORTANT: CAT APIs are only intended for human consumption using the Kibana\nconsole or command line. They are not intended for use by applications. For\napplication consumption, use the get datafeed statistics API.", "docId": "cat-datafeeds", "docUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/cat-datafeeds.html", "name": "cat.ml_datafeeds", @@ -544,7 +545,7 @@ "stability": "stable" } }, - "description": "Get anomaly detection jobs.\nReturns configuration and usage information for anomaly detection jobs.\nThis API returns a maximum of 10,000 jobs.\nIf the Elasticsearch security features are enabled, you must have `monitor_ml`,\n`monitor`, `manage_ml`, or `manage` cluster privileges to use this API.\n\nCAT APIs are only intended for human consumption using the Kibana\nconsole or command line. They are not intended for use by applications. For\napplication consumption, use the get anomaly detection job statistics API.", + "description": "Get anomaly detection jobs.\n\nGet configuration and usage information for anomaly detection jobs.\nThis API returns a maximum of 10,000 jobs.\nIf the Elasticsearch security features are enabled, you must have `monitor_ml`,\n`monitor`, `manage_ml`, or `manage` cluster privileges to use this API.\n\nIMPORTANT: CAT APIs are only intended for human consumption using the Kibana\nconsole or command line. They are not intended for use by applications. For\napplication consumption, use the get anomaly detection job statistics API.", "docId": "cat-anomaly-detectors", "docUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/cat-anomaly-detectors.html", "name": "cat.ml_jobs", @@ -592,7 +593,7 @@ "stability": "stable" } }, - "description": "Get trained models.\nReturns configuration and usage information about inference trained models.\n\nCAT APIs are only intended for human consumption using the Kibana\nconsole or command line. They are not intended for use by applications. For\napplication consumption, use the get trained models statistics API.", + "description": "Get trained models.\n\nGet configuration and usage information about inference trained models.\n\nIMPORTANT: CAT APIs are only intended for human consumption using the Kibana\nconsole or command line. They are not intended for use by applications. For\napplication consumption, use the get trained models statistics API.", "docId": "cat-trained-model", "docUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/cat-trained-model.html", "name": "cat.ml_trained_models", @@ -640,7 +641,7 @@ "stability": "stable" } }, - "description": "Get transforms.\nReturns configuration and usage information about transforms.\n\nCAT APIs are only intended for human consumption using the Kibana\nconsole or command line. They are not intended for use by applications. For\napplication consumption, use the get transform statistics API.", + "description": "Get transform information.\n\nGet configuration and usage information about transforms.\n\nCAT APIs are only intended for human consumption using the Kibana\nconsole or command line. They are not intended for use by applications. For\napplication consumption, use the get transform statistics API.", "docId": "cat-transforms", "docUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/cat-transforms.html", "name": "cat.transforms", @@ -687,10 +688,12 @@ "stability": "stable" } }, - "description": "Clear a scrolling search.\n\nClear the search context and results for a scrolling search.", + "description": "Clear a scrolling search.\nClear the search context and results for a scrolling search.", "docId": "clear-scroll-api", "docTag": "search", "docUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/clear-scroll-api.html", + "extDocId": "scroll-search-results", + "extDocUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/paginate-search-results.html#scroll-search-results", "name": "clear_scroll", "request": { "name": "Request", @@ -738,7 +741,7 @@ "stability": "stable" } }, - "description": "Close a point in time.\n\nA point in time must be opened explicitly before being used in search requests.\nThe `keep_alive` parameter tells Elasticsearch how long it should persist.\nA point in time is automatically closed when the `keep_alive` period has elapsed.\nHowever, keeping points in time has a cost; close them as soon as they are no longer required for search requests.", + "description": "Close a point in time.\nA point in time must be opened explicitly before being used in search requests.\nThe `keep_alive` parameter tells Elasticsearch how long it should persist.\nA point in time is automatically closed when the `keep_alive` period has elapsed.\nHowever, keeping points in time has a cost; close them as soon as they are no longer required for search requests.", "docId": "point-in-time-api", "docTag": "search", "docUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/point-in-time-api.html", @@ -1904,10 +1907,16 @@ "stability": "stable" } }, - "description": "Count search results.\nGet the number of documents matching a query.", + "description": "Count search results.\nGet the number of documents matching a query.\n\nThe query can either be provided using a simple query string as a parameter or using the Query DSL defined within the request body.\nThe latter must be nested in a `query` key, which is the same as the search API.\n\nThe count API supports multi-target syntax. You can run a single count API search across multiple data streams and indices.\n\nThe operation is broadcast across all shards.\nFor each shard ID group, a replica is chosen and the search is run against it.\nThis means that replicas increase the scalability of the count.", + "docId": "search-count", "docTag": "search", - "docUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/master/search-count.html", + "docUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/search-count.html", "name": "count", + "privileges": { + "index": [ + "read" + ] + }, "request": { "name": "Request", "namespace": "_global.count" @@ -1951,10 +1960,18 @@ "stability": "stable" } }, - "description": "Index a document.\nAdds a JSON document to the specified data stream or index and makes it searchable.\nIf the target is an index and the document already exists, the request updates the document and increments its version.", + "description": "Create a new document in the index.\n\nYou can index a new JSON document with the `//_doc/` or `//_create/<_id>` APIs\nUsing `_create` guarantees that the document is indexed only if it does not already exist.\nIt returns a 409 response when a document with a same ID already exists in the index.\nTo update an existing document, you must use the `//_doc/` API.\n\nIf the Elasticsearch security features are enabled, you must have the following index privileges for the target data stream, index, or index alias:\n\n* To add a document using the `PUT //_create/<_id>` or `POST //_create/<_id>` request formats, you must have the `create_doc`, `create`, `index`, or `write` index privilege.\n* To automatically create a data stream or index with this API request, you must have the `auto_configure`, `create_index`, or `manage` index privilege.\n\nAutomatic data stream creation requires a matching index template with data stream enabled.\n\n**Automatically create data streams and indices**\n\nIf the request's target doesn't exist and matches an index template with a `data_stream` definition, the index operation automatically creates the data stream.\n\nIf the target doesn't exist and doesn't match a data stream template, the operation automatically creates the index and applies any matching index templates.\n\nNOTE: Elasticsearch includes several built-in index templates. To avoid naming collisions with these templates, refer to index pattern documentation.\n\nIf no mapping exists, the index operation creates a dynamic mapping.\nBy default, new fields and objects are automatically added to the mapping if needed.\n\nAutomatic index creation is controlled by the `action.auto_create_index` setting.\nIf it is `true`, any index can be created automatically.\nYou can modify this setting to explicitly allow or block automatic creation of indices that match specified patterns or set it to `false` to turn off automatic index creation entirely.\nSpecify a comma-separated list of patterns you want to allow or prefix each pattern with `+` or `-` to indicate whether it should be allowed or blocked.\nWhen a list is specified, the default behaviour is to disallow.\n\nNOTE: The `action.auto_create_index` setting affects the automatic creation of indices only.\nIt does not affect the creation of data streams.\n\n**Routing**\n\nBy default, shard placement — or routing — is controlled by using a hash of the document's ID value.\nFor more explicit control, the value fed into the hash function used by the router can be directly specified on a per-operation basis using the `routing` parameter.\n\nWhen setting up explicit mapping, you can also use the `_routing` field to direct the index operation to extract the routing value from the document itself.\nThis does come at the (very minimal) cost of an additional document parsing pass.\nIf the `_routing` mapping is defined and set to be required, the index operation will fail if no routing value is provided or extracted.\n\nNOTE: Data streams do not support custom routing unless they were created with the `allow_custom_routing` setting enabled in the template.\n\n**Distributed**\n\nThe index operation is directed to the primary shard based on its route and performed on the actual node containing this shard.\nAfter the primary shard completes the operation, if needed, the update is distributed to applicable replicas.\n\n**Active shards**\n\nTo improve the resiliency of writes to the system, indexing operations can be configured to wait for a certain number of active shard copies before proceeding with the operation.\nIf the requisite number of active shard copies are not available, then the write operation must wait and retry, until either the requisite shard copies have started or a timeout occurs.\nBy default, write operations only wait for the primary shards to be active before proceeding (that is to say `wait_for_active_shards` is `1`).\nThis default can be overridden in the index settings dynamically by setting `index.write.wait_for_active_shards`.\nTo alter this behavior per operation, use the `wait_for_active_shards request` parameter.\n\nValid values are all or any positive integer up to the total number of configured copies per shard in the index (which is `number_of_replicas`+1).\nSpecifying a negative value or a number greater than the number of shard copies will throw an error.\n\nFor example, suppose you have a cluster of three nodes, A, B, and C and you create an index index with the number of replicas set to 3 (resulting in 4 shard copies, one more copy than there are nodes).\nIf you attempt an indexing operation, by default the operation will only ensure the primary copy of each shard is available before proceeding.\nThis means that even if B and C went down and A hosted the primary shard copies, the indexing operation would still proceed with only one copy of the data.\nIf `wait_for_active_shards` is set on the request to `3` (and all three nodes are up), the indexing operation will require 3 active shard copies before proceeding.\nThis requirement should be met because there are 3 active nodes in the cluster, each one holding a copy of the shard.\nHowever, if you set `wait_for_active_shards` to `all` (or to `4`, which is the same in this situation), the indexing operation will not proceed as you do not have all 4 copies of each shard active in the index.\nThe operation will timeout unless a new node is brought up in the cluster to host the fourth copy of the shard.\n\nIt is important to note that this setting greatly reduces the chances of the write operation not writing to the requisite number of shard copies, but it does not completely eliminate the possibility, because this check occurs before the write operation starts.\nAfter the write operation is underway, it is still possible for replication to fail on any number of shard copies but still succeed on the primary.\nThe `_shards` section of the API response reveals the number of shard copies on which replication succeeded and failed.", + "docId": "docs-index", "docTag": "document", - "docUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/master/docs-index_.html", + "docUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/docs-index_.html", + "extDocId": "data-streams", + "extDocUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/data-streams.html", "name": "create", + "privileges": { + "index": [ + "create" + ] + }, "request": { "name": "Request", "namespace": "_global.create" @@ -1990,10 +2007,16 @@ "stability": "stable" } }, - "description": "Delete a document.\nRemoves a JSON document from the specified index.", + "description": "Delete a document.\n\nRemove a JSON document from the specified index.\n\nNOTE: You cannot send deletion requests directly to a data stream.\nTo delete a document in a data stream, you must target the backing index containing the document.\n\n**Optimistic concurrency control**\n\nDelete operations can be made conditional and only be performed if the last modification to the document was assigned the sequence number and primary term specified by the `if_seq_no` and `if_primary_term` parameters.\nIf a mismatch is detected, the operation will result in a `VersionConflictException` and a status code of `409`.\n\n**Versioning**\n\nEach document indexed is versioned.\nWhen deleting a document, the version can be specified to make sure the relevant document you are trying to delete is actually being deleted and it has not changed in the meantime.\nEvery write operation run on a document, deletes included, causes its version to be incremented.\nThe version number of a deleted document remains available for a short time after deletion to allow for control of concurrent operations.\nThe length of time for which a deleted document's version remains available is determined by the `index.gc_deletes` index setting.\n\n**Routing**\n\nIf routing is used during indexing, the routing value also needs to be specified to delete a document.\n\nIf the `_routing` mapping is set to `required` and no routing value is specified, the delete API throws a `RoutingMissingException` and rejects the request.\n\nFor example:\n\n```\nDELETE /my-index-000001/_doc/1?routing=shard-1\n```\n\nThis request deletes the document with ID 1, but it is routed based on the user.\nThe document is not deleted if the correct routing is not specified.\n\n**Distributed**\n\nThe delete operation gets hashed into a specific shard ID.\nIt then gets redirected into the primary shard within that ID group and replicated (if needed) to shard replicas within that ID group.", + "docId": "docs-delete", "docTag": "document", - "docUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/master/docs-delete.html", + "docUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/docs-delete.html", "name": "delete", + "privileges": { + "index": [ + "delete" + ] + }, "request": { "name": "Request", "namespace": "_global.delete" @@ -2470,9 +2493,10 @@ "stability": "stable" } }, - "description": "Check a document.\nChecks if a specified document exists.", + "description": "Check a document.\n\nVerify that a document exists.\nFor example, check to see if a document with the `_id` 0 exists:\n\n```\nHEAD my-index-000001/_doc/0\n```\n\nIf the document exists, the API returns a status code of `200 - OK`.\nIf the document doesn’t exist, the API returns `404 - Not Found`.\n\n**Versioning support**\n\nYou can use the `version` parameter to check the document only if its current version is equal to the specified one.\n\nInternally, Elasticsearch has marked the old document as deleted and added an entirely new document.\nThe old version of the document doesn't disappear immediately, although you won't be able to access it.\nElasticsearch cleans up deleted documents in the background as you continue to index more data.", + "docId": "docs-get", "docTag": "document", - "docUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/master/docs-get.html", + "docUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/docs-get.html", "name": "exists", "request": { "name": "Request", @@ -2506,10 +2530,18 @@ "stability": "stable" } }, - "description": "Check for a document source.\nChecks if a document's `_source` is stored.", + "description": "Check for a document source.\n\nCheck whether a document source exists in an index.\nFor example:\n\n```\nHEAD my-index-000001/_source/1\n```\n\nA document's source is not available if it is disabled in the mapping.", + "docId": "docs-get", "docTag": "document", - "docUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/master/docs-get.html", + "docUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/docs-get.html", + "extDocId": "mapping-source-field", + "extDocUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/mapping-source-field.html", "name": "exists_source", + "privileges": { + "index": [ + "read" + ] + }, "request": { "name": "Request", "namespace": "_global.exists_source" @@ -2633,10 +2665,16 @@ "stability": "stable" } }, - "description": "Get a document by its ID.\nRetrieves the document with the specified ID from an index.", + "description": "Get a document by its ID.\n\nGet a document and its source or stored fields from an index.\n\nBy default, this API is realtime and is not affected by the refresh rate of the index (when data will become visible for search).\nIn the case where stored fields are requested with the `stored_fields` parameter and the document has been updated but is not yet refreshed, the API will have to parse and analyze the source to extract the stored fields.\nTo turn off realtime behavior, set the `realtime` parameter to false.\n\n**Source filtering**\n\nBy default, the API returns the contents of the `_source` field unless you have used the `stored_fields` parameter or the `_source` field is turned off.\nYou can turn off `_source` retrieval by using the `_source` parameter:\n\n```\nGET my-index-000001/_doc/0?_source=false\n```\n\nIf you only need one or two fields from the `_source`, use the `_source_includes` or `_source_excludes` parameters to include or filter out particular fields.\nThis can be helpful with large documents where partial retrieval can save on network overhead\nBoth parameters take a comma separated list of fields or wildcard expressions.\nFor example:\n\n```\nGET my-index-000001/_doc/0?_source_includes=*.id&_source_excludes=entities\n```\n\nIf you only want to specify includes, you can use a shorter notation:\n\n```\nGET my-index-000001/_doc/0?_source=*.id\n```\n\n**Routing**\n\nIf routing is used during indexing, the routing value also needs to be specified to retrieve a document.\nFor example:\n\n```\nGET my-index-000001/_doc/2?routing=user1\n```\n\nThis request gets the document with ID 2, but it is routed based on the user.\nThe document is not fetched if the correct routing is not specified.\n\n**Distributed**\n\nThe GET operation is hashed into a specific shard ID.\nIt is then redirected to one of the replicas within that shard ID and returns the result.\nThe replicas are the primary shard and its replicas within that shard ID group.\nThis means that the more replicas you have, the better your GET scaling will be.\n\n**Versioning support**\n\nYou can use the `version` parameter to retrieve the document only if its current version is equal to the specified one.\n\nInternally, Elasticsearch has marked the old document as deleted and added an entirely new document.\nThe old version of the document doesn't disappear immediately, although you won't be able to access it.\nElasticsearch cleans up deleted documents in the background as you continue to index more data.", + "docId": "docs-get", "docTag": "document", - "docUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/master/docs-get.html", + "docUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/docs-get.html", "name": "get", + "privileges": { + "index": [ + "read" + ] + }, "request": { "name": "Request", "namespace": "_global.get" @@ -2703,10 +2741,18 @@ "stability": "stable" } }, - "description": "Get a document's source.\nReturns the source of a document.", + "description": "Get a document's source.\n\nGet the source of a document.\nFor example:\n\n```\nGET my-index-000001/_source/1\n```\n\nYou can use the source filtering parameters to control which parts of the `_source` are returned:\n\n```\nGET my-index-000001/_source/1/?_source_includes=*.id&_source_excludes=entities\n```", + "docId": "docs-get", "docTag": "document", - "docUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/master/docs-get.html", + "docUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/docs-get.html", + "extDocId": "mapping-source-field", + "extDocUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/mapping-source-field.html", "name": "get_source", + "privileges": { + "index": [ + "read" + ] + }, "request": { "name": "Request", "namespace": "_global.get_source" @@ -2779,10 +2825,18 @@ "stability": "stable" } }, - "description": "Index a document.\nAdds a JSON document to the specified data stream or index and makes it searchable.\nIf the target is an index and the document already exists, the request updates the document and increments its version.", + "description": "Create or update a document in an index.\n\nAdd a JSON document to the specified data stream or index and make it searchable.\nIf the target is an index and the document already exists, the request updates the document and increments its version.\n\nNOTE: You cannot use this API to send update requests for existing documents in a data stream.\n\nIf the Elasticsearch security features are enabled, you must have the following index privileges for the target data stream, index, or index alias:\n\n* To add or overwrite a document using the `PUT //_doc/<_id>` request format, you must have the `create`, `index`, or `write` index privilege.\n* To add a document using the `POST //_doc/` request format, you must have the `create_doc`, `create`, `index`, or `write` index privilege.\n* To automatically create a data stream or index with this API request, you must have the `auto_configure`, `create_index`, or `manage` index privilege.\n\nAutomatic data stream creation requires a matching index template with data stream enabled.\n\nNOTE: Replica shards might not all be started when an indexing operation returns successfully.\nBy default, only the primary is required. Set `wait_for_active_shards` to change this default behavior.\n\n**Automatically create data streams and indices**\n\nIf the request's target doesn't exist and matches an index template with a `data_stream` definition, the index operation automatically creates the data stream.\n\nIf the target doesn't exist and doesn't match a data stream template, the operation automatically creates the index and applies any matching index templates.\n\nNOTE: Elasticsearch includes several built-in index templates. To avoid naming collisions with these templates, refer to index pattern documentation.\n\nIf no mapping exists, the index operation creates a dynamic mapping.\nBy default, new fields and objects are automatically added to the mapping if needed.\n\nAutomatic index creation is controlled by the `action.auto_create_index` setting.\nIf it is `true`, any index can be created automatically.\nYou can modify this setting to explicitly allow or block automatic creation of indices that match specified patterns or set it to `false` to turn off automatic index creation entirely.\nSpecify a comma-separated list of patterns you want to allow or prefix each pattern with `+` or `-` to indicate whether it should be allowed or blocked.\nWhen a list is specified, the default behaviour is to disallow.\n\nNOTE: The `action.auto_create_index` setting affects the automatic creation of indices only.\nIt does not affect the creation of data streams.\n\n**Optimistic concurrency control**\n\nIndex operations can be made conditional and only be performed if the last modification to the document was assigned the sequence number and primary term specified by the `if_seq_no` and `if_primary_term` parameters.\nIf a mismatch is detected, the operation will result in a `VersionConflictException` and a status code of `409`.\n\n**Routing**\n\nBy default, shard placement — or routing — is controlled by using a hash of the document's ID value.\nFor more explicit control, the value fed into the hash function used by the router can be directly specified on a per-operation basis using the `routing` parameter.\n\nWhen setting up explicit mapping, you can also use the `_routing` field to direct the index operation to extract the routing value from the document itself.\nThis does come at the (very minimal) cost of an additional document parsing pass.\nIf the `_routing` mapping is defined and set to be required, the index operation will fail if no routing value is provided or extracted.\n\nNOTE: Data streams do not support custom routing unless they were created with the `allow_custom_routing` setting enabled in the template.\n\n**Distributed**\n\nThe index operation is directed to the primary shard based on its route and performed on the actual node containing this shard.\nAfter the primary shard completes the operation, if needed, the update is distributed to applicable replicas.\n\n**Active shards**\n\nTo improve the resiliency of writes to the system, indexing operations can be configured to wait for a certain number of active shard copies before proceeding with the operation.\nIf the requisite number of active shard copies are not available, then the write operation must wait and retry, until either the requisite shard copies have started or a timeout occurs.\nBy default, write operations only wait for the primary shards to be active before proceeding (that is to say `wait_for_active_shards` is `1`).\nThis default can be overridden in the index settings dynamically by setting `index.write.wait_for_active_shards`.\nTo alter this behavior per operation, use the `wait_for_active_shards request` parameter.\n\nValid values are all or any positive integer up to the total number of configured copies per shard in the index (which is `number_of_replicas`+1).\nSpecifying a negative value or a number greater than the number of shard copies will throw an error.\n\nFor example, suppose you have a cluster of three nodes, A, B, and C and you create an index index with the number of replicas set to 3 (resulting in 4 shard copies, one more copy than there are nodes).\nIf you attempt an indexing operation, by default the operation will only ensure the primary copy of each shard is available before proceeding.\nThis means that even if B and C went down and A hosted the primary shard copies, the indexing operation would still proceed with only one copy of the data.\nIf `wait_for_active_shards` is set on the request to `3` (and all three nodes are up), the indexing operation will require 3 active shard copies before proceeding.\nThis requirement should be met because there are 3 active nodes in the cluster, each one holding a copy of the shard.\nHowever, if you set `wait_for_active_shards` to `all` (or to `4`, which is the same in this situation), the indexing operation will not proceed as you do not have all 4 copies of each shard active in the index.\nThe operation will timeout unless a new node is brought up in the cluster to host the fourth copy of the shard.\n\nIt is important to note that this setting greatly reduces the chances of the write operation not writing to the requisite number of shard copies, but it does not completely eliminate the possibility, because this check occurs before the write operation starts.\nAfter the write operation is underway, it is still possible for replication to fail on any number of shard copies but still succeed on the primary.\nThe `_shards` section of the API response reveals the number of shard copies on which replication succeeded and failed.\n\n**No operation (noop) updates**\n\nWhen updating a document by using this API, a new version of the document is always created even if the document hasn't changed.\nIf this isn't acceptable use the `_update` API with `detect_noop` set to `true`.\nThe `detect_noop` option isn't available on this API because it doesn’t fetch the old source and isn't able to compare it against the new source.\n\nThere isn't a definitive rule for when noop updates aren't acceptable.\nIt's a combination of lots of factors like how frequently your data source sends updates that are actually noops and how many queries per second Elasticsearch runs on the shard receiving the updates.\n\n**Versioning**\n\nEach indexed document is given a version number.\nBy default, internal versioning is used that starts at 1 and increments with each update, deletes included.\nOptionally, the version number can be set to an external value (for example, if maintained in a database).\nTo enable this functionality, `version_type` should be set to `external`.\nThe value provided must be a numeric, long value greater than or equal to 0, and less than around `9.2e+18`.\n\nNOTE: Versioning is completely real time, and is not affected by the near real time aspects of search operations.\nIf no version is provided, the operation runs without any version checks.\n\nWhen using the external version type, the system checks to see if the version number passed to the index request is greater than the version of the currently stored document.\nIf true, the document will be indexed and the new version number used.\nIf the value provided is less than or equal to the stored document's version number, a version conflict will occur and the index operation will fail. For example:\n\n```\nPUT my-index-000001/_doc/1?version=2&version_type=external\n{\n \"user\": {\n \"id\": \"elkbee\"\n }\n}\n\nIn this example, the operation will succeed since the supplied version of 2 is higher than the current document version of 1.\nIf the document was already updated and its version was set to 2 or higher, the indexing command will fail and result in a conflict (409 HTTP status code).\n\nA nice side effect is that there is no need to maintain strict ordering of async indexing operations run as a result of changes to a source database, as long as version numbers from the source database are used.\nEven the simple case of updating the Elasticsearch index using data from a database is simplified if external versioning is used, as only the latest version will be used if the index operations arrive out of order.", + "docId": "docs-index", "docTag": "document", - "docUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/master/docs-index_.html", + "docUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/docs-index_.html", + "extDocId": "data-streams", + "extDocUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/data-streams.html", "name": "index", + "privileges": { + "index": [ + "index" + ] + }, "request": { "name": "Request", "namespace": "_global.index" @@ -8108,10 +8162,17 @@ "stability": "stable" } }, - "description": "Reindex documents.\nCopies documents from a source to a destination. The source can be any existing index, alias, or data stream. The destination must differ from the source. For example, you cannot reindex a data stream into itself.", + "description": "Reindex documents.\n\nCopy documents from a source to a destination.\nYou can copy all documents to the destination index or reindex a subset of the documents.\nThe source can be any existing index, alias, or data stream.\nThe destination must differ from the source.\nFor example, you cannot reindex a data stream into itself.\n\nIMPORTANT: Reindex requires `_source` to be enabled for all documents in the source.\nThe destination should be configured as wanted before calling the reindex API.\nReindex does not copy the settings from the source or its associated template.\nMappings, shard counts, and replicas, for example, must be configured ahead of time.\n\nIf the Elasticsearch security features are enabled, you must have the following security privileges:\n\n* The `read` index privilege for the source data stream, index, or alias.\n* The `write` index privilege for the destination data stream, index, or index alias.\n* To automatically create a data stream or index with a reindex API request, you must have the `auto_configure`, `create_index`, or `manage` index privilege for the destination data stream, index, or alias.\n* If reindexing from a remote cluster, the `source.remote.user` must have the `monitor` cluster privilege and the `read` index privilege for the source data stream, index, or alias.\n\nIf reindexing from a remote cluster, you must explicitly allow the remote host in the `reindex.remote.whitelist` setting.\nAutomatic data stream creation requires a matching index template with data stream enabled.\n\nThe `dest` element can be configured like the index API to control optimistic concurrency control.\nOmitting `version_type` or setting it to `internal` causes Elasticsearch to blindly dump documents into the destination, overwriting any that happen to have the same ID.\n\nSetting `version_type` to `external` causes Elasticsearch to preserve the `version` from the source, create any documents that are missing, and update any documents that have an older version in the destination than they do in the source.\n\nSetting `op_type` to `create` causes the reindex API to create only missing documents in the destination.\nAll existing documents will cause a version conflict.\n\nIMPORTANT: Because data streams are append-only, any reindex request to a destination data stream must have an `op_type` of `create`.\nA reindex can only add new documents to a destination data stream.\nIt cannot update existing documents in a destination data stream.\n\nBy default, version conflicts abort the reindex process.\nTo continue reindexing if there are conflicts, set the `conflicts` request body property to `proceed`.\nIn this case, the response includes a count of the version conflicts that were encountered.\nNote that the handling of other error types is unaffected by the `conflicts` property.\nAdditionally, if you opt to count version conflicts, the operation could attempt to reindex more documents from the source than `max_docs` until it has successfully indexed `max_docs` documents into the target or it has gone through every document in the source query.\n\nNOTE: The reindex API makes no effort to handle ID collisions.\nThe last document written will \"win\" but the order isn't usually predictable so it is not a good idea to rely on this behavior.\nInstead, make sure that IDs are unique by using a script.\n\n**Running reindex asynchronously**\n\nIf the request contains `wait_for_completion=false`, Elasticsearch performs some preflight checks, launches the request, and returns a task you can use to cancel or get the status of the task.\nElasticsearch creates a record of this task as a document at `_tasks/`.\n\n**Reindex from multiple sources**\n\nIf you have many sources to reindex it is generally better to reindex them one at a time rather than using a glob pattern to pick up multiple sources.\nThat way you can resume the process if there are any errors by removing the partially completed source and starting over.\nIt also makes parallelizing the process fairly simple: split the list of sources to reindex and run each list in parallel.\n\nFor example, you can use a bash script like this:\n\n```\nfor index in i1 i2 i3 i4 i5; do\n curl -HContent-Type:application/json -XPOST localhost:9200/_reindex?pretty -d'{\n \"source\": {\n \"index\": \"'$index'\"\n },\n \"dest\": {\n \"index\": \"'$index'-reindexed\"\n }\n }'\ndone\n```\n\n**Throttling**\n\nSet `requests_per_second` to any positive decimal number (`1.4`, `6`, `1000`, for example) to throttle the rate at which reindex issues batches of index operations.\nRequests are throttled by padding each batch with a wait time.\nTo turn off throttling, set `requests_per_second` to `-1`.\n\nThe throttling is done by waiting between batches so that the scroll that reindex uses internally can be given a timeout that takes into account the padding.\nThe padding time is the difference between the batch size divided by the `requests_per_second` and the time spent writing.\nBy default the batch size is `1000`, so if `requests_per_second` is set to `500`:\n\n```\ntarget_time = 1000 / 500 per second = 2 seconds\nwait_time = target_time - write_time = 2 seconds - .5 seconds = 1.5 seconds\n```\n\nSince the batch is issued as a single bulk request, large batch sizes cause Elasticsearch to create many requests and then wait for a while before starting the next set.\nThis is \"bursty\" instead of \"smooth\".\n\n**Slicing**\n\nReindex supports sliced scroll to parallelize the reindexing process.\nThis parallelization can improve efficiency and provide a convenient way to break the request down into smaller parts.\n\nNOTE: Reindexing from remote clusters does not support manual or automatic slicing.\n\nYou can slice a reindex request manually by providing a slice ID and total number of slices to each request.\nYou can also let reindex automatically parallelize by using sliced scroll to slice on `_id`.\nThe `slices` parameter specifies the number of slices to use.\n\nAdding `slices` to the reindex request just automates the manual process, creating sub-requests which means it has some quirks:\n\n* You can see these requests in the tasks API. These sub-requests are \"child\" tasks of the task for the request with slices.\n* Fetching the status of the task for the request with `slices` only contains the status of completed slices.\n* These sub-requests are individually addressable for things like cancellation and rethrottling.\n* Rethrottling the request with `slices` will rethrottle the unfinished sub-request proportionally.\n* Canceling the request with `slices` will cancel each sub-request.\n* Due to the nature of `slices`, each sub-request won't get a perfectly even portion of the documents. All documents will be addressed, but some slices may be larger than others. Expect larger slices to have a more even distribution.\n* Parameters like `requests_per_second` and `max_docs` on a request with `slices` are distributed proportionally to each sub-request. Combine that with the previous point about distribution being uneven and you should conclude that using `max_docs` with `slices` might not result in exactly `max_docs` documents being reindexed.\n* Each sub-request gets a slightly different snapshot of the source, though these are all taken at approximately the same time.\n\nIf slicing automatically, setting `slices` to `auto` will choose a reasonable number for most indices.\nIf slicing manually or otherwise tuning automatic slicing, use the following guidelines.\n\nQuery performance is most efficient when the number of slices is equal to the number of shards in the index.\nIf that number is large (for example, `500`), choose a lower number as too many slices will hurt performance.\nSetting slices higher than the number of shards generally does not improve efficiency and adds overhead.\n\nIndexing performance scales linearly across available resources with the number of slices.\n\nWhether query or indexing performance dominates the runtime depends on the documents being reindexed and cluster resources.\n\n**Modify documents during reindexing**\n\nLike `_update_by_query`, reindex operations support a script that modifies the document.\nUnlike `_update_by_query`, the script is allowed to modify the document's metadata.\n\nJust as in `_update_by_query`, you can set `ctx.op` to change the operation that is run on the destination.\nFor example, set `ctx.op` to `noop` if your script decides that the document doesn’t have to be indexed in the destination. This \"no operation\" will be reported in the `noop` counter in the response body.\nSet `ctx.op` to `delete` if your script decides that the document must be deleted from the destination.\nThe deletion will be reported in the `deleted` counter in the response body.\nSetting `ctx.op` to anything else will return an error, as will setting any other field in `ctx`.\n\nThink of the possibilities! Just be careful; you are able to change:\n\n* `_id`\n* `_index`\n* `_version`\n* `_routing`\n\nSetting `_version` to `null` or clearing it from the `ctx` map is just like not sending the version in an indexing request.\nIt will cause the document to be overwritten in the destination regardless of the version on the target or the version type you use in the reindex API.\n\n**Reindex from remote**\n\nReindex supports reindexing from a remote Elasticsearch cluster.\nThe `host` parameter must contain a scheme, host, port, and optional path.\nThe `username` and `password` parameters are optional and when they are present the reindex operation will connect to the remote Elasticsearch node using basic authentication.\nBe sure to use HTTPS when using basic authentication or the password will be sent in plain text.\nThere are a range of settings available to configure the behavior of the HTTPS connection.\n\nWhen using Elastic Cloud, it is also possible to authenticate against the remote cluster through the use of a valid API key.\nRemote hosts must be explicitly allowed with the `reindex.remote.whitelist` setting.\nIt can be set to a comma delimited list of allowed remote host and port combinations.\nScheme is ignored; only the host and port are used.\nFor example:\n\n```\nreindex.remote.whitelist: [otherhost:9200, another:9200, 127.0.10.*:9200, localhost:*\"]\n```\n\nThe list of allowed hosts must be configured on any nodes that will coordinate the reindex.\nThis feature should work with remote clusters of any version of Elasticsearch.\nThis should enable you to upgrade from any version of Elasticsearch to the current version by reindexing from a cluster of the old version.\n\nWARNING: Elasticsearch does not support forward compatibility across major versions.\nFor example, you cannot reindex from a 7.x cluster into a 6.x cluster.\n\nTo enable queries sent to older versions of Elasticsearch, the `query` parameter is sent directly to the remote host without validation or modification.\n\nNOTE: Reindexing from remote clusters does not support manual or automatic slicing.\n\nReindexing from a remote server uses an on-heap buffer that defaults to a maximum size of 100mb.\nIf the remote index includes very large documents you'll need to use a smaller batch size.\nIt is also possible to set the socket read timeout on the remote connection with the `socket_timeout` field and the connection timeout with the `connect_timeout` field.\nBoth default to 30 seconds.\n\n**Configuring SSL parameters**\n\nReindex from remote supports configurable SSL settings.\nThese must be specified in the `elasticsearch.yml` file, with the exception of the secure settings, which you add in the Elasticsearch keystore.\nIt is not possible to configure SSL in the body of the reindex request.", + "docId": "docs-reindex", "docTag": "document", - "docUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/master/docs-reindex.html", + "docUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/docs-reindex.html", "name": "reindex", + "privileges": { + "index": [ + "read", + "write" + ] + }, "request": { "name": "Request", "namespace": "_global.reindex" @@ -8782,9 +8843,11 @@ "stability": "stable" } }, - "description": "Create an API key.\n\nCreate an API key for access without requiring basic authentication.\nA successful request returns a JSON structure that contains the API key, its unique id, and its name.\nIf applicable, it also returns expiration information for the API key in milliseconds.\nNOTE: By default, API keys never expire. You can specify expiration information when you create the API keys.", + "description": "Create an API key.\n\nCreate an API key for access without requiring basic authentication.\n\nIMPORTANT: If the credential that is used to authenticate this request is an API key, the derived API key cannot have any privileges.\nIf you specify privileges, the API returns an error.\n\nA successful request returns a JSON structure that contains the API key, its unique id, and its name.\nIf applicable, it also returns expiration information for the API key in milliseconds.\n\nNOTE: By default, API keys never expire. You can specify expiration information when you create the API keys.\n\nThe API keys are created by the Elasticsearch API key service, which is automatically enabled.\nTo configure or turn off the API key service, refer to API key service setting documentation.", "docId": "security-api-create-api-key", "docUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/security-api-create-api-key.html", + "extDocId": "security-settings-api-keys", + "extDocUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/security-settings.html#api-key-service-settings", "name": "security.create_api_key", "privileges": { "cluster": [ @@ -8869,7 +8932,7 @@ "stability": "stable" } }, - "description": "Check user privileges.\n\nDetermine whether the specified user has a specified list of privileges.", + "description": "Check user privileges.\n\nDetermine whether the specified user has a specified list of privileges.\nAll users can use this API, but only to determine their own privileges.\nTo check the privileges of other users, you must use the run as feature.", "docId": "security-api-has-privileges", "docUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/security-api-has-privileges.html", "extDocId": "security-privileges", @@ -8918,7 +8981,7 @@ "stability": "stable" } }, - "description": "Invalidate API keys.\n\nThis API invalidates API keys created by the create API key or grant API key APIs.\nInvalidated API keys fail authentication, but they can still be viewed using the get API key information and query API key information APIs, for at least the configured retention period, until they are automatically deleted.\nThe `manage_api_key` privilege allows deleting any API keys.\nThe `manage_own_api_key` only allows deleting API keys that are owned by the user.\nIn addition, with the `manage_own_api_key` privilege, an invalidation request must be issued in one of the three formats:\n- Set the parameter `owner=true`.\n- Or, set both `username` and `realm_name` to match the user’s identity.\n- Or, if the request is issued by an API key, that is to say an API key invalidates itself, specify its ID in the `ids` field.", + "description": "Invalidate API keys.\n\nThis API invalidates API keys created by the create API key or grant API key APIs.\nInvalidated API keys fail authentication, but they can still be viewed using the get API key information and query API key information APIs, for at least the configured retention period, until they are automatically deleted.\n\nTo use this API, you must have at least the `manage_security`, `manage_api_key`, or `manage_own_api_key` cluster privileges.\nThe `manage_security` privilege allows deleting any API key, including both REST and cross cluster API keys.\nThe `manage_api_key` privilege allows deleting any REST API key, but not cross cluster API keys.\nThe `manage_own_api_key` only allows deleting REST API keys that are owned by the user.\nIn addition, with the `manage_own_api_key` privilege, an invalidation request must be issued in one of the three formats:\n\n- Set the parameter `owner=true`.\n- Or, set both `username` and `realm_name` to match the user's identity.\n- Or, if the request is issued by an API key, that is to say an API key invalidates itself, specify its ID in the `ids` field.", "docId": "security-api-invalidate-api-key", "docUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/security-api-invalidate-api-key.html", "name": "security.invalidate_api_key", @@ -8963,7 +9026,7 @@ "stability": "stable" } }, - "description": "Find API keys with a query.\n\nGet a paginated list of API keys and their information. You can optionally filter the results with a query.", + "description": "Find API keys with a query.\n\nGet a paginated list of API keys and their information.\nYou can optionally filter the results with a query.\n\nTo use this API, you must have at least the `manage_own_api_key` or the `read_security` cluster privileges.\nIf you have only the `manage_own_api_key` privilege, this API returns only the API keys that you own.\nIf you have the `read_security`, `manage_api_key`, or greater privileges (including `manage_security`), this API returns all API keys regardless of ownership.", "docId": "security-api-query-api-key", "docUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/security-api-query-api-key.html", "name": "security.query_api_keys", @@ -9009,7 +9072,7 @@ "stability": "stable" } }, - "description": "Update an API key.\n\nUpdates attributes of an existing API key.\nUsers can only update API keys that they created or that were granted to them.\nUse this API to update API keys created by the create API Key or grant API Key APIs.\nIf you need to apply the same update to many API keys, you can use bulk update API Keys to reduce overhead.\nIt’s not possible to update expired API keys, or API keys that have been invalidated by invalidate API Key.\nThis API supports updates to an API key’s access scope and metadata.\nThe access scope of an API key is derived from the `role_descriptors` you specify in the request, and a snapshot of the owner user’s permissions at the time of the request.\nThe snapshot of the owner’s permissions is updated automatically on every call.\nIf you don’t specify `role_descriptors` in the request, a call to this API might still change the API key’s access scope.\nThis change can occur if the owner user’s permissions have changed since the API key was created or last modified.\nTo update another user’s API key, use the `run_as` feature to submit a request on behalf of another user.\nIMPORTANT: It’s not possible to use an API key as the authentication credential for this API.\nTo update an API key, the owner user’s credentials are required.", + "description": "Update an API key.\n\nUpdate attributes of an existing API key.\nThis API supports updates to an API key's access scope, expiration, and metadata.\n\nTo use this API, you must have at least the `manage_own_api_key` cluster privilege.\nUsers can only update API keys that they created or that were granted to them.\nTo update another user’s API key, use the `run_as` feature to submit a request on behalf of another user.\n\nIMPORTANT: It's not possible to use an API key as the authentication credential for this API. The owner user’s credentials are required.\n\nUse this API to update API keys created by the create API key or grant API Key APIs.\nIf you need to apply the same update to many API keys, you can use the bulk update API keys API to reduce overhead.\nIt's not possible to update expired API keys or API keys that have been invalidated by the invalidate API key API.\n\nThe access scope of an API key is derived from the `role_descriptors` you specify in the request and a snapshot of the owner user's permissions at the time of the request.\nThe snapshot of the owner's permissions is updated automatically on every call.\n\nIMPORTANT: If you don't specify `role_descriptors` in the request, a call to this API might still change the API key's access scope.\nThis change can occur if the owner user's permissions have changed since the API key was created or last modified.", "docId": "security-api-update-key", "docUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/security-api-update-api-key.html", "name": "security.update_api_key", @@ -9599,10 +9662,15 @@ "stability": "experimental" } }, - "description": "Get task information.\nGet information about a task currently running in the cluster.", + "description": "Get task information.\nGet information about a task currently running in the cluster.\n\nWARNING: The task management API is new and should still be considered a beta feature.\nThe API may change in ways that are not backwards compatible.\n\nIf the task identifier is not found, a 404 response code indicates that there are no resources that match the request.", "docId": "tasks", "docUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/tasks.html", "name": "tasks.get", + "privileges": { + "cluster": [ + "monitor" + ] + }, "request": { "name": "Request", "namespace": "tasks.get" @@ -10169,10 +10237,16 @@ "stability": "stable" } }, - "description": "Update a document.\nUpdates a document by running a script or passing a partial document.", + "description": "Update a document.\n\nUpdate a document by running a script or passing a partial document.\n\nIf the Elasticsearch security features are enabled, you must have the `index` or `write` index privilege for the target index or index alias.\n\nThe script can update, delete, or skip modifying the document.\nThe API also supports passing a partial document, which is merged into the existing document.\nTo fully replace an existing document, use the index API.\nThis operation:\n\n* Gets the document (collocated with the shard) from the index.\n* Runs the specified script.\n* Indexes the result.\n\nThe document must still be reindexed, but using this API removes some network roundtrips and reduces chances of version conflicts between the GET and the index operation.\n\nThe `_source` field must be enabled to use this API.\nIn addition to `_source`, you can access the following variables through the `ctx` map: `_index`, `_type`, `_id`, `_version`, `_routing`, and `_now` (the current timestamp).", + "docId": "docs-update", "docTag": "document", - "docUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/master/docs-update.html", + "docUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/docs-update.html", "name": "update", + "privileges": { + "index": [ + "write" + ] + }, "request": { "name": "Request", "namespace": "_global.update" @@ -11602,7 +11676,7 @@ } } }, - "description": "Bulk index or delete documents.\nPerforms multiple indexing or delete operations in a single API call.\nThis reduces overhead and can greatly increase indexing speed.", + "description": "Bulk index or delete documents.\nPerform multiple `index`, `create`, `delete`, and `update` actions in a single request.\nThis reduces overhead and can greatly increase indexing speed.\n\nIf the Elasticsearch security features are enabled, you must have the following index privileges for the target data stream, index, or index alias:\n\n* To use the `create` action, you must have the `create_doc`, `create`, `index`, or `write` index privilege. Data streams support only the `create` action.\n* To use the `index` action, you must have the `create`, `index`, or `write` index privilege.\n* To use the `delete` action, you must have the `delete` or `write` index privilege.\n* To use the `update` action, you must have the `index` or `write` index privilege.\n* To automatically create a data stream or index with a bulk API request, you must have the `auto_configure`, `create_index`, or `manage` index privilege.\n* To make the result of a bulk operation visible to search using the `refresh` parameter, you must have the `maintenance` or `manage` index privilege.\n\nAutomatic data stream creation requires a matching index template with data stream enabled.\n\nThe actions are specified in the request body using a newline delimited JSON (NDJSON) structure:\n\n```\naction_and_meta_data\\n\noptional_source\\n\naction_and_meta_data\\n\noptional_source\\n\n....\naction_and_meta_data\\n\noptional_source\\n\n```\n\nThe `index` and `create` actions expect a source on the next line and have the same semantics as the `op_type` parameter in the standard index API.\nA `create` action fails if a document with the same ID already exists in the target\nAn `index` action adds or replaces a document as necessary.\n\nNOTE: Data streams support only the `create` action.\nTo update or delete a document in a data stream, you must target the backing index containing the document.\n\nAn `update` action expects that the partial doc, upsert, and script and its options are specified on the next line.\n\nA `delete` action does not expect a source on the next line and has the same semantics as the standard delete API.\n\nNOTE: The final line of data must end with a newline character (`\\n`).\nEach newline character may be preceded by a carriage return (`\\r`).\nWhen sending NDJSON data to the `_bulk` endpoint, use a `Content-Type` header of `application/json` or `application/x-ndjson`.\nBecause this format uses literal newline characters (`\\n`) as delimiters, make sure that the JSON actions and sources are not pretty printed.\n\nIf you provide a target in the request path, it is used for any actions that don't explicitly specify an `_index` argument.\n\nA note on the format: the idea here is to make processing as fast as possible.\nAs some of the actions are redirected to other shards on other nodes, only `action_meta_data` is parsed on the receiving node side.\n\nClient libraries using this protocol should try and strive to do something similar on the client side, and reduce buffering as much as possible.\n\nThere is no \"correct\" number of actions to perform in a single bulk request.\nExperiment with different settings to find the optimal size for your particular workload.\nNote that Elasticsearch limits the maximum size of a HTTP request to 100mb by default so clients must ensure that no request exceeds this size.\nIt is not possible to index a single document that exceeds the size limit, so you must pre-process any such documents into smaller pieces before sending them to Elasticsearch.\nFor instance, split documents into pages or chapters before indexing them, or store raw binary data in a system outside Elasticsearch and replace the raw data with a link to the external system in the documents that you send to Elasticsearch.\n\n**Client suppport for bulk requests**\n\nSome of the officially supported clients provide helpers to assist with bulk requests and reindexing:\n\n* Go: Check out `esutil.BulkIndexer`\n* Perl: Check out `Search::Elasticsearch::Client::5_0::Bulk` and `Search::Elasticsearch::Client::5_0::Scroll`\n* Python: Check out `elasticsearch.helpers.*`\n* JavaScript: Check out `client.helpers.*`\n* .NET: Check out `BulkAllObservable`\n* PHP: Check out bulk indexing.\n\n**Submitting bulk requests with cURL**\n\nIf you're providing text file input to `curl`, you must use the `--data-binary` flag instead of plain `-d`.\nThe latter doesn't preserve newlines. For example:\n\n```\n$ cat requests\n{ \"index\" : { \"_index\" : \"test\", \"_id\" : \"1\" } }\n{ \"field1\" : \"value1\" }\n$ curl -s -H \"Content-Type: application/x-ndjson\" -XPOST localhost:9200/_bulk --data-binary \"@requests\"; echo\n{\"took\":7, \"errors\": false, \"items\":[{\"index\":{\"_index\":\"test\",\"_id\":\"1\",\"_version\":1,\"result\":\"created\",\"forced_refresh\":false}}]}\n```\n\n**Optimistic concurrency control**\n\nEach `index` and `delete` action within a bulk API call may include the `if_seq_no` and `if_primary_term` parameters in their respective action and meta data lines.\nThe `if_seq_no` and `if_primary_term` parameters control how operations are run, based on the last modification to existing documents. See Optimistic concurrency control for more details.\n\n**Versioning**\n\nEach bulk item can include the version value using the `version` field.\nIt automatically follows the behavior of the index or delete operation based on the `_version` mapping.\nIt also support the `version_type`.\n\n**Routing**\n\nEach bulk item can include the routing value using the `routing` field.\nIt automatically follows the behavior of the index or delete operation based on the `_routing` mapping.\n\nNOTE: Data streams do not support custom routing unless they were created with the `allow_custom_routing` setting enabled in the template.\n\n**Wait for active shards**\n\nWhen making bulk calls, you can set the `wait_for_active_shards` parameter to require a minimum number of shard copies to be active before starting to process the bulk request.\n\n**Refresh**\n\nControl when the changes made by this request are visible to search.\n\nNOTE: Only the shards that receive the bulk request will be affected by refresh.\nImagine a `_bulk?refresh=wait_for` request with three documents in it that happen to be routed to different shards in an index with five shards.\nThe request will only wait for those three shards to refresh.\nThe other two shards that make up the index do not participate in the `_bulk` request at all.", "generics": [ { "name": "TDocument", @@ -11626,7 +11700,7 @@ }, "path": [ { - "description": "Name of the data stream, index, or index alias to perform bulk actions on.", + "description": "The name of the data stream, index, or index alias to perform bulk actions on.", "name": "index", "required": false, "type": { @@ -11640,7 +11714,7 @@ ], "query": [ { - "description": "If `true`, the response will include the ingest pipelines that were executed for each index or create.", + "description": "If `true`, the response will include the ingest pipelines that were run for each index or create.", "name": "list_executed_pipelines", "required": false, "serverDefault": false, @@ -11653,7 +11727,7 @@ } }, { - "description": "ID of the pipeline to use to preprocess incoming documents.\nIf the index has a default ingest pipeline specified, then setting the value to `_none` disables the default ingest pipeline for this request.\nIf a final pipeline is configured it will always run, regardless of the value of this parameter.", + "description": "The pipeline identifier to use to preprocess incoming documents.\nIf the index has a default ingest pipeline specified, setting the value to `_none` turns off the default ingest pipeline for this request.\nIf a final pipeline is configured, it will always run regardless of the value of this parameter.", "name": "pipeline", "required": false, "type": { @@ -11665,7 +11739,7 @@ } }, { - "description": "If `true`, Elasticsearch refreshes the affected shards to make this operation visible to search, if `wait_for` then wait for a refresh to make this operation visible to search, if `false` do nothing with refreshes.\nValid values: `true`, `false`, `wait_for`.", + "description": "If `true`, Elasticsearch refreshes the affected shards to make this operation visible to search.\nIf `wait_for`, wait for a refresh to make this operation visible to search.\nIf `false`, do nothing with refreshes.\nValid values: `true`, `false`, `wait_for`.", "name": "refresh", "required": false, "serverDefault": "false", @@ -11678,7 +11752,7 @@ } }, { - "description": "Custom value used to route operations to a specific shard.", + "description": "A custom value that is used to route operations to a specific shard.", "name": "routing", "required": false, "type": { @@ -11690,7 +11764,7 @@ } }, { - "description": "`true` or `false` to return the `_source` field or not, or a list of fields to return.", + "description": "Indicates whether to return the `_source` field (`true` or `false`) or contains a list of fields to return.", "name": "_source", "required": false, "type": { @@ -11702,7 +11776,7 @@ } }, { - "description": "A comma-separated list of source fields to exclude from the response.", + "description": "A comma-separated list of source fields to exclude from the response.\nYou can also use this parameter to exclude fields from the subset specified in `_source_includes` query parameter.\nIf the `_source` parameter is `false`, this parameter is ignored.", "name": "_source_excludes", "required": false, "type": { @@ -11714,7 +11788,7 @@ } }, { - "description": "A comma-separated list of source fields to include in the response.", + "description": "A comma-separated list of source fields to include in the response.\nIf this parameter is specified, only these source fields are returned.\nYou can exclude fields from this subset using the `_source_excludes` query parameter.\nIf the `_source` parameter is `false`, this parameter is ignored.", "name": "_source_includes", "required": false, "type": { @@ -11726,7 +11800,7 @@ } }, { - "description": "Period each action waits for the following operations: automatic index creation, dynamic mapping updates, waiting for active shards.", + "description": "The period each action waits for the following operations: automatic index creation, dynamic mapping updates, and waiting for active shards.\nThe default is `1m` (one minute), which guarantees Elasticsearch waits for at least the timeout before failing.\nThe actual wait time could be longer, particularly when multiple waits occur.", "name": "timeout", "required": false, "serverDefault": "1m", @@ -11739,7 +11813,7 @@ } }, { - "description": "The number of shard copies that must be active before proceeding with the operation.\nSet to all or any positive integer up to the total number of shards in the index (`number_of_replicas+1`).", + "description": "The number of shard copies that must be active before proceeding with the operation.\nSet to `all` or any positive integer up to the total number of shards in the index (`number_of_replicas+1`).\nThe default is `1`, which waits for each primary shard to be active.", "name": "wait_for_active_shards", "required": false, "serverDefault": "1", @@ -11752,7 +11826,7 @@ } }, { - "description": "If `true`, the request’s actions must target an index alias.", + "description": "If `true`, the request's actions must target an index alias.", "name": "require_alias", "required": false, "serverDefault": false, @@ -11765,7 +11839,7 @@ } }, { - "description": "If `true`, the request's actions must target a data stream (existing or to-be-created).", + "description": "If `true`, the request's actions must target a data stream (existing or to be created).", "name": "require_data_stream", "required": false, "serverDefault": false, @@ -11778,13 +11852,14 @@ } } ], - "specLocation": "_global/bulk/BulkRequest.ts#L32-L125" + "specLocation": "_global/bulk/BulkRequest.ts#L32-L242" }, { "body": { "kind": "properties", "properties": [ { + "description": "If `true`, one or more of the operations in the bulk request did not complete successfully.", "name": "errors", "required": true, "type": { @@ -11796,6 +11871,7 @@ } }, { + "description": "The result of each operation in the bulk request, in the order they were submitted.", "name": "items", "required": true, "type": { @@ -11821,6 +11897,7 @@ } }, { + "description": "The length of time, in milliseconds, it took to process the bulk request.", "name": "took", "required": true, "type": { @@ -11849,7 +11926,7 @@ "name": "Response", "namespace": "_global.bulk" }, - "specLocation": "_global/bulk/BulkResponse.ts#L24-L31" + "specLocation": "_global/bulk/BulkResponse.ts#L24-L45" }, { "attachedBehaviors": [ @@ -11859,7 +11936,7 @@ "body": { "kind": "no_body" }, - "description": "Get aliases.\nRetrieves the cluster’s index aliases, including filter and routing information.\nThe API does not return data stream aliases.\n\nCAT APIs are only intended for human consumption using the command line or the Kibana console. They are not intended for use by applications. For application consumption, use the aliases API.", + "description": "Get aliases.\n\nGet the cluster's index aliases, including filter and routing information.\nThis API does not return data stream aliases.\n\nIMPORTANT: CAT APIs are only intended for human consumption using the command line or the Kibana console. They are not intended for use by applications. For application consumption, use the aliases API.", "inherits": { "type": { "name": "CatRequestBase", @@ -11887,7 +11964,7 @@ ], "query": [ { - "description": "Whether to expand wildcard expression to concrete indices that are open, closed or both.", + "description": "The type of index that wildcard patterns can match.\nIf the request can target data streams, this argument determines whether wildcard expressions match hidden data streams.\nIt supports comma-separated values, such as `open,hidden`.", "name": "expand_wildcards", "required": false, "type": { @@ -11912,7 +11989,7 @@ } }, { - "description": "Period to wait for a connection to the master node.", + "description": "The period to wait for a connection to the master node.\nIf the master node is not available before the timeout expires, the request fails and returns an error.\nTo indicated that the request should never timeout, you can set it to `-1`.", "name": "master_timeout", "required": false, "serverDefault": "30s", @@ -11925,7 +12002,7 @@ } } ], - "specLocation": "cat/aliases/CatAliasesRequest.ts#L24-L67" + "specLocation": "cat/aliases/CatAliasesRequest.ts#L24-L75" }, { "body": { @@ -11956,7 +12033,7 @@ "body": { "kind": "no_body" }, - "description": "Get component templates.\nReturns information about component templates in a cluster.\nComponent templates are building blocks for constructing index templates that specify index mappings, settings, and aliases.\n\nCAT APIs are only intended for human consumption using the command line or Kibana console.\nThey are not intended for use by applications. For application consumption, use the get component template API.", + "description": "Get component templates.\n\nGet information about component templates in a cluster.\nComponent templates are building blocks for constructing index templates that specify index mappings, settings, and aliases.\n\nIMPORTANT: CAT APIs are only intended for human consumption using the command line or Kibana console.\nThey are not intended for use by applications. For application consumption, use the get component template API.", "inherits": { "type": { "name": "CatRequestBase", @@ -11970,7 +12047,7 @@ }, "path": [ { - "description": "The name of the component template. Accepts wildcard expressions. If omitted, all component templates are returned.", + "description": "The name of the component template.\nIt accepts wildcard expressions.\nIf it is omitted, all component templates are returned.", "name": "name", "required": false, "type": { @@ -11997,7 +12074,7 @@ } }, { - "description": "Period to wait for a connection to the master node.", + "description": "The period to wait for a connection to the master node.", "name": "master_timeout", "required": false, "serverDefault": "30s", @@ -12010,7 +12087,7 @@ } } ], - "specLocation": "cat/component_templates/CatComponentTemplatesRequest.ts#L23-L65" + "specLocation": "cat/component_templates/CatComponentTemplatesRequest.ts#L23-L70" }, { "body": { @@ -12041,7 +12118,7 @@ "body": { "kind": "no_body" }, - "description": "Get a document count.\nProvides quick access to a document count for a data stream, an index, or an entire cluster.\nThe document count only includes live documents, not deleted documents which have not yet been removed by the merge process.\n\nCAT APIs are only intended for human consumption using the command line or Kibana console.\nThey are not intended for use by applications. For application consumption, use the count API.", + "description": "Get a document count.\n\nGet quick access to a document count for a data stream, an index, or an entire cluster.\nThe document count only includes live documents, not deleted documents which have not yet been removed by the merge process.\n\nIMPORTANT: CAT APIs are only intended for human consumption using the command line or Kibana console.\nThey are not intended for use by applications. For application consumption, use the count API.", "inherits": { "type": { "name": "CatRequestBase", @@ -12055,7 +12132,7 @@ }, "path": [ { - "description": "Comma-separated list of data streams, indices, and aliases used to limit the request.\nSupports wildcards (`*`). To target all data streams and indices, omit this parameter or use `*` or `_all`.", + "description": "A comma-separated list of data streams, indices, and aliases used to limit the request.\nIt supports wildcards (`*`).\nTo target all data streams and indices, omit this parameter or use `*` or `_all`.", "name": "index", "required": false, "type": { @@ -12068,7 +12145,7 @@ } ], "query": [], - "specLocation": "cat/count/CatCountRequest.ts#L23-L54" + "specLocation": "cat/count/CatCountRequest.ts#L23-L56" }, { "body": { @@ -12095,7 +12172,7 @@ "body": { "kind": "no_body" }, - "description": "Get CAT help.\nReturns help for the CAT APIs.", + "description": "Get CAT help.\n\nGet help for the CAT APIs.", "kind": "request", "name": { "name": "Request", @@ -12125,7 +12202,7 @@ "body": { "kind": "no_body" }, - "description": "Get index information.\nReturns high-level information about indices in a cluster, including backing indices for data streams.\n\nUse this request to get the following information for each index in a cluster:\n- shard count\n- document count\n- deleted document count\n- primary store size\n- total store size of all shards, including shard replicas\n\nThese metrics are retrieved directly from Lucene, which Elasticsearch uses internally to power indexing and search. As a result, all document counts include hidden nested documents.\nTo get an accurate count of Elasticsearch documents, use the cat count or count APIs.\n\nCAT APIs are only intended for human consumption using the command line or Kibana console.\nThey are not intended for use by applications. For application consumption, use an index endpoint.", + "description": "Get index information.\n\nGet high-level information about indices in a cluster, including backing indices for data streams.\n\nUse this request to get the following information for each index in a cluster:\n- shard count\n- document count\n- deleted document count\n- primary store size\n- total store size of all shards, including shard replicas\n\nThese metrics are retrieved directly from Lucene, which Elasticsearch uses internally to power indexing and search. As a result, all document counts include hidden nested documents.\nTo get an accurate count of Elasticsearch documents, use the cat count or count APIs.\n\nCAT APIs are only intended for human consumption using the command line or Kibana console.\nThey are not intended for use by applications. For application consumption, use an index endpoint.", "inherits": { "type": { "name": "CatRequestBase", @@ -12240,7 +12317,7 @@ } } ], - "specLocation": "cat/indices/CatIndicesRequest.ts#L24-L92" + "specLocation": "cat/indices/CatIndicesRequest.ts#L24-L93" }, { "body": { @@ -12271,7 +12348,7 @@ "body": { "kind": "no_body" }, - "description": "Get data frame analytics jobs.\nReturns configuration and usage information about data frame analytics jobs.\n\nCAT APIs are only intended for human consumption using the Kibana\nconsole or command line. They are not intended for use by applications. For\napplication consumption, use the get data frame analytics jobs statistics API.", + "description": "Get data frame analytics jobs.\n\nGet configuration and usage information about data frame analytics jobs.\n\nIMPORTANT: CAT APIs are only intended for human consumption using the Kibana\nconsole or command line. They are not intended for use by applications. For\napplication consumption, use the get data frame analytics jobs statistics API.", "inherits": { "type": { "name": "CatRequestBase", @@ -12360,7 +12437,7 @@ } } ], - "specLocation": "cat/ml_data_frame_analytics/CatDataFrameAnalyticsRequest.ts#L24-L69" + "specLocation": "cat/ml_data_frame_analytics/CatDataFrameAnalyticsRequest.ts#L24-L70" }, { "body": { @@ -12391,7 +12468,7 @@ "body": { "kind": "no_body" }, - "description": "Get datafeeds.\nReturns configuration and usage information about datafeeds.\nThis API returns a maximum of 10,000 datafeeds.\nIf the Elasticsearch security features are enabled, you must have `monitor_ml`, `monitor`, `manage_ml`, or `manage`\ncluster privileges to use this API.\n\nCAT APIs are only intended for human consumption using the Kibana\nconsole or command line. They are not intended for use by applications. For\napplication consumption, use the get datafeed statistics API.", + "description": "Get datafeeds.\n\nGet configuration and usage information about datafeeds.\nThis API returns a maximum of 10,000 datafeeds.\nIf the Elasticsearch security features are enabled, you must have `monitor_ml`, `monitor`, `manage_ml`, or `manage`\ncluster privileges to use this API.\n\nIMPORTANT: CAT APIs are only intended for human consumption using the Kibana\nconsole or command line. They are not intended for use by applications. For\napplication consumption, use the get datafeed statistics API.", "inherits": { "type": { "name": "CatRequestBase", @@ -12469,7 +12546,7 @@ } } ], - "specLocation": "cat/ml_datafeeds/CatDatafeedsRequest.ts#L24-L84" + "specLocation": "cat/ml_datafeeds/CatDatafeedsRequest.ts#L24-L85" }, { "body": { @@ -12500,7 +12577,7 @@ "body": { "kind": "no_body" }, - "description": "Get anomaly detection jobs.\nReturns configuration and usage information for anomaly detection jobs.\nThis API returns a maximum of 10,000 jobs.\nIf the Elasticsearch security features are enabled, you must have `monitor_ml`,\n`monitor`, `manage_ml`, or `manage` cluster privileges to use this API.\n\nCAT APIs are only intended for human consumption using the Kibana\nconsole or command line. They are not intended for use by applications. For\napplication consumption, use the get anomaly detection job statistics API.", + "description": "Get anomaly detection jobs.\n\nGet configuration and usage information for anomaly detection jobs.\nThis API returns a maximum of 10,000 jobs.\nIf the Elasticsearch security features are enabled, you must have `monitor_ml`,\n`monitor`, `manage_ml`, or `manage` cluster privileges to use this API.\n\nIMPORTANT: CAT APIs are only intended for human consumption using the Kibana\nconsole or command line. They are not intended for use by applications. For\napplication consumption, use the get anomaly detection job statistics API.", "inherits": { "type": { "name": "CatRequestBase", @@ -12590,7 +12667,7 @@ } } ], - "specLocation": "cat/ml_jobs/CatJobsRequest.ts#L24-L88" + "specLocation": "cat/ml_jobs/CatJobsRequest.ts#L24-L89" }, { "body": { @@ -12621,7 +12698,7 @@ "body": { "kind": "no_body" }, - "description": "Get trained models.\nReturns configuration and usage information about inference trained models.\n\nCAT APIs are only intended for human consumption using the Kibana\nconsole or command line. They are not intended for use by applications. For\napplication consumption, use the get trained models statistics API.", + "description": "Get trained models.\n\nGet configuration and usage information about inference trained models.\n\nIMPORTANT: CAT APIs are only intended for human consumption using the Kibana\nconsole or command line. They are not intended for use by applications. For\napplication consumption, use the get trained models statistics API.", "inherits": { "type": { "name": "CatRequestBase", @@ -12734,7 +12811,7 @@ } } ], - "specLocation": "cat/ml_trained_models/CatTrainedModelsRequest.ts#L25-L79" + "specLocation": "cat/ml_trained_models/CatTrainedModelsRequest.ts#L25-L80" }, { "body": { @@ -12765,7 +12842,7 @@ "body": { "kind": "no_body" }, - "description": "Get transforms.\nReturns configuration and usage information about transforms.\n\nCAT APIs are only intended for human consumption using the Kibana\nconsole or command line. They are not intended for use by applications. For\napplication consumption, use the get transform statistics API.", + "description": "Get transform information.\n\nGet configuration and usage information about transforms.\n\nCAT APIs are only intended for human consumption using the Kibana\nconsole or command line. They are not intended for use by applications. For\napplication consumption, use the get transform statistics API.", "inherits": { "type": { "name": "CatRequestBase", @@ -12869,7 +12946,7 @@ } } ], - "specLocation": "cat/transforms/CatTransformsRequest.ts#L25-L88" + "specLocation": "cat/transforms/CatTransformsRequest.ts#L25-L89" }, { "body": { @@ -12900,7 +12977,7 @@ "kind": "properties", "properties": [ { - "description": "Scroll IDs to clear.\nTo clear all scroll IDs, use `_all`.", + "description": "The scroll IDs to clear.\nTo clear all scroll IDs, use `_all`.", "name": "scroll_id", "required": false, "type": { @@ -12913,7 +12990,7 @@ } ] }, - "description": "Clear a scrolling search.\n\nClear the search context and results for a scrolling search.", + "description": "Clear a scrolling search.\nClear the search context and results for a scrolling search.", "inherits": { "type": { "name": "RequestBase", @@ -12927,7 +13004,11 @@ }, "path": [ { - "description": "Comma-separated list of scroll IDs to clear.\nTo clear all scroll IDs, use `_all`.", + "deprecation": { + "description": "", + "version": "7.0.0" + }, + "description": "A comma-separated list of scroll IDs to clear.\nTo clear all scroll IDs, use `_all`.\nIMPORTANT: Scroll IDs can be long. It is recommended to specify scroll IDs in the request body parameter.", "name": "scroll_id", "required": false, "type": { @@ -12940,13 +13021,14 @@ } ], "query": [], - "specLocation": "_global/clear_scroll/ClearScrollRequest.ts#L23-L59" + "specLocation": "_global/clear_scroll/ClearScrollRequest.ts#L23-L61" }, { "body": { "kind": "properties", "properties": [ { + "description": "If `true`, the request succeeded.\nThis does not indicate whether any scrolling search requests were cleared.", "name": "succeeded", "required": true, "type": { @@ -12958,6 +13040,7 @@ } }, { + "description": "The number of scrolling search requests cleared.", "name": "num_freed", "required": true, "type": { @@ -13009,7 +13092,7 @@ "name": "Response", "namespace": "_global.clear_scroll" }, - "specLocation": "_global/clear_scroll/ClearScrollResponse.ts#L22-L36" + "specLocation": "_global/clear_scroll/ClearScrollResponse.ts#L22-L43" }, { "attachedBehaviors": [ @@ -13032,7 +13115,7 @@ } ] }, - "description": "Close a point in time.\n\nA point in time must be opened explicitly before being used in search requests.\nThe `keep_alive` parameter tells Elasticsearch how long it should persist.\nA point in time is automatically closed when the `keep_alive` period has elapsed.\nHowever, keeping points in time has a cost; close them as soon as they are no longer required for search requests.", + "description": "Close a point in time.\nA point in time must be opened explicitly before being used in search requests.\nThe `keep_alive` parameter tells Elasticsearch how long it should persist.\nA point in time is automatically closed when the `keep_alive` period has elapsed.\nHowever, keeping points in time has a cost; close them as soon as they are no longer required for search requests.", "inherits": { "type": { "name": "RequestBase", @@ -13046,13 +13129,14 @@ }, "path": [], "query": [], - "specLocation": "_global/close_point_in_time/ClosePointInTimeRequest.ts#L23-L49" + "specLocation": "_global/close_point_in_time/ClosePointInTimeRequest.ts#L23-L48" }, { "body": { "kind": "properties", "properties": [ { + "description": "If `true`, all search contexts associated with the point-in-time ID were successfully closed.", "name": "succeeded", "required": true, "type": { @@ -13064,6 +13148,7 @@ } }, { + "description": "The number of search contexts that were successfully closed.", "name": "num_freed", "required": true, "type": { @@ -13115,7 +13200,7 @@ "name": "Response", "namespace": "_global.close_point_in_time" }, - "specLocation": "_global/close_point_in_time/ClosePointInTimeResponse.ts#L22-L36" + "specLocation": "_global/close_point_in_time/ClosePointInTimeResponse.ts#L22-L42" }, { "attachedBehaviors": [ @@ -15641,7 +15726,7 @@ "kind": "properties", "properties": [ { - "description": "Defines the search definition using the Query DSL.", + "description": "Defines the search definition using the Query DSL.\nThe query is optional, and when not provided, it will use `match_all` to count all the docs.", "name": "query", "required": false, "type": { @@ -15654,7 +15739,7 @@ } ] }, - "description": "Count search results.\nGet the number of documents matching a query.", + "description": "Count search results.\nGet the number of documents matching a query.\n\nThe query can either be provided using a simple query string as a parameter or using the Query DSL defined within the request body.\nThe latter must be nested in a `query` key, which is the same as the search API.\n\nThe count API supports multi-target syntax. You can run a single count API search across multiple data streams and indices.\n\nThe operation is broadcast across all shards.\nFor each shard ID group, a replica is chosen and the search is run against it.\nThis means that replicas increase the scalability of the count.", "inherits": { "type": { "name": "RequestBase", @@ -15668,7 +15753,7 @@ }, "path": [ { - "description": "Comma-separated list of data streams, indices, and aliases to search.\nSupports wildcards (`*`).\nTo search all data streams and indices, omit this parameter or use `*` or `_all`.", + "description": "A comma-separated list of data streams, indices, and aliases to search.\nIt supports wildcards (`*`).\nTo search all data streams and indices, omit this parameter or use `*` or `_all`.", "name": "index", "required": false, "type": { @@ -15682,7 +15767,7 @@ ], "query": [ { - "description": "If `false`, the request returns an error if any wildcard expression, index alias, or `_all` value targets only missing or closed indices.\nThis behavior applies even if the request targets other open indices.", + "description": "If `false`, the request returns an error if any wildcard expression, index alias, or `_all` value targets only missing or closed indices.\nThis behavior applies even if the request targets other open indices.\nFor example, a request targeting `foo*,bar*` returns an error if an index starts with `foo` but no index starts with `bar`.", "name": "allow_no_indices", "required": false, "serverDefault": true, @@ -15695,7 +15780,7 @@ } }, { - "description": "Analyzer to use for the query string.\nThis parameter can only be used when the `q` query string parameter is specified.", + "description": "The analyzer to use for the query string.\nThis parameter can be used only when the `q` query string parameter is specified.", "name": "analyzer", "required": false, "type": { @@ -15707,7 +15792,7 @@ } }, { - "description": "If `true`, wildcard and prefix queries are analyzed.\nThis parameter can only be used when the `q` query string parameter is specified.", + "description": "If `true`, wildcard and prefix queries are analyzed.\nThis parameter can be used only when the `q` query string parameter is specified.", "name": "analyze_wildcard", "required": false, "serverDefault": false, @@ -15720,9 +15805,10 @@ } }, { - "description": "The default operator for query string query: `AND` or `OR`.\nThis parameter can only be used when the `q` query string parameter is specified.", + "description": "The default operator for query string query: `AND` or `OR`.\nThis parameter can be used only when the `q` query string parameter is specified.", "name": "default_operator", "required": false, + "serverDefault": "OR", "type": { "kind": "instance_of", "type": { @@ -15732,7 +15818,7 @@ } }, { - "description": "Field to use as default where no field prefix is given in the query string.\nThis parameter can only be used when the `q` query string parameter is specified.", + "description": "The field to use as a default when no field prefix is given in the query string.\nThis parameter can be used only when the `q` query string parameter is specified.", "name": "df", "required": false, "type": { @@ -15744,7 +15830,7 @@ } }, { - "description": "Type of index that wildcard patterns can match.\nIf the request can target data streams, this argument determines whether wildcard expressions match hidden data streams.\nSupports comma-separated values, such as `open,hidden`.", + "description": "The type of index that wildcard patterns can match.\nIf the request can target data streams, this argument determines whether wildcard expressions match hidden data streams.\nIt supports comma-separated values, such as `open,hidden`.", "name": "expand_wildcards", "required": false, "serverDefault": "open", @@ -15757,7 +15843,11 @@ } }, { - "description": "If `true`, concrete, expanded or aliased indices are ignored when frozen.", + "deprecation": { + "description": "", + "version": "7.16.0" + }, + "description": "If `true`, concrete, expanded, or aliased indices are ignored when frozen.", "name": "ignore_throttled", "required": false, "serverDefault": true, @@ -15783,7 +15873,7 @@ } }, { - "description": "If `true`, format-based query failures (such as providing text to a numeric field) in the query string will be ignored.", + "description": "If `true`, format-based query failures (such as providing text to a numeric field) in the query string will be ignored.\nThis parameter can be used only when the `q` query string parameter is specified.", "name": "lenient", "required": false, "serverDefault": false, @@ -15796,7 +15886,7 @@ } }, { - "description": "Sets the minimum `_score` value that documents must have to be included in the result.", + "description": "The minimum `_score` value that documents must have to be included in the result.", "name": "min_score", "required": false, "type": { @@ -15808,7 +15898,7 @@ } }, { - "description": "Specifies the node or shard the operation should be performed on.\nRandom by default.", + "description": "The node or shard the operation should be performed on.\nBy default, it is random.", "name": "preference", "required": false, "type": { @@ -15820,7 +15910,7 @@ } }, { - "description": "Custom value used to route operations to a specific shard.", + "description": "A custom value used to route operations to a specific shard.", "name": "routing", "required": false, "type": { @@ -15832,7 +15922,7 @@ } }, { - "description": "Maximum number of documents to collect for each shard.\nIf a query reaches this limit, Elasticsearch terminates the query early.\nElasticsearch collects documents before sorting.", + "description": "The maximum number of documents to collect for each shard.\nIf a query reaches this limit, Elasticsearch terminates the query early.\nElasticsearch collects documents before sorting.\n\nIMPORTANT: Use with caution.\nElasticsearch applies this parameter to each shard handling the request.\nWhen possible, let Elasticsearch perform early termination automatically.\nAvoid specifying this parameter for requests that target data streams with backing indices across multiple data tiers.", "name": "terminate_after", "required": false, "type": { @@ -15844,7 +15934,7 @@ } }, { - "description": "Query in the Lucene query string syntax.", + "description": "The query in Lucene query string syntax.", "name": "q", "required": false, "type": { @@ -15856,7 +15946,7 @@ } } ], - "specLocation": "_global/count/CountRequest.ts#L26-L133" + "specLocation": "_global/count/CountRequest.ts#L26-L154" }, { "body": { @@ -15908,7 +15998,7 @@ } } }, - "description": "Index a document.\nAdds a JSON document to the specified data stream or index and makes it searchable.\nIf the target is an index and the document already exists, the request updates the document and increments its version.", + "description": "Create a new document in the index.\n\nYou can index a new JSON document with the `//_doc/` or `//_create/<_id>` APIs\nUsing `_create` guarantees that the document is indexed only if it does not already exist.\nIt returns a 409 response when a document with a same ID already exists in the index.\nTo update an existing document, you must use the `//_doc/` API.\n\nIf the Elasticsearch security features are enabled, you must have the following index privileges for the target data stream, index, or index alias:\n\n* To add a document using the `PUT //_create/<_id>` or `POST //_create/<_id>` request formats, you must have the `create_doc`, `create`, `index`, or `write` index privilege.\n* To automatically create a data stream or index with this API request, you must have the `auto_configure`, `create_index`, or `manage` index privilege.\n\nAutomatic data stream creation requires a matching index template with data stream enabled.\n\n**Automatically create data streams and indices**\n\nIf the request's target doesn't exist and matches an index template with a `data_stream` definition, the index operation automatically creates the data stream.\n\nIf the target doesn't exist and doesn't match a data stream template, the operation automatically creates the index and applies any matching index templates.\n\nNOTE: Elasticsearch includes several built-in index templates. To avoid naming collisions with these templates, refer to index pattern documentation.\n\nIf no mapping exists, the index operation creates a dynamic mapping.\nBy default, new fields and objects are automatically added to the mapping if needed.\n\nAutomatic index creation is controlled by the `action.auto_create_index` setting.\nIf it is `true`, any index can be created automatically.\nYou can modify this setting to explicitly allow or block automatic creation of indices that match specified patterns or set it to `false` to turn off automatic index creation entirely.\nSpecify a comma-separated list of patterns you want to allow or prefix each pattern with `+` or `-` to indicate whether it should be allowed or blocked.\nWhen a list is specified, the default behaviour is to disallow.\n\nNOTE: The `action.auto_create_index` setting affects the automatic creation of indices only.\nIt does not affect the creation of data streams.\n\n**Routing**\n\nBy default, shard placement — or routing — is controlled by using a hash of the document's ID value.\nFor more explicit control, the value fed into the hash function used by the router can be directly specified on a per-operation basis using the `routing` parameter.\n\nWhen setting up explicit mapping, you can also use the `_routing` field to direct the index operation to extract the routing value from the document itself.\nThis does come at the (very minimal) cost of an additional document parsing pass.\nIf the `_routing` mapping is defined and set to be required, the index operation will fail if no routing value is provided or extracted.\n\nNOTE: Data streams do not support custom routing unless they were created with the `allow_custom_routing` setting enabled in the template.\n\n**Distributed**\n\nThe index operation is directed to the primary shard based on its route and performed on the actual node containing this shard.\nAfter the primary shard completes the operation, if needed, the update is distributed to applicable replicas.\n\n**Active shards**\n\nTo improve the resiliency of writes to the system, indexing operations can be configured to wait for a certain number of active shard copies before proceeding with the operation.\nIf the requisite number of active shard copies are not available, then the write operation must wait and retry, until either the requisite shard copies have started or a timeout occurs.\nBy default, write operations only wait for the primary shards to be active before proceeding (that is to say `wait_for_active_shards` is `1`).\nThis default can be overridden in the index settings dynamically by setting `index.write.wait_for_active_shards`.\nTo alter this behavior per operation, use the `wait_for_active_shards request` parameter.\n\nValid values are all or any positive integer up to the total number of configured copies per shard in the index (which is `number_of_replicas`+1).\nSpecifying a negative value or a number greater than the number of shard copies will throw an error.\n\nFor example, suppose you have a cluster of three nodes, A, B, and C and you create an index index with the number of replicas set to 3 (resulting in 4 shard copies, one more copy than there are nodes).\nIf you attempt an indexing operation, by default the operation will only ensure the primary copy of each shard is available before proceeding.\nThis means that even if B and C went down and A hosted the primary shard copies, the indexing operation would still proceed with only one copy of the data.\nIf `wait_for_active_shards` is set on the request to `3` (and all three nodes are up), the indexing operation will require 3 active shard copies before proceeding.\nThis requirement should be met because there are 3 active nodes in the cluster, each one holding a copy of the shard.\nHowever, if you set `wait_for_active_shards` to `all` (or to `4`, which is the same in this situation), the indexing operation will not proceed as you do not have all 4 copies of each shard active in the index.\nThe operation will timeout unless a new node is brought up in the cluster to host the fourth copy of the shard.\n\nIt is important to note that this setting greatly reduces the chances of the write operation not writing to the requisite number of shard copies, but it does not completely eliminate the possibility, because this check occurs before the write operation starts.\nAfter the write operation is underway, it is still possible for replication to fail on any number of shard copies but still succeed on the primary.\nThe `_shards` section of the API response reveals the number of shard copies on which replication succeeded and failed.", "generics": [ { "name": "TDocument", @@ -15928,7 +16018,7 @@ }, "path": [ { - "description": "Unique identifier for the document.", + "description": "A unique identifier for the document.\nTo automatically generate a document ID, use the `POST //_doc/` request format.", "name": "id", "required": true, "type": { @@ -15940,7 +16030,7 @@ } }, { - "description": "Name of the data stream or index to target.\nIf the target doesn’t exist and matches the name or wildcard (`*`) pattern of an index template with a `data_stream` definition, this request creates the data stream.\nIf the target doesn’t exist and doesn’t match a data stream template, this request creates the index.", + "description": "The name of the data stream or index to target.\nIf the target doesn't exist and matches the name or wildcard (`*`) pattern of an index template with a `data_stream` definition, this request creates the data stream.\nIf the target doesn't exist and doesn’t match a data stream template, this request creates the index.", "name": "index", "required": true, "type": { @@ -15954,7 +16044,7 @@ ], "query": [ { - "description": "ID of the pipeline to use to preprocess incoming documents.\nIf the index has a default ingest pipeline specified, then setting the value to `_none` disables the default ingest pipeline for this request.\nIf a final pipeline is configured it will always run, regardless of the value of this parameter.", + "description": "The ID of the pipeline to use to preprocess incoming documents.\nIf the index has a default ingest pipeline specified, setting the value to `_none` turns off the default ingest pipeline for this request.\nIf a final pipeline is configured, it will always run regardless of the value of this parameter.", "name": "pipeline", "required": false, "type": { @@ -15966,7 +16056,7 @@ } }, { - "description": "If `true`, Elasticsearch refreshes the affected shards to make this operation visible to search, if `wait_for` then wait for a refresh to make this operation visible to search, if `false` do nothing with refreshes.\nValid values: `true`, `false`, `wait_for`.", + "description": "If `true`, Elasticsearch refreshes the affected shards to make this operation visible to search.\nIf `wait_for`, it waits for a refresh to make this operation visible to search.\nIf `false`, it does nothing with refreshes.", "name": "refresh", "required": false, "serverDefault": "false", @@ -15979,7 +16069,7 @@ } }, { - "description": "Custom value used to route operations to a specific shard.", + "description": "A custom value that is used to route operations to a specific shard.", "name": "routing", "required": false, "type": { @@ -15991,7 +16081,7 @@ } }, { - "description": "Period the request waits for the following operations: automatic index creation, dynamic mapping updates, waiting for active shards.", + "description": "The period the request waits for the following operations: automatic index creation, dynamic mapping updates, waiting for active shards.\nElasticsearch waits for at least the specified timeout period before failing.\nThe actual wait time could be longer, particularly when multiple waits occur.\n\nThis parameter is useful for situations where the primary shard assigned to perform the operation might not be available when the operation runs.\nSome reasons for this might be that the primary shard is currently recovering from a gateway or undergoing relocation.\nBy default, the operation will wait on the primary shard to become available for at least 1 minute before failing and responding with an error.\nThe actual wait time could be longer, particularly when multiple waits occur.", "name": "timeout", "required": false, "serverDefault": "1m", @@ -16004,7 +16094,7 @@ } }, { - "description": "Explicit version number for concurrency control.\nThe specified version must match the current version of the document for the request to succeed.", + "description": "The explicit version number for concurrency control.\nIt must be a non-negative long number.", "name": "version", "required": false, "type": { @@ -16016,7 +16106,7 @@ } }, { - "description": "Specific version type: `external`, `external_gte`.", + "description": "The version type.", "name": "version_type", "required": false, "type": { @@ -16028,7 +16118,7 @@ } }, { - "description": "The number of shard copies that must be active before proceeding with the operation.\nSet to `all` or any positive integer up to the total number of shards in the index (`number_of_replicas+1`).", + "description": "The number of shard copies that must be active before proceeding with the operation.\nYou can set it to `all` or any positive integer up to the total number of shards in the index (`number_of_replicas+1`).\nThe default value of `1` means it waits for each primary shard to be active.", "name": "wait_for_active_shards", "required": false, "serverDefault": "1", @@ -16041,7 +16131,7 @@ } } ], - "specLocation": "_global/create/CreateRequest.ts#L32-L102" + "specLocation": "_global/create/CreateRequest.ts#L32-L184" }, { "body": { @@ -16068,7 +16158,7 @@ "body": { "kind": "no_body" }, - "description": "Delete a document.\nRemoves a JSON document from the specified index.", + "description": "Delete a document.\n\nRemove a JSON document from the specified index.\n\nNOTE: You cannot send deletion requests directly to a data stream.\nTo delete a document in a data stream, you must target the backing index containing the document.\n\n**Optimistic concurrency control**\n\nDelete operations can be made conditional and only be performed if the last modification to the document was assigned the sequence number and primary term specified by the `if_seq_no` and `if_primary_term` parameters.\nIf a mismatch is detected, the operation will result in a `VersionConflictException` and a status code of `409`.\n\n**Versioning**\n\nEach document indexed is versioned.\nWhen deleting a document, the version can be specified to make sure the relevant document you are trying to delete is actually being deleted and it has not changed in the meantime.\nEvery write operation run on a document, deletes included, causes its version to be incremented.\nThe version number of a deleted document remains available for a short time after deletion to allow for control of concurrent operations.\nThe length of time for which a deleted document's version remains available is determined by the `index.gc_deletes` index setting.\n\n**Routing**\n\nIf routing is used during indexing, the routing value also needs to be specified to delete a document.\n\nIf the `_routing` mapping is set to `required` and no routing value is specified, the delete API throws a `RoutingMissingException` and rejects the request.\n\nFor example:\n\n```\nDELETE /my-index-000001/_doc/1?routing=shard-1\n```\n\nThis request deletes the document with ID 1, but it is routed based on the user.\nThe document is not deleted if the correct routing is not specified.\n\n**Distributed**\n\nThe delete operation gets hashed into a specific shard ID.\nIt then gets redirected into the primary shard within that ID group and replicated (if needed) to shard replicas within that ID group.", "inherits": { "type": { "name": "RequestBase", @@ -16082,7 +16172,7 @@ }, "path": [ { - "description": "Unique identifier for the document.", + "description": "A unique identifier for the document.", "name": "id", "required": true, "type": { @@ -16094,7 +16184,7 @@ } }, { - "description": "Name of the target index.", + "description": "The name of the target index.", "name": "index", "required": true, "type": { @@ -16109,6 +16199,8 @@ "query": [ { "description": "Only perform the operation if the document has this primary term.", + "extDocId": "optimistic-concurrency", + "extDocUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/optimistic-concurrency-control.html", "name": "if_primary_term", "required": false, "type": { @@ -16121,6 +16213,8 @@ }, { "description": "Only perform the operation if the document has this sequence number.", + "extDocId": "optimistic-concurrency", + "extDocUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/optimistic-concurrency-control.html", "name": "if_seq_no", "required": false, "type": { @@ -16132,7 +16226,7 @@ } }, { - "description": "If `true`, Elasticsearch refreshes the affected shards to make this operation visible to search, if `wait_for` then wait for a refresh to make this operation visible to search, if `false` do nothing with refreshes.\nValid values: `true`, `false`, `wait_for`.", + "description": "If `true`, Elasticsearch refreshes the affected shards to make this operation visible to search.\nIf `wait_for`, it waits for a refresh to make this operation visible to search.\nIf `false`, it does nothing with refreshes.", "name": "refresh", "required": false, "serverDefault": "false", @@ -16145,7 +16239,7 @@ } }, { - "description": "Custom value used to route operations to a specific shard.", + "description": "A custom value used to route operations to a specific shard.", "name": "routing", "required": false, "type": { @@ -16157,7 +16251,7 @@ } }, { - "description": "Period to wait for active shards.", + "description": "The period to wait for active shards.\n\nThis parameter is useful for situations where the primary shard assigned to perform the delete operation might not be available when the delete operation runs.\nSome reasons for this might be that the primary shard is currently recovering from a store or undergoing relocation.\nBy default, the delete operation will wait on the primary shard to become available for up to 1 minute before failing and responding with an error.", "name": "timeout", "required": false, "serverDefault": "1m", @@ -16170,7 +16264,7 @@ } }, { - "description": "Explicit version number for concurrency control.\nThe specified version must match the current version of the document for the request to succeed.", + "description": "An explicit version number for concurrency control.\nIt must match the current version of the document for the request to succeed.", "name": "version", "required": false, "type": { @@ -16182,7 +16276,7 @@ } }, { - "description": "Specific version type: `external`, `external_gte`.", + "description": "The version type.", "name": "version_type", "required": false, "type": { @@ -16194,7 +16288,7 @@ } }, { - "description": "The number of shard copies that must be active before proceeding with the operation.\nSet to `all` or any positive integer up to the total number of shards in the index (`number_of_replicas+1`).", + "description": "The minimum number of shard copies that must be active before proceeding with the operation.\nYou can set it to `all` or any positive integer up to the total number of shards in the index (`number_of_replicas+1`).\nThe default value of `1` means it waits for each primary shard to be active.", "name": "wait_for_active_shards", "required": false, "serverDefault": "1", @@ -16207,7 +16301,7 @@ } } ], - "specLocation": "_global/delete/DeleteRequest.ts#L34-L99" + "specLocation": "_global/delete/DeleteRequest.ts#L34-L146" }, { "body": { @@ -18292,7 +18386,7 @@ "kind": "instance_of", "type": { "name": "EsqlFormat", - "namespace": "esql.query" + "namespace": "esql._types" } } }, @@ -18322,7 +18416,7 @@ } } ], - "specLocation": "esql/query/QueryRequest.ts#L26-L97" + "specLocation": "esql/query/QueryRequest.ts#L27-L98" }, { "body": { @@ -18349,7 +18443,7 @@ "body": { "kind": "no_body" }, - "description": "Check a document.\nChecks if a specified document exists.", + "description": "Check a document.\n\nVerify that a document exists.\nFor example, check to see if a document with the `_id` 0 exists:\n\n```\nHEAD my-index-000001/_doc/0\n```\n\nIf the document exists, the API returns a status code of `200 - OK`.\nIf the document doesn’t exist, the API returns `404 - Not Found`.\n\n**Versioning support**\n\nYou can use the `version` parameter to check the document only if its current version is equal to the specified one.\n\nInternally, Elasticsearch has marked the old document as deleted and added an entirely new document.\nThe old version of the document doesn't disappear immediately, although you won't be able to access it.\nElasticsearch cleans up deleted documents in the background as you continue to index more data.", "inherits": { "type": { "name": "RequestBase", @@ -18363,7 +18457,7 @@ }, "path": [ { - "description": "Identifier of the document.", + "description": "A unique document identifier.", "name": "id", "required": true, "type": { @@ -18375,7 +18469,7 @@ } }, { - "description": "Comma-separated list of data streams, indices, and aliases.\nSupports wildcards (`*`).", + "description": "A comma-separated list of data streams, indices, and aliases.\nIt supports wildcards (`*`).", "name": "index", "required": true, "type": { @@ -18389,7 +18483,7 @@ ], "query": [ { - "description": "Specifies the node or shard the operation should be performed on.\nRandom by default.", + "description": "The node or shard the operation should be performed on.\nBy default, the operation is randomized between the shard replicas.\n\nIf it is set to `_local`, the operation will prefer to be run on a local allocated shard when possible.\nIf it is set to a custom value, the value is used to guarantee that the same shards will be used for the same custom value.\nThis can help with \"jumping values\" when hitting different shards in different refresh states.\nA sample value can be something like the web session ID or the user name.", "name": "preference", "required": false, "type": { @@ -18416,7 +18510,7 @@ } }, { - "description": "If `true`, Elasticsearch refreshes all shards involved in the delete by query after the request completes.", + "description": "If `true`, the request refreshes the relevant shards before retrieving the document.\nSetting it to `true` should be done after careful thought and verification that this does not cause a heavy load on the system (and slow down indexing).", "name": "refresh", "required": false, "serverDefault": false, @@ -18429,9 +18523,9 @@ } }, { - "description": "Target the specified primary shard.", - "docId": "routing", - "docUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/docs-get.html#get-routing", + "description": "A custom value used to route operations to a specific shard.", + "extDocId": "routing", + "extDocUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/docs-get.html#get-routing", "name": "routing", "required": false, "type": { @@ -18443,7 +18537,7 @@ } }, { - "description": "`true` or `false` to return the `_source` field or not, or a list of fields to return.", + "description": "Indicates whether to return the `_source` field (`true` or `false`) or lists the fields to return.", "name": "_source", "required": false, "type": { @@ -18455,7 +18549,7 @@ } }, { - "description": "A comma-separated list of source fields to exclude in the response.", + "description": "A comma-separated list of source fields to exclude from the response.\nYou can also use this parameter to exclude fields from the subset specified in `_source_includes` query parameter.\nIf the `_source` parameter is `false`, this parameter is ignored.", "name": "_source_excludes", "required": false, "type": { @@ -18467,7 +18561,7 @@ } }, { - "description": "A comma-separated list of source fields to include in the response.", + "description": "A comma-separated list of source fields to include in the response.\nIf this parameter is specified, only these source fields are returned.\nYou can exclude fields from this subset using the `_source_excludes` query parameter.\nIf the `_source` parameter is `false`, this parameter is ignored.", "name": "_source_includes", "required": false, "type": { @@ -18479,7 +18573,7 @@ } }, { - "description": "List of stored fields to return as part of a hit.\nIf no fields are specified, no stored fields are included in the response.\nIf this field is specified, the `_source` parameter defaults to false.", + "description": "A comma-separated list of stored fields to return as part of a hit.\nIf no fields are specified, no stored fields are included in the response.\nIf this field is specified, the `_source` parameter defaults to `false`.", "name": "stored_fields", "required": false, "type": { @@ -18503,7 +18597,7 @@ } }, { - "description": "Specific version type: `external`, `external_gte`.", + "description": "The version type.", "name": "version_type", "required": false, "type": { @@ -18515,7 +18609,7 @@ } } ], - "specLocation": "_global/exists/DocumentExistsRequest.ts#L31-L107" + "specLocation": "_global/exists/DocumentExistsRequest.ts#L31-L136" }, { "body": { @@ -18535,7 +18629,7 @@ "body": { "kind": "no_body" }, - "description": "Check for a document source.\nChecks if a document's `_source` is stored.", + "description": "Check for a document source.\n\nCheck whether a document source exists in an index.\nFor example:\n\n```\nHEAD my-index-000001/_source/1\n```\n\nA document's source is not available if it is disabled in the mapping.", "inherits": { "type": { "name": "RequestBase", @@ -18549,7 +18643,7 @@ }, "path": [ { - "description": "Identifier of the document.", + "description": "A unique identifier for the document.", "name": "id", "required": true, "type": { @@ -18561,7 +18655,7 @@ } }, { - "description": "Comma-separated list of data streams, indices, and aliases.\nSupports wildcards (`*`).", + "description": "A comma-separated list of data streams, indices, and aliases.\nIt supports wildcards (`*`).", "name": "index", "required": true, "type": { @@ -18575,7 +18669,7 @@ ], "query": [ { - "description": "Specifies the node or shard the operation should be performed on.\nRandom by default.", + "description": "The node or shard the operation should be performed on.\nBy default, the operation is randomized between the shard replicas.", "name": "preference", "required": false, "type": { @@ -18587,9 +18681,9 @@ } }, { - "description": "If true, the request is real-time as opposed to near-real-time.", - "docId": "realtime", - "docUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/docs-get.html#realtime", + "description": "If `true`, the request is real-time as opposed to near-real-time.", + "extDocId": "realtime", + "extDocUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/docs-get.html#realtime", "name": "realtime", "required": false, "serverDefault": true, @@ -18602,7 +18696,7 @@ } }, { - "description": "If `true`, Elasticsearch refreshes all shards involved in the delete by query after the request completes.", + "description": "If `true`, the request refreshes the relevant shards before retrieving the document.\nSetting it to `true` should be done after careful thought and verification that this does not cause a heavy load on the system (and slow down indexing).", "name": "refresh", "required": false, "serverDefault": false, @@ -18615,9 +18709,9 @@ } }, { - "description": "Target the specified primary shard.", - "docId": "routing", - "docUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/docs-get.html#get-routing", + "description": "A custom value used to route operations to a specific shard.", + "extDocId": "routing", + "extDocUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/docs-get.html#get-routing", "name": "routing", "required": false, "type": { @@ -18629,7 +18723,7 @@ } }, { - "description": "`true` or `false` to return the `_source` field or not, or a list of fields to return.", + "description": "Indicates whether to return the `_source` field (`true` or `false`) or lists the fields to return.", "name": "_source", "required": false, "type": { @@ -18665,7 +18759,7 @@ } }, { - "description": "Explicit version number for concurrency control.\nThe specified version must match the current version of the document for the request to succeed.", + "description": "The version number for concurrency control.\nIt must match the current version of the document for the request to succeed.", "name": "version", "required": false, "type": { @@ -18677,7 +18771,7 @@ } }, { - "description": "Specific version type: `external`, `external_gte`.", + "description": "The version type.", "name": "version_type", "required": false, "type": { @@ -18689,7 +18783,7 @@ } } ], - "specLocation": "_global/exists_source/SourceExistsRequest.ts#L31-L101" + "specLocation": "_global/exists_source/SourceExistsRequest.ts#L31-L113" }, { "body": { @@ -19270,7 +19364,7 @@ "body": { "kind": "no_body" }, - "description": "Get a document by its ID.\nRetrieves the document with the specified ID from an index.", + "description": "Get a document by its ID.\n\nGet a document and its source or stored fields from an index.\n\nBy default, this API is realtime and is not affected by the refresh rate of the index (when data will become visible for search).\nIn the case where stored fields are requested with the `stored_fields` parameter and the document has been updated but is not yet refreshed, the API will have to parse and analyze the source to extract the stored fields.\nTo turn off realtime behavior, set the `realtime` parameter to false.\n\n**Source filtering**\n\nBy default, the API returns the contents of the `_source` field unless you have used the `stored_fields` parameter or the `_source` field is turned off.\nYou can turn off `_source` retrieval by using the `_source` parameter:\n\n```\nGET my-index-000001/_doc/0?_source=false\n```\n\nIf you only need one or two fields from the `_source`, use the `_source_includes` or `_source_excludes` parameters to include or filter out particular fields.\nThis can be helpful with large documents where partial retrieval can save on network overhead\nBoth parameters take a comma separated list of fields or wildcard expressions.\nFor example:\n\n```\nGET my-index-000001/_doc/0?_source_includes=*.id&_source_excludes=entities\n```\n\nIf you only want to specify includes, you can use a shorter notation:\n\n```\nGET my-index-000001/_doc/0?_source=*.id\n```\n\n**Routing**\n\nIf routing is used during indexing, the routing value also needs to be specified to retrieve a document.\nFor example:\n\n```\nGET my-index-000001/_doc/2?routing=user1\n```\n\nThis request gets the document with ID 2, but it is routed based on the user.\nThe document is not fetched if the correct routing is not specified.\n\n**Distributed**\n\nThe GET operation is hashed into a specific shard ID.\nIt is then redirected to one of the replicas within that shard ID and returns the result.\nThe replicas are the primary shard and its replicas within that shard ID group.\nThis means that the more replicas you have, the better your GET scaling will be.\n\n**Versioning support**\n\nYou can use the `version` parameter to retrieve the document only if its current version is equal to the specified one.\n\nInternally, Elasticsearch has marked the old document as deleted and added an entirely new document.\nThe old version of the document doesn't disappear immediately, although you won't be able to access it.\nElasticsearch cleans up deleted documents in the background as you continue to index more data.", "inherits": { "type": { "name": "RequestBase", @@ -19284,7 +19378,7 @@ }, "path": [ { - "description": "Unique identifier of the document.", + "description": "A unique document identifier.", "name": "id", "required": true, "type": { @@ -19296,7 +19390,7 @@ } }, { - "description": "Name of the index that contains the document.", + "description": "The name of the index that contains the document.", "name": "index", "required": true, "type": { @@ -19310,7 +19404,7 @@ ], "query": [ { - "description": "Specifies the node or shard the operation should be performed on. Random by default.", + "description": "The node or shard the operation should be performed on.\nBy default, the operation is randomized between the shard replicas.\n\nIf it is set to `_local`, the operation will prefer to be run on a local allocated shard when possible.\nIf it is set to a custom value, the value is used to guarantee that the same shards will be used for the same custom value.\nThis can help with \"jumping values\" when hitting different shards in different refresh states.\nA sample value can be something like the web session ID or the user name.", "name": "preference", "required": false, "type": { @@ -19337,7 +19431,7 @@ } }, { - "description": "If true, Elasticsearch refreshes the affected shards to make this operation visible to search. If false, do nothing with refreshes.", + "description": "If `true`, the request refreshes the relevant shards before retrieving the document.\nSetting it to `true` should be done after careful thought and verification that this does not cause a heavy load on the system (and slow down indexing).", "name": "refresh", "required": false, "serverDefault": false, @@ -19350,9 +19444,9 @@ } }, { - "description": "Target the specified primary shard.", - "docId": "routing", - "docUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/docs-get.html#get-routing", + "description": "A custom value used to route operations to a specific shard.", + "extDocId": "routing", + "extDocUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/docs-get.html#get-routing", "name": "routing", "required": false, "type": { @@ -19364,7 +19458,7 @@ } }, { - "description": "True or false to return the _source field or not, or a list of fields to return.", + "description": "Indicates whether to return the `_source` field (`true` or `false`) or lists the fields to return.", "name": "_source", "required": false, "type": { @@ -19376,7 +19470,7 @@ } }, { - "description": "A comma-separated list of source fields to exclude in the response.", + "description": "A comma-separated list of source fields to exclude from the response.\nYou can also use this parameter to exclude fields from the subset specified in `_source_includes` query parameter.\nIf the `_source` parameter is `false`, this parameter is ignored.", "name": "_source_excludes", "required": false, "type": { @@ -19388,7 +19482,7 @@ } }, { - "description": "A comma-separated list of source fields to include in the response.", + "description": "A comma-separated list of source fields to include in the response.\nIf this parameter is specified, only these source fields are returned.\nYou can exclude fields from this subset using the `_source_excludes` query parameter.\nIf the `_source` parameter is `false`, this parameter is ignored.", "name": "_source_includes", "required": false, "type": { @@ -19400,7 +19494,7 @@ } }, { - "description": "List of stored fields to return as part of a hit.\nIf no fields are specified, no stored fields are included in the response.\nIf this field is specified, the `_source` parameter defaults to false.", + "description": "A comma-separated list of stored fields to return as part of a hit.\nIf no fields are specified, no stored fields are included in the response.\nIf this field is specified, the `_source` parameter defaults to `false`.\nOnly leaf fields can be retrieved with the `stored_field` option.\nObject fields can't be returned;​if specified, the request fails.", "name": "stored_fields", "required": false, "type": { @@ -19412,7 +19506,7 @@ } }, { - "description": "Explicit version number for concurrency control. The specified version must match the current version of the document for the request to succeed.", + "description": "The version number for concurrency control.\nIt must match the current version of the document for the request to succeed.", "name": "version", "required": false, "type": { @@ -19424,7 +19518,7 @@ } }, { - "description": "Specific version type: internal, external, external_gte.", + "description": "The version type.", "name": "version_type", "required": false, "type": { @@ -19436,7 +19530,7 @@ } } ], - "specLocation": "_global/get/GetRequest.ts#L31-L107" + "specLocation": "_global/get/GetRequest.ts#L31-L180" }, { "body": { @@ -19611,7 +19705,7 @@ "body": { "kind": "no_body" }, - "description": "Get a document's source.\nReturns the source of a document.", + "description": "Get a document's source.\n\nGet the source of a document.\nFor example:\n\n```\nGET my-index-000001/_source/1\n```\n\nYou can use the source filtering parameters to control which parts of the `_source` are returned:\n\n```\nGET my-index-000001/_source/1/?_source_includes=*.id&_source_excludes=entities\n```", "inherits": { "type": { "name": "RequestBase", @@ -19625,7 +19719,7 @@ }, "path": [ { - "description": "Unique identifier of the document.", + "description": "A unique document identifier.", "name": "id", "required": true, "type": { @@ -19637,7 +19731,7 @@ } }, { - "description": "Name of the index that contains the document.", + "description": "The name of the index that contains the document.", "name": "index", "required": true, "type": { @@ -19651,7 +19745,7 @@ ], "query": [ { - "description": "Specifies the node or shard the operation should be performed on. Random by default.", + "description": "The node or shard the operation should be performed on.\nBy default, the operation is randomized between the shard replicas.", "name": "preference", "required": false, "type": { @@ -19663,7 +19757,7 @@ } }, { - "description": "Boolean) If true, the request is real-time as opposed to near-real-time.", + "description": "If `true`, the request is real-time as opposed to near-real-time.", "docId": "realtiime", "name": "realtime", "required": false, @@ -19677,7 +19771,7 @@ } }, { - "description": "If true, Elasticsearch refreshes the affected shards to make this operation visible to search. If false, do nothing with refreshes.", + "description": "If `true`, the request refreshes the relevant shards before retrieving the document.\nSetting it to `true` should be done after careful thought and verification that this does not cause a heavy load on the system (and slow down indexing).", "name": "refresh", "required": false, "serverDefault": false, @@ -19690,9 +19784,9 @@ } }, { - "description": "Target the specified primary shard.", - "docId": "routing", - "docUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/docs-get.html#get-routing", + "description": "A custom value used to route operations to a specific shard.", + "extDocId": "routing", + "extDocUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/docs-get.html#get-routing", "name": "routing", "required": false, "type": { @@ -19704,7 +19798,7 @@ } }, { - "description": "True or false to return the _source field or not, or a list of fields to return.", + "description": "Indicates whether to return the `_source` field (`true` or `false`) or lists the fields to return.", "name": "_source", "required": false, "type": { @@ -19740,6 +19834,7 @@ } }, { + "description": "A comma-separated list of stored fields to return as part of a hit.", "name": "stored_fields", "required": false, "type": { @@ -19751,7 +19846,7 @@ } }, { - "description": "Explicit version number for concurrency control. The specified version must match the current version of the document for the request to succeed.", + "description": "The version number for concurrency control.\nIt must match the current version of the document for the request to succeed.", "name": "version", "required": false, "type": { @@ -19763,7 +19858,7 @@ } }, { - "description": "Specific version type: internal, external, external_gte.", + "description": "The version type.", "name": "version_type", "required": false, "type": { @@ -19775,7 +19870,7 @@ } } ], - "specLocation": "_global/get_source/SourceRequest.ts#L31-L95" + "specLocation": "_global/get_source/SourceRequest.ts#L31-L116" }, { "body": { @@ -20007,7 +20102,7 @@ } } }, - "description": "Index a document.\nAdds a JSON document to the specified data stream or index and makes it searchable.\nIf the target is an index and the document already exists, the request updates the document and increments its version.", + "description": "Create or update a document in an index.\n\nAdd a JSON document to the specified data stream or index and make it searchable.\nIf the target is an index and the document already exists, the request updates the document and increments its version.\n\nNOTE: You cannot use this API to send update requests for existing documents in a data stream.\n\nIf the Elasticsearch security features are enabled, you must have the following index privileges for the target data stream, index, or index alias:\n\n* To add or overwrite a document using the `PUT //_doc/<_id>` request format, you must have the `create`, `index`, or `write` index privilege.\n* To add a document using the `POST //_doc/` request format, you must have the `create_doc`, `create`, `index`, or `write` index privilege.\n* To automatically create a data stream or index with this API request, you must have the `auto_configure`, `create_index`, or `manage` index privilege.\n\nAutomatic data stream creation requires a matching index template with data stream enabled.\n\nNOTE: Replica shards might not all be started when an indexing operation returns successfully.\nBy default, only the primary is required. Set `wait_for_active_shards` to change this default behavior.\n\n**Automatically create data streams and indices**\n\nIf the request's target doesn't exist and matches an index template with a `data_stream` definition, the index operation automatically creates the data stream.\n\nIf the target doesn't exist and doesn't match a data stream template, the operation automatically creates the index and applies any matching index templates.\n\nNOTE: Elasticsearch includes several built-in index templates. To avoid naming collisions with these templates, refer to index pattern documentation.\n\nIf no mapping exists, the index operation creates a dynamic mapping.\nBy default, new fields and objects are automatically added to the mapping if needed.\n\nAutomatic index creation is controlled by the `action.auto_create_index` setting.\nIf it is `true`, any index can be created automatically.\nYou can modify this setting to explicitly allow or block automatic creation of indices that match specified patterns or set it to `false` to turn off automatic index creation entirely.\nSpecify a comma-separated list of patterns you want to allow or prefix each pattern with `+` or `-` to indicate whether it should be allowed or blocked.\nWhen a list is specified, the default behaviour is to disallow.\n\nNOTE: The `action.auto_create_index` setting affects the automatic creation of indices only.\nIt does not affect the creation of data streams.\n\n**Optimistic concurrency control**\n\nIndex operations can be made conditional and only be performed if the last modification to the document was assigned the sequence number and primary term specified by the `if_seq_no` and `if_primary_term` parameters.\nIf a mismatch is detected, the operation will result in a `VersionConflictException` and a status code of `409`.\n\n**Routing**\n\nBy default, shard placement — or routing — is controlled by using a hash of the document's ID value.\nFor more explicit control, the value fed into the hash function used by the router can be directly specified on a per-operation basis using the `routing` parameter.\n\nWhen setting up explicit mapping, you can also use the `_routing` field to direct the index operation to extract the routing value from the document itself.\nThis does come at the (very minimal) cost of an additional document parsing pass.\nIf the `_routing` mapping is defined and set to be required, the index operation will fail if no routing value is provided or extracted.\n\nNOTE: Data streams do not support custom routing unless they were created with the `allow_custom_routing` setting enabled in the template.\n\n**Distributed**\n\nThe index operation is directed to the primary shard based on its route and performed on the actual node containing this shard.\nAfter the primary shard completes the operation, if needed, the update is distributed to applicable replicas.\n\n**Active shards**\n\nTo improve the resiliency of writes to the system, indexing operations can be configured to wait for a certain number of active shard copies before proceeding with the operation.\nIf the requisite number of active shard copies are not available, then the write operation must wait and retry, until either the requisite shard copies have started or a timeout occurs.\nBy default, write operations only wait for the primary shards to be active before proceeding (that is to say `wait_for_active_shards` is `1`).\nThis default can be overridden in the index settings dynamically by setting `index.write.wait_for_active_shards`.\nTo alter this behavior per operation, use the `wait_for_active_shards request` parameter.\n\nValid values are all or any positive integer up to the total number of configured copies per shard in the index (which is `number_of_replicas`+1).\nSpecifying a negative value or a number greater than the number of shard copies will throw an error.\n\nFor example, suppose you have a cluster of three nodes, A, B, and C and you create an index index with the number of replicas set to 3 (resulting in 4 shard copies, one more copy than there are nodes).\nIf you attempt an indexing operation, by default the operation will only ensure the primary copy of each shard is available before proceeding.\nThis means that even if B and C went down and A hosted the primary shard copies, the indexing operation would still proceed with only one copy of the data.\nIf `wait_for_active_shards` is set on the request to `3` (and all three nodes are up), the indexing operation will require 3 active shard copies before proceeding.\nThis requirement should be met because there are 3 active nodes in the cluster, each one holding a copy of the shard.\nHowever, if you set `wait_for_active_shards` to `all` (or to `4`, which is the same in this situation), the indexing operation will not proceed as you do not have all 4 copies of each shard active in the index.\nThe operation will timeout unless a new node is brought up in the cluster to host the fourth copy of the shard.\n\nIt is important to note that this setting greatly reduces the chances of the write operation not writing to the requisite number of shard copies, but it does not completely eliminate the possibility, because this check occurs before the write operation starts.\nAfter the write operation is underway, it is still possible for replication to fail on any number of shard copies but still succeed on the primary.\nThe `_shards` section of the API response reveals the number of shard copies on which replication succeeded and failed.\n\n**No operation (noop) updates**\n\nWhen updating a document by using this API, a new version of the document is always created even if the document hasn't changed.\nIf this isn't acceptable use the `_update` API with `detect_noop` set to `true`.\nThe `detect_noop` option isn't available on this API because it doesn’t fetch the old source and isn't able to compare it against the new source.\n\nThere isn't a definitive rule for when noop updates aren't acceptable.\nIt's a combination of lots of factors like how frequently your data source sends updates that are actually noops and how many queries per second Elasticsearch runs on the shard receiving the updates.\n\n**Versioning**\n\nEach indexed document is given a version number.\nBy default, internal versioning is used that starts at 1 and increments with each update, deletes included.\nOptionally, the version number can be set to an external value (for example, if maintained in a database).\nTo enable this functionality, `version_type` should be set to `external`.\nThe value provided must be a numeric, long value greater than or equal to 0, and less than around `9.2e+18`.\n\nNOTE: Versioning is completely real time, and is not affected by the near real time aspects of search operations.\nIf no version is provided, the operation runs without any version checks.\n\nWhen using the external version type, the system checks to see if the version number passed to the index request is greater than the version of the currently stored document.\nIf true, the document will be indexed and the new version number used.\nIf the value provided is less than or equal to the stored document's version number, a version conflict will occur and the index operation will fail. For example:\n\n```\nPUT my-index-000001/_doc/1?version=2&version_type=external\n{\n \"user\": {\n \"id\": \"elkbee\"\n }\n}\n\nIn this example, the operation will succeed since the supplied version of 2 is higher than the current document version of 1.\nIf the document was already updated and its version was set to 2 or higher, the indexing command will fail and result in a conflict (409 HTTP status code).\n\nA nice side effect is that there is no need to maintain strict ordering of async indexing operations run as a result of changes to a source database, as long as version numbers from the source database are used.\nEven the simple case of updating the Elasticsearch index using data from a database is simplified if external versioning is used, as only the latest version will be used if the index operations arrive out of order.", "generics": [ { "name": "TDocument", @@ -20027,7 +20122,7 @@ }, "path": [ { - "description": "Unique identifier for the document.", + "description": "A unique identifier for the document.\nTo automatically generate a document ID, use the `POST //_doc/` request format and omit this parameter.", "name": "id", "required": false, "type": { @@ -20039,7 +20134,7 @@ } }, { - "description": "Name of the data stream or index to target.", + "description": "The name of the data stream or index to target.\nIf the target doesn't exist and matches the name or wildcard (`*`) pattern of an index template with a `data_stream` definition, this request creates the data stream.\nIf the target doesn't exist and doesn't match a data stream template, this request creates the index.\nYou can check for existing targets with the resolve index API.", "name": "index", "required": true, "type": { @@ -20054,6 +20149,8 @@ "query": [ { "description": "Only perform the operation if the document has this primary term.", + "extDocId": "optimistic-concurrency", + "extDocUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/optimistic-concurrency-control.html", "name": "if_primary_term", "required": false, "type": { @@ -20066,6 +20163,8 @@ }, { "description": "Only perform the operation if the document has this sequence number.", + "extDocId": "optimistic-concurrency", + "extDocUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/optimistic-concurrency-control.html", "name": "if_seq_no", "required": false, "type": { @@ -20077,7 +20176,7 @@ } }, { - "description": "Set to create to only index the document if it does not already exist (put if absent).\nIf a document with the specified `_id` already exists, the indexing operation will fail.\nSame as using the `/_create` endpoint.\nValid values: `index`, `create`.\nIf document id is specified, it defaults to `index`.\nOtherwise, it defaults to `create`.", + "description": "Set to `create` to only index the document if it does not already exist (put if absent).\nIf a document with the specified `_id` already exists, the indexing operation will fail.\nThe behavior is the same as using the `/_create` endpoint.\nIf a document ID is specified, this paramater defaults to `index`.\nOtherwise, it defaults to `create`.\nIf the request targets a data stream, an `op_type` of `create` is required.", "name": "op_type", "required": false, "type": { @@ -20089,7 +20188,7 @@ } }, { - "description": "ID of the pipeline to use to preprocess incoming documents.\nIf the index has a default ingest pipeline specified, then setting the value to `_none` disables the default ingest pipeline for this request.\nIf a final pipeline is configured it will always run, regardless of the value of this parameter.", + "description": "The ID of the pipeline to use to preprocess incoming documents.\nIf the index has a default ingest pipeline specified, then setting the value to `_none` disables the default ingest pipeline for this request.\nIf a final pipeline is configured it will always run, regardless of the value of this parameter.", "name": "pipeline", "required": false, "type": { @@ -20101,9 +20200,10 @@ } }, { - "description": "If `true`, Elasticsearch refreshes the affected shards to make this operation visible to search, if `wait_for` then wait for a refresh to make this operation visible to search, if `false` do nothing with refreshes.\nValid values: `true`, `false`, `wait_for`.", + "description": "If `true`, Elasticsearch refreshes the affected shards to make this operation visible to search.\nIf `wait_for`, it waits for a refresh to make this operation visible to search.\nIf `false`, it does nothing with refreshes.", "name": "refresh", "required": false, + "serverDefault": "false", "type": { "kind": "instance_of", "type": { @@ -20113,7 +20213,7 @@ } }, { - "description": "Custom value used to route operations to a specific shard.", + "description": "A custom value that is used to route operations to a specific shard.", "name": "routing", "required": false, "type": { @@ -20125,7 +20225,7 @@ } }, { - "description": "Period the request waits for the following operations: automatic index creation, dynamic mapping updates, waiting for active shards.", + "description": "The period the request waits for the following operations: automatic index creation, dynamic mapping updates, waiting for active shards.\n\nThis parameter is useful for situations where the primary shard assigned to perform the operation might not be available when the operation runs.\nSome reasons for this might be that the primary shard is currently recovering from a gateway or undergoing relocation.\nBy default, the operation will wait on the primary shard to become available for at least 1 minute before failing and responding with an error.\nThe actual wait time could be longer, particularly when multiple waits occur.", "name": "timeout", "required": false, "serverDefault": "1m", @@ -20138,7 +20238,7 @@ } }, { - "description": "Explicit version number for concurrency control.\nThe specified version must match the current version of the document for the request to succeed.", + "description": "An explicit version number for concurrency control.\nIt must be a non-negative long number.", "name": "version", "required": false, "type": { @@ -20150,7 +20250,7 @@ } }, { - "description": "Specific version type: `external`, `external_gte`.", + "description": "The version type.", "name": "version_type", "required": false, "type": { @@ -20162,7 +20262,7 @@ } }, { - "description": "The number of shard copies that must be active before proceeding with the operation.\nSet to all or any positive integer up to the total number of shards in the index (`number_of_replicas+1`).", + "description": "The number of shard copies that must be active before proceeding with the operation.\nYou can set it to `all` or any positive integer up to the total number of shards in the index (`number_of_replicas+1`).\nThe default value of `1` means it waits for each primary shard to be active.", "name": "wait_for_active_shards", "required": false, "serverDefault": "1", @@ -20188,7 +20288,7 @@ } } ], - "specLocation": "_global/index/IndexRequest.ts#L35-L129" + "specLocation": "_global/index/IndexRequest.ts#L35-L263" }, { "body": { @@ -25911,7 +26011,7 @@ }, "path": [], "query": [], - "specLocation": "_global/info/RootNodeInfoRequest.ts#L22-L39" + "specLocation": "_global/info/RootNodeInfoRequest.ts#L22-L38" }, { "body": { @@ -26178,7 +26278,7 @@ }, "path": [], "query": [], - "specLocation": "ingest/processor_grok/GrokProcessorPatternsRequest.ts#L22-L41" + "specLocation": "ingest/processor_grok/GrokProcessorPatternsRequest.ts#L22-L40" }, { "body": { @@ -35543,7 +35643,7 @@ }, "path": [], "query": [], - "specLocation": "_global/ping/PingRequest.ts#L22-L38" + "specLocation": "_global/ping/PingRequest.ts#L22-L37" }, { "body": { @@ -36499,7 +36599,7 @@ "kind": "properties", "properties": [ { - "description": "Set to proceed to continue reindexing even if there are conflicts.", + "description": "Indicates whether to continue reindexing even when there are conflicts.", "name": "conflicts", "required": false, "serverDefault": "abort", @@ -36524,7 +36624,7 @@ } }, { - "description": "The maximum number of documents to reindex.", + "description": "The maximum number of documents to reindex.\nBy default, all documents are reindexed.\nIf it is a value less then or equal to `scroll_size`, a scroll will not be used to retrieve the results for the operation.\n\nIf `conflicts` is set to `proceed`, the reindex operation could attempt to reindex more documents from the source than `max_docs` until it has successfully indexed `max_docs` documents into the target or it has gone through every document in the source query.", "name": "max_docs", "required": false, "type": { @@ -36572,7 +36672,7 @@ } ] }, - "description": "Reindex documents.\nCopies documents from a source to a destination. The source can be any existing index, alias, or data stream. The destination must differ from the source. For example, you cannot reindex a data stream into itself.", + "description": "Reindex documents.\n\nCopy documents from a source to a destination.\nYou can copy all documents to the destination index or reindex a subset of the documents.\nThe source can be any existing index, alias, or data stream.\nThe destination must differ from the source.\nFor example, you cannot reindex a data stream into itself.\n\nIMPORTANT: Reindex requires `_source` to be enabled for all documents in the source.\nThe destination should be configured as wanted before calling the reindex API.\nReindex does not copy the settings from the source or its associated template.\nMappings, shard counts, and replicas, for example, must be configured ahead of time.\n\nIf the Elasticsearch security features are enabled, you must have the following security privileges:\n\n* The `read` index privilege for the source data stream, index, or alias.\n* The `write` index privilege for the destination data stream, index, or index alias.\n* To automatically create a data stream or index with a reindex API request, you must have the `auto_configure`, `create_index`, or `manage` index privilege for the destination data stream, index, or alias.\n* If reindexing from a remote cluster, the `source.remote.user` must have the `monitor` cluster privilege and the `read` index privilege for the source data stream, index, or alias.\n\nIf reindexing from a remote cluster, you must explicitly allow the remote host in the `reindex.remote.whitelist` setting.\nAutomatic data stream creation requires a matching index template with data stream enabled.\n\nThe `dest` element can be configured like the index API to control optimistic concurrency control.\nOmitting `version_type` or setting it to `internal` causes Elasticsearch to blindly dump documents into the destination, overwriting any that happen to have the same ID.\n\nSetting `version_type` to `external` causes Elasticsearch to preserve the `version` from the source, create any documents that are missing, and update any documents that have an older version in the destination than they do in the source.\n\nSetting `op_type` to `create` causes the reindex API to create only missing documents in the destination.\nAll existing documents will cause a version conflict.\n\nIMPORTANT: Because data streams are append-only, any reindex request to a destination data stream must have an `op_type` of `create`.\nA reindex can only add new documents to a destination data stream.\nIt cannot update existing documents in a destination data stream.\n\nBy default, version conflicts abort the reindex process.\nTo continue reindexing if there are conflicts, set the `conflicts` request body property to `proceed`.\nIn this case, the response includes a count of the version conflicts that were encountered.\nNote that the handling of other error types is unaffected by the `conflicts` property.\nAdditionally, if you opt to count version conflicts, the operation could attempt to reindex more documents from the source than `max_docs` until it has successfully indexed `max_docs` documents into the target or it has gone through every document in the source query.\n\nNOTE: The reindex API makes no effort to handle ID collisions.\nThe last document written will \"win\" but the order isn't usually predictable so it is not a good idea to rely on this behavior.\nInstead, make sure that IDs are unique by using a script.\n\n**Running reindex asynchronously**\n\nIf the request contains `wait_for_completion=false`, Elasticsearch performs some preflight checks, launches the request, and returns a task you can use to cancel or get the status of the task.\nElasticsearch creates a record of this task as a document at `_tasks/`.\n\n**Reindex from multiple sources**\n\nIf you have many sources to reindex it is generally better to reindex them one at a time rather than using a glob pattern to pick up multiple sources.\nThat way you can resume the process if there are any errors by removing the partially completed source and starting over.\nIt also makes parallelizing the process fairly simple: split the list of sources to reindex and run each list in parallel.\n\nFor example, you can use a bash script like this:\n\n```\nfor index in i1 i2 i3 i4 i5; do\n curl -HContent-Type:application/json -XPOST localhost:9200/_reindex?pretty -d'{\n \"source\": {\n \"index\": \"'$index'\"\n },\n \"dest\": {\n \"index\": \"'$index'-reindexed\"\n }\n }'\ndone\n```\n\n**Throttling**\n\nSet `requests_per_second` to any positive decimal number (`1.4`, `6`, `1000`, for example) to throttle the rate at which reindex issues batches of index operations.\nRequests are throttled by padding each batch with a wait time.\nTo turn off throttling, set `requests_per_second` to `-1`.\n\nThe throttling is done by waiting between batches so that the scroll that reindex uses internally can be given a timeout that takes into account the padding.\nThe padding time is the difference between the batch size divided by the `requests_per_second` and the time spent writing.\nBy default the batch size is `1000`, so if `requests_per_second` is set to `500`:\n\n```\ntarget_time = 1000 / 500 per second = 2 seconds\nwait_time = target_time - write_time = 2 seconds - .5 seconds = 1.5 seconds\n```\n\nSince the batch is issued as a single bulk request, large batch sizes cause Elasticsearch to create many requests and then wait for a while before starting the next set.\nThis is \"bursty\" instead of \"smooth\".\n\n**Slicing**\n\nReindex supports sliced scroll to parallelize the reindexing process.\nThis parallelization can improve efficiency and provide a convenient way to break the request down into smaller parts.\n\nNOTE: Reindexing from remote clusters does not support manual or automatic slicing.\n\nYou can slice a reindex request manually by providing a slice ID and total number of slices to each request.\nYou can also let reindex automatically parallelize by using sliced scroll to slice on `_id`.\nThe `slices` parameter specifies the number of slices to use.\n\nAdding `slices` to the reindex request just automates the manual process, creating sub-requests which means it has some quirks:\n\n* You can see these requests in the tasks API. These sub-requests are \"child\" tasks of the task for the request with slices.\n* Fetching the status of the task for the request with `slices` only contains the status of completed slices.\n* These sub-requests are individually addressable for things like cancellation and rethrottling.\n* Rethrottling the request with `slices` will rethrottle the unfinished sub-request proportionally.\n* Canceling the request with `slices` will cancel each sub-request.\n* Due to the nature of `slices`, each sub-request won't get a perfectly even portion of the documents. All documents will be addressed, but some slices may be larger than others. Expect larger slices to have a more even distribution.\n* Parameters like `requests_per_second` and `max_docs` on a request with `slices` are distributed proportionally to each sub-request. Combine that with the previous point about distribution being uneven and you should conclude that using `max_docs` with `slices` might not result in exactly `max_docs` documents being reindexed.\n* Each sub-request gets a slightly different snapshot of the source, though these are all taken at approximately the same time.\n\nIf slicing automatically, setting `slices` to `auto` will choose a reasonable number for most indices.\nIf slicing manually or otherwise tuning automatic slicing, use the following guidelines.\n\nQuery performance is most efficient when the number of slices is equal to the number of shards in the index.\nIf that number is large (for example, `500`), choose a lower number as too many slices will hurt performance.\nSetting slices higher than the number of shards generally does not improve efficiency and adds overhead.\n\nIndexing performance scales linearly across available resources with the number of slices.\n\nWhether query or indexing performance dominates the runtime depends on the documents being reindexed and cluster resources.\n\n**Modify documents during reindexing**\n\nLike `_update_by_query`, reindex operations support a script that modifies the document.\nUnlike `_update_by_query`, the script is allowed to modify the document's metadata.\n\nJust as in `_update_by_query`, you can set `ctx.op` to change the operation that is run on the destination.\nFor example, set `ctx.op` to `noop` if your script decides that the document doesn’t have to be indexed in the destination. This \"no operation\" will be reported in the `noop` counter in the response body.\nSet `ctx.op` to `delete` if your script decides that the document must be deleted from the destination.\nThe deletion will be reported in the `deleted` counter in the response body.\nSetting `ctx.op` to anything else will return an error, as will setting any other field in `ctx`.\n\nThink of the possibilities! Just be careful; you are able to change:\n\n* `_id`\n* `_index`\n* `_version`\n* `_routing`\n\nSetting `_version` to `null` or clearing it from the `ctx` map is just like not sending the version in an indexing request.\nIt will cause the document to be overwritten in the destination regardless of the version on the target or the version type you use in the reindex API.\n\n**Reindex from remote**\n\nReindex supports reindexing from a remote Elasticsearch cluster.\nThe `host` parameter must contain a scheme, host, port, and optional path.\nThe `username` and `password` parameters are optional and when they are present the reindex operation will connect to the remote Elasticsearch node using basic authentication.\nBe sure to use HTTPS when using basic authentication or the password will be sent in plain text.\nThere are a range of settings available to configure the behavior of the HTTPS connection.\n\nWhen using Elastic Cloud, it is also possible to authenticate against the remote cluster through the use of a valid API key.\nRemote hosts must be explicitly allowed with the `reindex.remote.whitelist` setting.\nIt can be set to a comma delimited list of allowed remote host and port combinations.\nScheme is ignored; only the host and port are used.\nFor example:\n\n```\nreindex.remote.whitelist: [otherhost:9200, another:9200, 127.0.10.*:9200, localhost:*\"]\n```\n\nThe list of allowed hosts must be configured on any nodes that will coordinate the reindex.\nThis feature should work with remote clusters of any version of Elasticsearch.\nThis should enable you to upgrade from any version of Elasticsearch to the current version by reindexing from a cluster of the old version.\n\nWARNING: Elasticsearch does not support forward compatibility across major versions.\nFor example, you cannot reindex from a 7.x cluster into a 6.x cluster.\n\nTo enable queries sent to older versions of Elasticsearch, the `query` parameter is sent directly to the remote host without validation or modification.\n\nNOTE: Reindexing from remote clusters does not support manual or automatic slicing.\n\nReindexing from a remote server uses an on-heap buffer that defaults to a maximum size of 100mb.\nIf the remote index includes very large documents you'll need to use a smaller batch size.\nIt is also possible to set the socket read timeout on the remote connection with the `socket_timeout` field and the connection timeout with the `connect_timeout` field.\nBoth default to 30 seconds.\n\n**Configuring SSL parameters**\n\nReindex from remote supports configurable SSL settings.\nThese must be specified in the `elasticsearch.yml` file, with the exception of the secure settings, which you add in the Elasticsearch keystore.\nIt is not possible to configure SSL in the body of the reindex request.", "inherits": { "type": { "name": "RequestBase", @@ -36600,7 +36700,7 @@ } }, { - "description": "The throttle for this request in sub-requests per second.\nDefaults to no throttle.", + "description": "The throttle for this request in sub-requests per second.\nBy default, there is no throttle.", "name": "requests_per_second", "required": false, "serverDefault": -1, @@ -36613,7 +36713,7 @@ } }, { - "description": "Specifies how long a consistent view of the index should be maintained for scrolled search.", + "description": "The period of time that a consistent view of the index should be maintained for scrolled search.", "name": "scroll", "required": false, "type": { @@ -36625,7 +36725,9 @@ } }, { - "description": "The number of slices this task should be divided into.\nDefaults to 1 slice, meaning the task isn’t sliced into subtasks.", + "description": "The number of slices this task should be divided into.\nIt defaults to one slice, which means the task isn't sliced into subtasks.\n\nReindex supports sliced scroll to parallelize the reindexing process.\nThis parallelization can improve efficiency and provide a convenient way to break the request down into smaller parts.\n\nNOTE: Reindexing from remote clusters does not support manual or automatic slicing.\n\nIf set to `auto`, Elasticsearch chooses the number of slices to use.\nThis setting will use one slice per shard, up to a certain limit.\nIf there are multiple sources, it will choose the number of slices based on the index or backing index with the smallest number of shards.", + "extDocId": "slice-scroll", + "extDocUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/paginate-search-results.html#slice-scroll", "name": "slices", "required": false, "serverDefault": "1", @@ -36638,7 +36740,7 @@ } }, { - "description": "Period each indexing waits for automatic index creation, dynamic mapping updates, and waiting for active shards.", + "description": "The period each indexing waits for automatic index creation, dynamic mapping updates, and waiting for active shards.\nBy default, Elasticsearch waits for at least one minute before failing.\nThe actual wait time could be longer, particularly when multiple waits occur.", "name": "timeout", "required": false, "serverDefault": "1m", @@ -36651,7 +36753,7 @@ } }, { - "description": "The number of shard copies that must be active before proceeding with the operation.\nSet to `all` or any positive integer up to the total number of shards in the index (`number_of_replicas+1`).", + "description": "The number of shard copies that must be active before proceeding with the operation.\nSet it to `all` or any positive integer up to the total number of shards in the index (`number_of_replicas+1`).\nThe default value is one, which means it waits for each primary shard to be active.", "name": "wait_for_active_shards", "required": false, "serverDefault": "1", @@ -36690,13 +36792,14 @@ } } ], - "specLocation": "_global/reindex/ReindexRequest.ts#L27-L110" + "specLocation": "_global/reindex/ReindexRequest.ts#L27-L309" }, { "body": { "kind": "properties", "properties": [ { + "description": "The number of scroll responses that were pulled back by the reindex.", "name": "batches", "required": false, "type": { @@ -36708,6 +36811,7 @@ } }, { + "description": "The number of documents that were successfully created.", "name": "created", "required": false, "type": { @@ -36719,6 +36823,7 @@ } }, { + "description": "The number of documents that were successfully deleted.", "name": "deleted", "required": false, "type": { @@ -36730,6 +36835,7 @@ } }, { + "description": "If there were any unrecoverable errors during the process, it is an array of those failures.\nIf this array is not empty, the request ended because of those failures.\nReindex is implemented using batches and any failure causes the entire process to end but all failures in the current batch are collected into the array.\nYou can use the `conflicts` option to prevent the reindex from ending on version conflicts.", "name": "failures", "required": false, "type": { @@ -36744,6 +36850,7 @@ } }, { + "description": "The number of documents that were ignored because the script used for the reindex returned a `noop` value for `ctx.op`.", "name": "noops", "required": false, "type": { @@ -36755,6 +36862,7 @@ } }, { + "description": "The number of retries attempted by reindex.", "name": "retries", "required": false, "type": { @@ -36766,6 +36874,7 @@ } }, { + "description": "The number of requests per second effectively run during the reindex.", "name": "requests_per_second", "required": false, "type": { @@ -36799,6 +36908,7 @@ } }, { + "description": "The number of milliseconds the request slept to conform to `requests_per_second`.", "name": "throttled_millis", "required": false, "type": { @@ -36819,6 +36929,7 @@ } }, { + "description": "This field should always be equal to zero in a reindex response.\nIt has meaning only when using the task API, where it indicates the next time (in milliseconds since epoch) that a throttled request will be run again in order to conform to `requests_per_second`.", "name": "throttled_until_millis", "required": false, "type": { @@ -36839,6 +36950,7 @@ } }, { + "description": "If any of the requests that ran during the reindex timed out, it is `true`.", "name": "timed_out", "required": false, "type": { @@ -36850,6 +36962,7 @@ } }, { + "description": "The total milliseconds the entire operation took.", "name": "took", "required": false, "type": { @@ -36870,6 +36983,7 @@ } }, { + "description": "The number of documents that were successfully processed.", "name": "total", "required": false, "type": { @@ -36881,6 +36995,7 @@ } }, { + "description": "The number of documents that were successfully updated.\nThat is to say, a document with the same ID already existed before the reindex updated it.", "name": "updated", "required": false, "type": { @@ -36892,6 +37007,7 @@ } }, { + "description": "The number of version conflicts that occurred.", "name": "version_conflicts", "required": false, "type": { @@ -36909,7 +37025,7 @@ "name": "Response", "namespace": "_global.reindex" }, - "specLocation": "_global/reindex/ReindexResponse.ts#L26-L45" + "specLocation": "_global/reindex/ReindexResponse.ts#L26-L92" }, { "attachedBehaviors": [ @@ -39890,7 +40006,7 @@ }, "path": [], "query": [], - "specLocation": "security/authenticate/SecurityAuthenticateRequest.ts#L22-L42" + "specLocation": "security/authenticate/SecurityAuthenticateRequest.ts#L22-L41" }, { "body": { @@ -40067,7 +40183,7 @@ "kind": "properties", "properties": [ { - "description": "Expiration time for the API key. By default, API keys never expire.", + "description": "The expiration time for the API key.\nBy default, API keys never expire.", "name": "expiration", "required": false, "type": { @@ -40079,7 +40195,7 @@ } }, { - "description": "Specifies the name for this API key.", + "description": "A name for the API key.", "name": "name", "required": false, "type": { @@ -40091,9 +40207,9 @@ } }, { - "description": "An array of role descriptors for this API key. This parameter is optional. When it is not specified or is an empty array, then the API key will have a point in time snapshot of permissions of the authenticated user. If you supply role descriptors then the resultant permissions would be an intersection of API keys permissions and authenticated user’s permissions thereby limiting the access scope for API keys. The structure of role descriptor is the same as the request for create role API. For more details, see create or update roles API.", - "docId": "security-api-put-role", - "docUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/security-api-put-role.html", + "description": "An array of role descriptors for this API key.\nWhen it is not specified or it is an empty array, the API key will have a point in time snapshot of permissions of the authenticated user.\nIf you supply role descriptors, the resultant permissions are an intersection of API keys permissions and the authenticated user's permissions thereby limiting the access scope for API keys.\nThe structure of role descriptor is the same as the request for the create role API.\nFor more details, refer to the create or update roles API.\n\nNOTE: Due to the way in which this permission intersection is calculated, it is not possible to create an API key that is a child of another API key, unless the derived key is created without any privileges.\nIn this case, you must explicitly specify a role descriptor with no privileges.\nThe derived API key can be used for authentication; it will not have authority to call Elasticsearch APIs.", + "extDocId": "security-api-put-role", + "extDocUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/security-api-put-role.html", "name": "role_descriptors", "required": false, "type": { @@ -40135,7 +40251,7 @@ } ] }, - "description": "Create an API key.\n\nCreate an API key for access without requiring basic authentication.\nA successful request returns a JSON structure that contains the API key, its unique id, and its name.\nIf applicable, it also returns expiration information for the API key in milliseconds.\nNOTE: By default, API keys never expire. You can specify expiration information when you create the API keys.", + "description": "Create an API key.\n\nCreate an API key for access without requiring basic authentication.\n\nIMPORTANT: If the credential that is used to authenticate this request is an API key, the derived API key cannot have any privileges.\nIf you specify privileges, the API returns an error.\n\nA successful request returns a JSON structure that contains the API key, its unique id, and its name.\nIf applicable, it also returns expiration information for the API key in milliseconds.\n\nNOTE: By default, API keys never expire. You can specify expiration information when you create the API keys.\n\nThe API keys are created by the Elasticsearch API key service, which is automatically enabled.\nTo configure or turn off the API key service, refer to API key service setting documentation.", "inherits": { "type": { "name": "RequestBase", @@ -40162,7 +40278,7 @@ } } ], - "specLocation": "security/create_api_key/SecurityCreateApiKeyRequest.ts#L26-L67" + "specLocation": "security/create_api_key/SecurityCreateApiKeyRequest.ts#L26-L86" }, { "body": { @@ -40464,7 +40580,7 @@ } ] }, - "description": "Check user privileges.\n\nDetermine whether the specified user has a specified list of privileges.", + "description": "Check user privileges.\n\nDetermine whether the specified user has a specified list of privileges.\nAll users can use this API, but only to determine their own privileges.\nTo check the privileges of other users, you must use the run as feature.", "inherits": { "type": { "name": "RequestBase", @@ -40491,7 +40607,7 @@ } ], "query": [], - "specLocation": "security/has_privileges/SecurityHasPrivilegesRequest.ts#L25-L57" + "specLocation": "security/has_privileges/SecurityHasPrivilegesRequest.ts#L25-L59" }, { "body": { @@ -40581,7 +40697,7 @@ "name": "Response", "namespace": "security.has_privileges" }, - "specLocation": "security/has_privileges/SecurityHasPrivilegesResponse.ts#L24-L32" + "specLocation": "security/has_privileges/SecurityHasPrivilegesResponse.ts#L24-L35" }, { "attachedBehaviors": [ @@ -40629,7 +40745,7 @@ } }, { - "description": "Can be used to query API keys owned by the currently authenticated user.\nThe `realm_name` or `username` parameters cannot be specified when this parameter is set to `true` as they are assumed to be the currently authenticated ones.", + "description": "Query API keys owned by the currently authenticated user.\nThe `realm_name` or `username` parameters cannot be specified when this parameter is set to `true` as they are assumed to be the currently authenticated ones.\n\nNOTE: At least one of `ids`, `name`, `username`, and `realm_name` must be specified if `owner` is `false`.", "name": "owner", "required": false, "serverDefault": false, @@ -40654,7 +40770,7 @@ } }, { - "description": "The username of a user.\nThis parameter cannot be used with either `ids` or `name`, or when `owner` flag is set to `true`.", + "description": "The username of a user.\nThis parameter cannot be used with either `ids` or `name` or when `owner` flag is set to `true`.", "name": "username", "required": false, "type": { @@ -40667,7 +40783,7 @@ } ] }, - "description": "Invalidate API keys.\n\nThis API invalidates API keys created by the create API key or grant API key APIs.\nInvalidated API keys fail authentication, but they can still be viewed using the get API key information and query API key information APIs, for at least the configured retention period, until they are automatically deleted.\nThe `manage_api_key` privilege allows deleting any API keys.\nThe `manage_own_api_key` only allows deleting API keys that are owned by the user.\nIn addition, with the `manage_own_api_key` privilege, an invalidation request must be issued in one of the three formats:\n- Set the parameter `owner=true`.\n- Or, set both `username` and `realm_name` to match the user’s identity.\n- Or, if the request is issued by an API key, that is to say an API key invalidates itself, specify its ID in the `ids` field.", + "description": "Invalidate API keys.\n\nThis API invalidates API keys created by the create API key or grant API key APIs.\nInvalidated API keys fail authentication, but they can still be viewed using the get API key information and query API key information APIs, for at least the configured retention period, until they are automatically deleted.\n\nTo use this API, you must have at least the `manage_security`, `manage_api_key`, or `manage_own_api_key` cluster privileges.\nThe `manage_security` privilege allows deleting any API key, including both REST and cross cluster API keys.\nThe `manage_api_key` privilege allows deleting any REST API key, but not cross cluster API keys.\nThe `manage_own_api_key` only allows deleting REST API keys that are owned by the user.\nIn addition, with the `manage_own_api_key` privilege, an invalidation request must be issued in one of the three formats:\n\n- Set the parameter `owner=true`.\n- Or, set both `username` and `realm_name` to match the user's identity.\n- Or, if the request is issued by an API key, that is to say an API key invalidates itself, specify its ID in the `ids` field.", "inherits": { "type": { "name": "RequestBase", @@ -40681,13 +40797,14 @@ }, "path": [], "query": [], - "specLocation": "security/invalidate_api_key/SecurityInvalidateApiKeyRequest.ts#L23-L76" + "specLocation": "security/invalidate_api_key/SecurityInvalidateApiKeyRequest.ts#L23-L82" }, { "body": { "kind": "properties", "properties": [ { + "description": "The number of errors that were encountered when invalidating the API keys.", "name": "error_count", "required": true, "type": { @@ -40699,6 +40816,7 @@ } }, { + "description": "Details about the errors.\nThis field is not present in the response when `error_count` is `0`.", "name": "error_details", "required": false, "type": { @@ -40713,6 +40831,7 @@ } }, { + "description": "The IDs of the API keys that were invalidated as part of this request.", "name": "invalidated_api_keys", "required": true, "type": { @@ -40727,6 +40846,7 @@ } }, { + "description": "The IDs of the API keys that were already invalidated.", "name": "previously_invalidated_api_keys", "required": true, "type": { @@ -40747,7 +40867,7 @@ "name": "Response", "namespace": "security.invalidate_api_key" }, - "specLocation": "security/invalidate_api_key/SecurityInvalidateApiKeyResponse.ts#L23-L30" + "specLocation": "security/invalidate_api_key/SecurityInvalidateApiKeyResponse.ts#L23-L46" }, { "attachedBehaviors": [ @@ -40783,7 +40903,7 @@ } }, { - "description": "A query to filter which API keys to return.\nIf the query parameter is missing, it is equivalent to a `match_all` query.\nThe query supports a subset of query types, including `match_all`, `bool`, `term`, `terms`, `match`,\n`ids`, `prefix`, `wildcard`, `exists`, `range`, and `simple_query_string`.\nYou can query the following public information associated with an API key: `id`, `type`, `name`,\n`creation`, `expiration`, `invalidated`, `invalidation`, `username`, `realm`, and `metadata`.", + "description": "A query to filter which API keys to return.\nIf the query parameter is missing, it is equivalent to a `match_all` query.\nThe query supports a subset of query types, including `match_all`, `bool`, `term`, `terms`, `match`,\n`ids`, `prefix`, `wildcard`, `exists`, `range`, and `simple_query_string`.\nYou can query the following public information associated with an API key: `id`, `type`, `name`,\n`creation`, `expiration`, `invalidated`, `invalidation`, `username`, `realm`, and `metadata`.\n\nNOTE: The queryable string values associated with API keys are internally mapped as keywords.\nConsequently, if no `analyzer` parameter is specified for a `match` query, then the provided match query string is interpreted as a single keyword value.\nSuch a match query is hence equivalent to a `term` query.", "name": "query", "required": false, "type": { @@ -40795,7 +40915,7 @@ } }, { - "description": "Starting document offset.\nBy default, you cannot page through more than 10,000 hits using the from and size parameters.\nTo page through more hits, use the `search_after` parameter.", + "description": "The starting document offset.\nIt must not be negative.\nBy default, you cannot page through more than 10,000 hits using the `from` and `size` parameters.\nTo page through more hits, use the `search_after` parameter.", "name": "from", "required": false, "serverDefault": 0, @@ -40808,9 +40928,9 @@ } }, { - "description": "Other than `id`, all public fields of an API key are eligible for sorting.\nIn addition, sort can also be applied to the `_doc` field to sort by index order.", - "docId": "sort-search-results", - "docUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/sort-search-results.html", + "description": "The sort definition.\nOther than `id`, all public fields of an API key are eligible for sorting.\nIn addition, sort can also be applied to the `_doc` field to sort by index order.", + "extDocId": "sort-search-results", + "extDocUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/sort-search-results.html", "name": "sort", "required": false, "type": { @@ -40822,7 +40942,7 @@ } }, { - "description": "The number of hits to return.\nBy default, you cannot page through more than 10,000 hits using the `from` and `size` parameters.\nTo page through more hits, use the `search_after` parameter.", + "description": "The number of hits to return.\nIt must not be negative.\nThe `size` parameter can be set to `0`, in which case no API key matches are returned, only the aggregation results.\nBy default, you cannot page through more than 10,000 hits using the `from` and `size` parameters.\nTo page through more hits, use the `search_after` parameter.", "name": "size", "required": false, "serverDefault": 10, @@ -40835,7 +40955,9 @@ } }, { - "description": "Search after definition", + "description": "The search after definition.", + "extDocId": "search-after", + "extDocUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/paginate-search-results.html#search-after", "name": "search_after", "required": false, "type": { @@ -40848,7 +40970,7 @@ } ] }, - "description": "Find API keys with a query.\n\nGet a paginated list of API keys and their information. You can optionally filter the results with a query.", + "description": "Find API keys with a query.\n\nGet a paginated list of API keys and their information.\nYou can optionally filter the results with a query.\n\nTo use this API, you must have at least the `manage_own_api_key` or the `read_security` cluster privileges.\nIf you have only the `manage_own_api_key` privilege, this API returns only the API keys that you own.\nIf you have the `read_security`, `manage_api_key`, or greater privileges (including `manage_security`), this API returns all API keys regardless of ownership.", "inherits": { "type": { "name": "RequestBase", @@ -40869,7 +40991,7 @@ "since": "8.5.0" } }, - "description": "Return the snapshot of the owner user's role descriptors associated with the API key.\nAn API key's actual permission is the intersection of its assigned role descriptors and the owner user's role descriptors.", + "description": "Return the snapshot of the owner user's role descriptors associated with the API key.\nAn API key's actual permission is the intersection of its assigned role descriptors and the owner user's role descriptors (effectively limited by it).\nAn API key cannot retrieve any API key’s limited-by role descriptors (including itself) unless it has `manage_api_key` or higher privileges.", "name": "with_limited_by", "required": false, "type": { @@ -40887,7 +41009,7 @@ "since": "8.14.0" } }, - "description": "Determines whether to also retrieve the profile uid, for the API key owner principal, if it exists.", + "description": "Determines whether to also retrieve the profile UID for the API key owner principal.\nIf it exists, the profile UID is returned under the `profile_uid` response field for each API key.", "name": "with_profile_uid", "required": false, "serverDefault": false, @@ -40919,7 +41041,7 @@ } } ], - "specLocation": "security/query_api_keys/QueryApiKeysRequest.ts#L26-L108" + "specLocation": "security/query_api_keys/QueryApiKeysRequest.ts#L26-L124" }, { "body": { @@ -41004,9 +41126,7 @@ "kind": "properties", "properties": [ { - "description": "An array of role descriptors for this API key. This parameter is optional. When it is not specified or is an empty array, then the API key will have a point in time snapshot of permissions of the authenticated user. If you supply role descriptors then the resultant permissions would be an intersection of API keys permissions and authenticated user’s permissions thereby limiting the access scope for API keys. The structure of role descriptor is the same as the request for create role API. For more details, see create or update roles API.", - "docId": "security-api-put-role", - "docUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/security-api-put-role.html", + "description": "The role descriptors to assign to this API key.\nThe API key's effective permissions are an intersection of its assigned privileges and the point in time snapshot of permissions of the owner user.\nYou can assign new privileges by specifying them in this parameter.\nTo remove assigned privileges, you can supply an empty `role_descriptors` parameter, that is to say, an empty object `{}`.\nIf an API key has no assigned privileges, it inherits the owner user's full permissions.\nThe snapshot of the owner's permissions is always updated, whether you supply the `role_descriptors` parameter or not.\nThe structure of a role descriptor is the same as the request for the create API keys API.", "name": "role_descriptors", "required": false, "type": { @@ -41029,7 +41149,7 @@ } }, { - "description": "Arbitrary metadata that you want to associate with the API key. It supports nested data structure. Within the metadata object, keys beginning with _ are reserved for system usage.", + "description": "Arbitrary metadata that you want to associate with the API key.\nIt supports a nested data structure.\nWithin the metadata object, keys beginning with `_` are reserved for system usage.\nWhen specified, this value fully replaces the metadata previously associated with the API key.", "name": "metadata", "required": false, "type": { @@ -41041,7 +41161,7 @@ } }, { - "description": "Expiration time for the API key.", + "description": "The expiration time for the API key.\nBy default, API keys never expire.\nThis property can be omitted to leave the expiration unchanged.", "name": "expiration", "required": false, "type": { @@ -41054,7 +41174,7 @@ } ] }, - "description": "Update an API key.\n\nUpdates attributes of an existing API key.\nUsers can only update API keys that they created or that were granted to them.\nUse this API to update API keys created by the create API Key or grant API Key APIs.\nIf you need to apply the same update to many API keys, you can use bulk update API Keys to reduce overhead.\nIt’s not possible to update expired API keys, or API keys that have been invalidated by invalidate API Key.\nThis API supports updates to an API key’s access scope and metadata.\nThe access scope of an API key is derived from the `role_descriptors` you specify in the request, and a snapshot of the owner user’s permissions at the time of the request.\nThe snapshot of the owner’s permissions is updated automatically on every call.\nIf you don’t specify `role_descriptors` in the request, a call to this API might still change the API key’s access scope.\nThis change can occur if the owner user’s permissions have changed since the API key was created or last modified.\nTo update another user’s API key, use the `run_as` feature to submit a request on behalf of another user.\nIMPORTANT: It’s not possible to use an API key as the authentication credential for this API.\nTo update an API key, the owner user’s credentials are required.", + "description": "Update an API key.\n\nUpdate attributes of an existing API key.\nThis API supports updates to an API key's access scope, expiration, and metadata.\n\nTo use this API, you must have at least the `manage_own_api_key` cluster privilege.\nUsers can only update API keys that they created or that were granted to them.\nTo update another user’s API key, use the `run_as` feature to submit a request on behalf of another user.\n\nIMPORTANT: It's not possible to use an API key as the authentication credential for this API. The owner user’s credentials are required.\n\nUse this API to update API keys created by the create API key or grant API Key APIs.\nIf you need to apply the same update to many API keys, you can use the bulk update API keys API to reduce overhead.\nIt's not possible to update expired API keys or API keys that have been invalidated by the invalidate API key API.\n\nThe access scope of an API key is derived from the `role_descriptors` you specify in the request and a snapshot of the owner user's permissions at the time of the request.\nThe snapshot of the owner's permissions is updated automatically on every call.\n\nIMPORTANT: If you don't specify `role_descriptors` in the request, a call to this API might still change the API key's access scope.\nThis change can occur if the owner user's permissions have changed since the API key was created or last modified.", "inherits": { "type": { "name": "RequestBase", @@ -41081,14 +41201,14 @@ } ], "query": [], - "specLocation": "security/update_api_key/Request.ts#L26-L74" + "specLocation": "security/update_api_key/Request.ts#L26-L91" }, { "body": { "kind": "properties", "properties": [ { - "description": "If `true`, the API key was updated.\nIf `false`, the API key didn’t change because no change was detected.", + "description": "If `true`, the API key was updated.\nIf `false`, the API key didn't change because no change was detected.", "name": "updated", "required": true, "type": { @@ -42641,7 +42761,7 @@ "body": { "kind": "no_body" }, - "description": "Get task information.\nGet information about a task currently running in the cluster.", + "description": "Get task information.\nGet information about a task currently running in the cluster.\n\nWARNING: The task management API is new and should still be considered a beta feature.\nThe API may change in ways that are not backwards compatible.\n\nIf the task identifier is not found, a 404 response code indicates that there are no resources that match the request.", "inherits": { "type": { "name": "RequestBase", @@ -42655,7 +42775,7 @@ }, "path": [ { - "description": "ID of the task.", + "description": "The task identifier.", "name": "task_id", "required": true, "type": { @@ -42669,7 +42789,7 @@ ], "query": [ { - "description": "Period to wait for a response.\nIf no response is received before the timeout expires, the request fails and returns an error.", + "description": "The period to wait for a response.\nIf no response is received before the timeout expires, the request fails and returns an error.", "name": "timeout", "required": false, "serverDefault": "30s", @@ -42695,7 +42815,7 @@ } } ], - "specLocation": "tasks/get/GetTaskRequest.ts#L24-L58" + "specLocation": "tasks/get/GetTaskRequest.ts#L24-L64" }, { "body": { @@ -44712,7 +44832,7 @@ "kind": "properties", "properties": [ { - "description": "Set to false to disable setting 'result' in the response\nto 'noop' if no change to the document occurred.", + "description": "If `true`, the `result` in the response is set to `noop` (no operation) when there are no changes to the document.", "name": "detect_noop", "required": false, "serverDefault": true, @@ -44725,7 +44845,7 @@ } }, { - "description": "A partial update to an existing document.", + "description": "A partial update to an existing document.\nIf both `doc` and `script` are specified, `doc` is ignored.", "name": "doc", "required": false, "type": { @@ -44737,7 +44857,7 @@ } }, { - "description": "Set to true to use the contents of 'doc' as the value of 'upsert'", + "description": "If `true`, use the contents of 'doc' as the value of 'upsert'.\nNOTE: Using ingest pipelines with `doc_as_upsert` is not supported.", "name": "doc_as_upsert", "required": false, "serverDefault": false, @@ -44750,7 +44870,7 @@ } }, { - "description": "Script to execute to update the document.", + "description": "The script to run to update the document.", "name": "script", "required": false, "type": { @@ -44762,7 +44882,7 @@ } }, { - "description": "Set to true to execute the script whether or not the document exists.", + "description": "If `true`, run the script whether or not the document exists.", "name": "scripted_upsert", "required": false, "serverDefault": false, @@ -44775,7 +44895,7 @@ } }, { - "description": "Set to false to disable source retrieval. You can also specify a comma-separated\nlist of the fields you want to retrieve.", + "description": "If `false`, turn off source retrieval.\nYou can also specify a comma-separated list of the fields you want to retrieve.", "name": "_source", "required": false, "serverDefault": "true", @@ -44788,7 +44908,7 @@ } }, { - "description": "If the document does not already exist, the contents of 'upsert' are inserted as a\nnew document. If the document exists, the 'script' is executed.", + "description": "If the document does not already exist, the contents of 'upsert' are inserted as a new document.\nIf the document exists, the 'script' is run.", "name": "upsert", "required": false, "type": { @@ -44801,7 +44921,7 @@ } ] }, - "description": "Update a document.\nUpdates a document by running a script or passing a partial document.", + "description": "Update a document.\n\nUpdate a document by running a script or passing a partial document.\n\nIf the Elasticsearch security features are enabled, you must have the `index` or `write` index privilege for the target index or index alias.\n\nThe script can update, delete, or skip modifying the document.\nThe API also supports passing a partial document, which is merged into the existing document.\nTo fully replace an existing document, use the index API.\nThis operation:\n\n* Gets the document (collocated with the shard) from the index.\n* Runs the specified script.\n* Indexes the result.\n\nThe document must still be reindexed, but using this API removes some network roundtrips and reduces chances of version conflicts between the GET and the index operation.\n\nThe `_source` field must be enabled to use this API.\nIn addition to `_source`, you can access the following variables through the `ctx` map: `_index`, `_type`, `_id`, `_version`, `_routing`, and `_now` (the current timestamp).", "generics": [ { "name": "TDocument", @@ -44825,7 +44945,7 @@ }, "path": [ { - "description": "Document ID", + "description": "A unique identifier for the document to be updated.", "name": "id", "required": true, "type": { @@ -44837,7 +44957,7 @@ } }, { - "description": "The name of the index", + "description": "The name of the target index.\nBy default, the index is created automatically if it doesn't exist.", "name": "index", "required": true, "type": { @@ -44852,6 +44972,8 @@ "query": [ { "description": "Only perform the operation if the document has this primary term.", + "extDocId": "optimistic-concurrency", + "extDocUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/optimistic-concurrency-control.html", "name": "if_primary_term", "required": false, "type": { @@ -44864,6 +44986,8 @@ }, { "description": "Only perform the operation if the document has this sequence number.", + "extDocId": "optimistic-concurrency", + "extDocUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/optimistic-concurrency-control.html", "name": "if_seq_no", "required": false, "type": { @@ -44888,7 +45012,7 @@ } }, { - "description": "If 'true', Elasticsearch refreshes the affected shards to make this operation\nvisible to search, if 'wait_for' then wait for a refresh to make this operation\nvisible to search, if 'false' do nothing with refreshes.", + "description": "If 'true', Elasticsearch refreshes the affected shards to make this operation visible to search.\nIf 'wait_for', it waits for a refresh to make this operation visible to search.\nIf 'false', it does nothing with refreshes.", "name": "refresh", "required": false, "serverDefault": "false", @@ -44901,7 +45025,7 @@ } }, { - "description": "If true, the destination must be an index alias.", + "description": "If `true`, the destination must be an index alias.", "name": "require_alias", "required": false, "serverDefault": false, @@ -44914,7 +45038,7 @@ } }, { - "description": "Specify how many times should the operation be retried when a conflict occurs.", + "description": "The number of times the operation should be retried when a conflict occurs.", "name": "retry_on_conflict", "required": false, "serverDefault": 0, @@ -44927,7 +45051,7 @@ } }, { - "description": "Custom value used to route operations to a specific shard.", + "description": "A custom value used to route operations to a specific shard.", "name": "routing", "required": false, "type": { @@ -44939,7 +45063,7 @@ } }, { - "description": "Period to wait for dynamic mapping updates and active shards.\nThis guarantees Elasticsearch waits for at least the timeout before failing.\nThe actual wait time could be longer, particularly when multiple waits occur.", + "description": "The period to wait for the following operations: dynamic mapping updates and waiting for active shards.\nElasticsearch waits for at least the timeout period before failing.\nThe actual wait time could be longer, particularly when multiple waits occur.", "name": "timeout", "required": false, "serverDefault": "1m", @@ -44952,7 +45076,7 @@ } }, { - "description": "The number of shard copies that must be active before proceeding with the operations.\nSet to 'all' or any positive integer up to the total number of shards in the index\n(number_of_replicas+1). Defaults to 1 meaning the primary shard.", + "description": "The number of copies of each shard that must be active before proceeding with the operation.\nSet to 'all' or any positive integer up to the total number of shards in the index (`number_of_replicas`+1).\nThe default value of `1` means it waits for each primary shard to be active.", "name": "wait_for_active_shards", "required": false, "serverDefault": "1", @@ -44965,7 +45089,7 @@ } }, { - "description": "Set to false to disable source retrieval. You can also specify a comma-separated\nlist of the fields you want to retrieve.", + "description": "If `false`, source retrieval is turned off.\nYou can also specify a comma-separated list of the fields you want to retrieve.", "name": "_source", "required": false, "serverDefault": "true", @@ -44978,7 +45102,7 @@ } }, { - "description": "Specify the source fields you want to exclude.", + "description": "The source fields you want to exclude.", "name": "_source_excludes", "required": false, "type": { @@ -44990,7 +45114,7 @@ } }, { - "description": "Specify the source fields you want to retrieve.", + "description": "The source fields you want to retrieve.", "name": "_source_includes", "required": false, "type": { @@ -45002,7 +45126,7 @@ } } ], - "specLocation": "_global/update/UpdateRequest.ts#L38-L160" + "specLocation": "_global/update/UpdateRequest.ts#L38-L189" }, { "body": { @@ -45767,7 +45891,7 @@ "name": "OperationType", "namespace": "_global.bulk" }, - "specLocation": "_global/bulk/types.ts#L83-L88" + "specLocation": "_global/bulk/types.ts#L85-L90" }, { "kind": "enum", @@ -45873,6 +45997,7 @@ }, "properties": [ { + "description": "The name of the index the document belongs to.", "name": "_index", "required": true, "type": { @@ -45884,6 +46009,7 @@ } }, { + "description": "If the `stored_fields` parameter is set to `true` and `found` is `true`, it contains the document fields stored in the index.", "name": "fields", "required": false, "type": { @@ -45916,6 +46042,7 @@ } }, { + "description": "Indicates whether the document exists.", "name": "found", "required": true, "type": { @@ -45927,6 +46054,7 @@ } }, { + "description": "The unique identifier for the document.", "name": "_id", "required": true, "type": { @@ -45938,6 +46066,8 @@ } }, { + "description": "The primary term assigned to the document for the indexing operation.", + "extDocId": "optimistic_concurrency", "name": "_primary_term", "required": false, "type": { @@ -45949,6 +46079,7 @@ } }, { + "description": "The explicit routing, if set.", "name": "_routing", "required": false, "type": { @@ -45960,6 +46091,8 @@ } }, { + "description": "The sequence number assigned to the document for the indexing operation.\nSequence numbers are used to ensure an older version of a document doesn't overwrite a newer version.", + "extDocId": "optimistic_concurrency", "name": "_seq_no", "required": false, "type": { @@ -45971,6 +46104,7 @@ } }, { + "description": "If `found` is `true`, it contains the document data formatted in JSON.\nIf the `_source` parameter is set to `false` or the `stored_fields` parameter is set to `true`, it is excluded.", "name": "_source", "required": false, "type": { @@ -45982,6 +46116,7 @@ } }, { + "description": "The document version, which is ncremented each time the document is updated.", "name": "_version", "required": false, "type": { @@ -45993,7 +46128,7 @@ } } ], - "specLocation": "_global/get/types.ts#L25-L36" + "specLocation": "_global/get/types.ts#L25-L67" }, { "kind": "type_alias", @@ -46046,7 +46181,7 @@ "name": "SequenceNumber", "namespace": "_types" }, - "specLocation": "_types/common.ts#L129-L129", + "specLocation": "_types/common.ts#L132-L132", "type": { "kind": "instance_of", "type": { @@ -46161,7 +46296,7 @@ } }, { - "description": "A human-readable explanation of the error, in english", + "description": "A human-readable explanation of the error, in English.", "name": "reason", "required": false, "type": { @@ -46415,7 +46550,7 @@ "name": "ExpandWildcards", "namespace": "_types" }, - "specLocation": "_types/common.ts#L218-L218", + "specLocation": "_types/common.ts#L221-L221", "type": { "items": [ { @@ -46455,7 +46590,7 @@ "name": "closed" }, { - "description": "Match hidden data streams and hidden indices. Must be combined with open, closed, or both.", + "description": "Match hidden data streams and hidden indices. Must be combined with `open`, `closed`, or `both`.", "name": "hidden" }, { @@ -46467,7 +46602,7 @@ "name": "ExpandWildcard", "namespace": "_types" }, - "specLocation": "_types/common.ts#L202-L216" + "specLocation": "_types/common.ts#L205-L219" }, { "kind": "type_alias", @@ -46530,7 +46665,7 @@ "name": "SearchType", "namespace": "_types" }, - "specLocation": "_types/common.ts#L276-L281" + "specLocation": "_types/common.ts#L279-L284" }, { "kind": "interface", @@ -49527,7 +49662,7 @@ "name": "MinimumShouldMatch", "namespace": "_types" }, - "specLocation": "_types/common.ts#L164-L168", + "specLocation": "_types/common.ts#L167-L171", "type": { "items": [ { @@ -49639,7 +49774,7 @@ "name": "Field", "namespace": "_types" }, - "specLocation": "_types/common.ts#L139-L140", + "specLocation": "_types/common.ts#L142-L143", "type": { "kind": "instance_of", "type": { @@ -51253,7 +51388,7 @@ "name": "MultiTermQueryRewrite", "namespace": "_types" }, - "specLocation": "_types/common.ts#L136-L137", + "specLocation": "_types/common.ts#L139-L140", "type": { "kind": "instance_of", "type": { @@ -51270,7 +51405,7 @@ "name": "Fuzziness", "namespace": "_types" }, - "specLocation": "_types/common.ts#L134-L135", + "specLocation": "_types/common.ts#L137-L138", "type": { "items": [ { @@ -53095,7 +53230,7 @@ "name": "Fields", "namespace": "_types" }, - "specLocation": "_types/common.ts#L141-L141", + "specLocation": "_types/common.ts#L144-L144", "type": { "items": [ { @@ -54076,7 +54211,7 @@ "name": "RelationName", "namespace": "_types" }, - "specLocation": "_types/common.ts#L132-L132", + "specLocation": "_types/common.ts#L135-L135", "type": { "kind": "instance_of", "type": { @@ -55008,9 +55143,30 @@ "namespace": "_types" } } + }, + { + "availability": { + "serverless": { + "stability": "experimental" + }, + "stack": { + "since": "8.18.0", + "stability": "experimental" + } + }, + "description": "Apply oversampling and rescoring to quantized vectors *", + "name": "rescore_vector", + "required": false, + "type": { + "kind": "instance_of", + "type": { + "name": "RescoreVector", + "namespace": "_types" + } + } } ], - "specLocation": "_types/Knn.ts#L54-L72" + "specLocation": "_types/Knn.ts#L64-L87" }, { "kind": "type_alias", @@ -55049,7 +55205,7 @@ } } ], - "specLocation": "_types/Knn.ts#L74-L77", + "specLocation": "_types/Knn.ts#L89-L92", "variants": { "kind": "container" } @@ -55084,7 +55240,29 @@ } } ], - "specLocation": "_types/Knn.ts#L79-L82" + "specLocation": "_types/Knn.ts#L94-L97" + }, + { + "kind": "interface", + "name": { + "name": "RescoreVector", + "namespace": "_types" + }, + "properties": [ + { + "description": "Applies the specified oversample factor to k on the approximate kNN search", + "name": "oversample", + "required": true, + "type": { + "kind": "instance_of", + "type": { + "name": "float", + "namespace": "_types" + } + } + } + ], + "specLocation": "_types/Knn.ts#L30-L33" }, { "extDocId": "query-dsl-match-query", @@ -56076,14 +56254,15 @@ "name": "internal" }, { - "description": "Only index the document if the given version is strictly higher than the version of the stored document or if there is no existing document.", + "description": "Only index the document if the specified version is strictly higher than the version of the stored document or if there is no existing document.", "name": "external" }, { - "description": "Only index the document if the given version is equal or higher than the version of the stored document or if there is no existing document.\nNote: the external_gte version type is meant for special use cases and should be used with care.\nIf used incorrectly, it can result in loss of data.", + "description": "Only index the document if the specified version is equal or higher than the version of the stored document or if there is no existing document.\nNOTE: The `external_gte` version type is meant for special use cases and should be used with care.\nIf used incorrectly, it can result in loss of data.", "name": "external_gte" }, { + "description": "This option is deprecated because it can cause primary and replica shards to diverge.", "name": "force" } ], @@ -56091,7 +56270,7 @@ "name": "VersionType", "namespace": "_types" }, - "specLocation": "_types/common.ts#L107-L123" + "specLocation": "_types/common.ts#L107-L126" }, { "description": "Language value, such as _arabic_ or _thai_. Defaults to _english_.\nEach language value corresponds to a predefined list of stop words in Lucene. See Stop words by language for supported language values and their stop words.\nAlso accepts an array of stop words.", @@ -64002,7 +64181,7 @@ "namespace": "_types" }, "properties": [], - "specLocation": "_types/common.ts#L161-L162" + "specLocation": "_types/common.ts#L164-L165" }, { "inherits": { @@ -67062,9 +67241,30 @@ "namespace": "_global.search._types" } } + }, + { + "availability": { + "serverless": { + "stability": "experimental" + }, + "stack": { + "since": "8.18.0", + "stability": "experimental" + } + }, + "description": "Apply oversampling and rescoring to quantized vectors *", + "name": "rescore_vector", + "required": false, + "type": { + "kind": "instance_of", + "type": { + "name": "RescoreVector", + "namespace": "_types" + } + } } ], - "specLocation": "_types/Knn.ts#L30-L52" + "specLocation": "_types/Knn.ts#L35-L62" }, { "kind": "interface", @@ -68516,7 +68716,7 @@ "name": "SuggestMode", "namespace": "_types" }, - "specLocation": "_types/common.ts#L283-L296" + "specLocation": "_types/common.ts#L286-L299" }, { "kind": "interface", @@ -69218,6 +69418,7 @@ }, "properties": [ { + "description": "The number of shards the operation or search attempted to run on but failed.", "name": "failed", "required": true, "type": { @@ -69229,7 +69430,7 @@ } }, { - "description": "Indicates how many shards have successfully run the search.", + "description": "The number of shards the operation or search succeeded on.", "name": "successful", "required": true, "type": { @@ -69241,7 +69442,7 @@ } }, { - "description": "Indicates how many shards the search will run on overall.", + "description": "The number of shards the operation or search will run on overall.", "name": "total", "required": true, "type": { @@ -69278,7 +69479,7 @@ } } ], - "specLocation": "_types/Stats.ts#L54-L66" + "specLocation": "_types/Stats.ts#L54-L69" }, { "kind": "type_alias", @@ -69988,7 +70189,7 @@ "name": "AggregateName", "namespace": "_types" }, - "specLocation": "_types/common.ts#L146-L150", + "specLocation": "_types/common.ts#L149-L153", "type": { "kind": "instance_of", "type": { @@ -76493,7 +76694,7 @@ "name": "SuggestionName", "namespace": "_types" }, - "specLocation": "_types/common.ts#L152-L156", + "specLocation": "_types/common.ts#L155-L159", "type": { "kind": "instance_of", "type": { @@ -77047,7 +77248,7 @@ } } ], - "specLocation": "_types/Base.ts#L105-L114" + "specLocation": "_types/Base.ts#L127-L136" }, { "codegenNames": [ @@ -77423,7 +77624,7 @@ "name": "Bytes", "namespace": "_types" }, - "specLocation": "_types/common.ts#L170-L182" + "specLocation": "_types/common.ts#L173-L185" }, { "kind": "type_alias", @@ -77463,7 +77664,7 @@ "name": "ClusterInfoTarget", "namespace": "_types" }, - "specLocation": "_types/common.ts#L382-L388" + "specLocation": "_types/common.ts#L385-L391" }, { "kind": "type_alias", @@ -77471,7 +77672,7 @@ "name": "ClusterInfoTargets", "namespace": "_types" }, - "specLocation": "_types/common.ts#L390-L390", + "specLocation": "_types/common.ts#L393-L393", "type": { "items": [ { @@ -77511,7 +77712,7 @@ "name": "Conflicts", "namespace": "_types" }, - "specLocation": "_types/common.ts#L184-L193" + "specLocation": "_types/common.ts#L187-L196" }, { "kind": "enum", @@ -77720,7 +77921,7 @@ "name": "HealthStatus", "namespace": "_types" }, - "specLocation": "_types/common.ts#L220-L240" + "specLocation": "_types/common.ts#L223-L243" }, { "kind": "type_alias", @@ -77743,7 +77944,7 @@ "name": "HttpHeaders", "namespace": "_types" }, - "specLocation": "_types/common.ts#L159-L159", + "specLocation": "_types/common.ts#L162-L162", "type": { "key": { "kind": "instance_of", @@ -77890,7 +78091,7 @@ "name": "Level", "namespace": "_types" }, - "specLocation": "_types/common.ts#L250-L254" + "specLocation": "_types/common.ts#L253-L257" }, { "kind": "enum", @@ -78160,7 +78361,7 @@ "name": "OpType", "namespace": "_types" }, - "specLocation": "_types/common.ts#L256-L265" + "specLocation": "_types/common.ts#L259-L268" }, { "kind": "type_alias", @@ -78168,7 +78369,7 @@ "name": "Password", "namespace": "_types" }, - "specLocation": "_types/common.ts#L196-L196", + "specLocation": "_types/common.ts#L199-L199", "type": { "kind": "instance_of", "type": { @@ -78225,7 +78426,7 @@ "name": "PropertyName", "namespace": "_types" }, - "specLocation": "_types/common.ts#L131-L131", + "specLocation": "_types/common.ts#L134-L134", "type": { "kind": "instance_of", "type": { @@ -78252,7 +78453,7 @@ "name": "Refresh", "namespace": "_types" }, - "specLocation": "_types/common.ts#L267-L274" + "specLocation": "_types/common.ts#L270-L277" }, { "kind": "enum", @@ -78392,7 +78593,7 @@ "name": "Slices", "namespace": "_types" }, - "specLocation": "_types/common.ts#L365-L370", + "specLocation": "_types/common.ts#L368-L373", "type": { "items": [ { @@ -78425,7 +78626,7 @@ "name": "SlicesCalculation", "namespace": "_types" }, - "specLocation": "_types/common.ts#L372-L380" + "specLocation": "_types/common.ts#L375-L383" }, { "kind": "type_alias", @@ -78448,7 +78649,7 @@ "name": "TaskId", "namespace": "_types" }, - "specLocation": "_types/common.ts#L133-L133", + "specLocation": "_types/common.ts#L136-L136", "type": { "items": [ { @@ -78492,7 +78693,7 @@ "name": "ThreadType", "namespace": "_types" }, - "specLocation": "_types/common.ts#L298-L304" + "specLocation": "_types/common.ts#L301-L307" }, { "description": "Time of day, expressed as HH:MM:SS", @@ -78633,7 +78834,7 @@ "name": "Username", "namespace": "_types" }, - "specLocation": "_types/common.ts#L195-L195", + "specLocation": "_types/common.ts#L198-L198", "type": { "kind": "instance_of", "type": { @@ -78648,7 +78849,7 @@ "name": "Uuid", "namespace": "_types" }, - "specLocation": "_types/common.ts#L126-L126", + "specLocation": "_types/common.ts#L129-L129", "type": { "kind": "instance_of", "type": { @@ -78686,7 +78887,7 @@ "name": "WaitForActiveShardOptions", "namespace": "_types" }, - "specLocation": "_types/common.ts#L306-L310" + "specLocation": "_types/common.ts#L309-L313" }, { "codegenNames": [ @@ -78698,7 +78899,7 @@ "name": "WaitForActiveShards", "namespace": "_types" }, - "specLocation": "_types/common.ts#L143-L144", + "specLocation": "_types/common.ts#L146-L147", "type": { "items": [ { @@ -78745,7 +78946,7 @@ "name": "WaitForEvents", "namespace": "_types" }, - "specLocation": "_types/common.ts#L312-L319" + "specLocation": "_types/common.ts#L315-L322" }, { "kind": "type_alias", @@ -94199,6 +94400,40 @@ }, "specLocation": "eql/search/types.ts#L20-L32" }, + { + "kind": "enum", + "members": [ + { + "name": "csv" + }, + { + "name": "json" + }, + { + "name": "tsv" + }, + { + "name": "txt" + }, + { + "name": "yaml" + }, + { + "name": "cbor" + }, + { + "name": "smile" + }, + { + "name": "arrow" + } + ], + "name": { + "name": "EsqlFormat", + "namespace": "esql._types" + }, + "specLocation": "esql/_types/QueryParameters.ts#L20-L29" + }, { "kind": "type_alias", "name": { @@ -94319,40 +94554,6 @@ "kind": "union_of" } }, - { - "kind": "enum", - "members": [ - { - "name": "csv" - }, - { - "name": "json" - }, - { - "name": "tsv" - }, - { - "name": "txt" - }, - { - "name": "yaml" - }, - { - "name": "cbor" - }, - { - "name": "smile" - }, - { - "name": "arrow" - } - ], - "name": { - "name": "EsqlFormat", - "namespace": "esql.query" - }, - "specLocation": "esql/query/QueryRequest.ts#L99-L108" - }, { "kind": "type_alias", "name": { @@ -101289,7 +101490,7 @@ } } ], - "specLocation": "_types/Stats.ts#L80-L90" + "specLocation": "_types/Stats.ts#L83-L93" }, { "kind": "interface", @@ -101321,7 +101522,7 @@ } } ], - "specLocation": "_types/Stats.ts#L92-L95" + "specLocation": "_types/Stats.ts#L95-L98" }, { "kind": "interface", @@ -101355,7 +101556,7 @@ } } ], - "specLocation": "_types/Stats.ts#L97-L109" + "specLocation": "_types/Stats.ts#L100-L112" }, { "kind": "interface", @@ -101420,7 +101621,7 @@ } } ], - "specLocation": "_types/Stats.ts#L111-L116" + "specLocation": "_types/Stats.ts#L114-L119" }, { "kind": "interface", @@ -101452,7 +101653,7 @@ } } ], - "specLocation": "_types/Stats.ts#L118-L121" + "specLocation": "_types/Stats.ts#L121-L124" }, { "kind": "interface", @@ -101515,7 +101716,7 @@ } } ], - "specLocation": "_types/Stats.ts#L123-L128" + "specLocation": "_types/Stats.ts#L126-L131" }, { "kind": "interface", @@ -101662,7 +101863,7 @@ } } ], - "specLocation": "_types/Stats.ts#L130-L141" + "specLocation": "_types/Stats.ts#L133-L144" }, { "kind": "interface", @@ -101875,7 +102076,7 @@ } } ], - "specLocation": "_types/Stats.ts#L143-L159" + "specLocation": "_types/Stats.ts#L146-L162" }, { "kind": "interface", @@ -102131,7 +102332,7 @@ } } ], - "specLocation": "_types/Stats.ts#L161-L178" + "specLocation": "_types/Stats.ts#L164-L181" }, { "kind": "interface", @@ -102324,7 +102525,7 @@ } } ], - "specLocation": "_types/Stats.ts#L228-L233" + "specLocation": "_types/Stats.ts#L231-L236" }, { "kind": "interface", @@ -102418,7 +102619,7 @@ } } ], - "specLocation": "_types/Stats.ts#L235-L242" + "specLocation": "_types/Stats.ts#L238-L245" }, { "kind": "interface", @@ -102483,7 +102684,7 @@ } } ], - "specLocation": "_types/Stats.ts#L244-L250" + "specLocation": "_types/Stats.ts#L247-L253" }, { "kind": "interface", @@ -102904,7 +103105,7 @@ } } ], - "specLocation": "_types/Stats.ts#L252-L271" + "specLocation": "_types/Stats.ts#L255-L274" }, { "kind": "interface", @@ -103211,7 +103412,7 @@ } } ], - "specLocation": "_types/Stats.ts#L273-L366" + "specLocation": "_types/Stats.ts#L276-L369" }, { "kind": "interface", @@ -103412,7 +103613,7 @@ } } ], - "specLocation": "_types/Stats.ts#L368-L395" + "specLocation": "_types/Stats.ts#L371-L398" }, { "kind": "interface", @@ -103499,7 +103700,7 @@ } } ], - "specLocation": "_types/Stats.ts#L397-L405" + "specLocation": "_types/Stats.ts#L400-L408" }, { "kind": "interface", @@ -103562,7 +103763,7 @@ } } ], - "specLocation": "_types/Stats.ts#L407-L412" + "specLocation": "_types/Stats.ts#L410-L415" }, { "kind": "interface", @@ -103689,7 +103890,7 @@ } } ], - "specLocation": "_types/Stats.ts#L68-L78" + "specLocation": "_types/Stats.ts#L71-L81" }, { "kind": "interface", @@ -104160,7 +104361,7 @@ } } ], - "specLocation": "_types/Stats.ts#L192-L226" + "specLocation": "_types/Stats.ts#L195-L229" }, { "kind": "interface", @@ -104463,7 +104664,7 @@ "name": "password" }, { - "description": "In this type of grant, you must supply an access token that was created by the Elasticsearch token service.", + "description": "In this type of grant, you must supply an access token that was created by the Elasticsearch token service.\nIf you are activating a user profile, you can alternatively supply a JWT (either a JWT `access_token` or a JWT `id_token`).", "name": "access_token" } ], @@ -104471,7 +104672,7 @@ "name": "GrantType", "namespace": "security._types" }, - "specLocation": "security/_types/GrantType.ts#L20-L29" + "specLocation": "security/_types/GrantType.ts#L20-L30" }, { "isOpen": true, @@ -104736,7 +104937,7 @@ "name": "RestrictionWorkflow", "namespace": "security._types" }, - "specLocation": "security/_types/RoleDescriptor.ts#L134-L137" + "specLocation": "security/_types/RoleDescriptor.ts#L143-L146" }, { "kind": "enum", @@ -104773,15 +104974,19 @@ "kind": "enum", "members": [ { + "description": "This grant type implements the Resource Owner Password Credentials Grant of OAuth2.\nIn this grant, a trusted client exchanges the end user's credentials for an access token and (possibly) a refresh token.\nThe request needs to be made by an authenticated user but happens on behalf of another authenticated user (the one whose credentials are passed as request parameters).\nThis grant type is not suitable or designed for the self-service user creation of tokens.", "name": "password" }, { + "description": "This grant type implements the Client Credentials Grant of OAuth2.\nIt is geared for machine to machine communication and is not suitable or designed for the self-service user creation of tokens.\nIt generates only access tokens that cannot be refreshed.\nThe premise is that the entity that uses `client_credentials` has constant access to a set of (client, not end-user) credentials and can authenticate itself at will.", "name": "client_credentials" }, { + "description": "This grant type is supported internally and implements SPNEGO based Kerberos support.\nThe `_kerberos` grant type may change from version to version.", "name": "_kerberos" }, { + "description": "This grant type implements the Refresh Token Grant of OAuth2.\nIn this grant a user exchanges a previously issued refresh token for a new access token and a new refresh token.", "name": "refresh_token" } ], @@ -104789,7 +104994,7 @@ "name": "AccessTokenGrantType", "namespace": "security.get_token" }, - "specLocation": "security/get_token/types.ts#L23-L28" + "specLocation": "security/get_token/types.ts#L23-L48" }, { "kind": "enum", @@ -104805,7 +105010,7 @@ "name": "ApiKeyGrantType", "namespace": "security.grant_api_key" }, - "specLocation": "security/grant_api_key/types.ts#L48-L51" + "specLocation": "security/grant_api_key/types.ts#L47-L50" }, { "kind": "type_alias", @@ -104813,7 +105018,7 @@ "name": "ApplicationsPrivileges", "namespace": "security.has_privileges" }, - "specLocation": "security/has_privileges/types.ts#L46-L46", + "specLocation": "security/has_privileges/types.ts#L47-L47", "type": { "key": { "kind": "instance_of", @@ -104839,7 +105044,7 @@ "name": "ResourcePrivileges", "namespace": "security.has_privileges" }, - "specLocation": "security/has_privileges/types.ts#L47-L47", + "specLocation": "security/has_privileges/types.ts#L48-L48", "type": { "key": { "kind": "instance_of", @@ -104865,7 +105070,7 @@ "name": "Privileges", "namespace": "security.has_privileges" }, - "specLocation": "security/has_privileges/types.ts#L48-L48", + "specLocation": "security/has_privileges/types.ts#L49-L49", "type": { "key": { "kind": "instance_of", @@ -105945,11 +106150,11 @@ "kind": "enum", "members": [ { - "description": "Node ID", + "description": "Group tasks by node ID.", "name": "nodes" }, { - "description": "Parent task ID", + "description": "Group tasks by parent task ID.", "name": "parents" }, { @@ -107181,7 +107386,7 @@ } } ], - "specLocation": "_types/Base.ts#L47-L50" + "specLocation": "_types/Base.ts#L69-L72" }, { "generics": [ @@ -107691,7 +107896,7 @@ }, "properties": [ { - "description": "Indexes the specified document.\nIf the document exists, replaces the document and increments the version.\nThe following line must contain the source data to be indexed.", + "description": "Index the specified document.\nIf the document exists, it replaces the document and increments the version.\nThe following line must contain the source data to be indexed.", "name": "index", "required": false, "type": { @@ -107703,7 +107908,7 @@ } }, { - "description": "Indexes the specified document if it does not already exist.\nThe following line must contain the source data to be indexed.", + "description": "Index the specified document if it does not already exist.\nThe following line must contain the source data to be indexed.", "name": "create", "required": false, "type": { @@ -107715,7 +107920,7 @@ } }, { - "description": "Performs a partial document update.\nThe following line must contain the partial document and update options.", + "description": "Perform a partial document update.\nThe following line must contain the partial document and update options.", "name": "update", "required": false, "type": { @@ -107727,7 +107932,7 @@ } }, { - "description": "Removes the specified document from the index.", + "description": "Remove the specified document from the index.", "name": "delete", "required": false, "type": { @@ -107739,7 +107944,7 @@ } } ], - "specLocation": "_global/bulk/types.ts#L145-L167", + "specLocation": "_global/bulk/types.ts#L150-L172", "variants": { "kind": "container" } @@ -107757,7 +107962,7 @@ "namespace": "_global.bulk" }, "properties": [], - "specLocation": "_global/bulk/types.ts#L132-L132" + "specLocation": "_global/bulk/types.ts#L134-L134" }, { "inherits": { @@ -107773,7 +107978,7 @@ }, "properties": [ { - "description": "A map from the full name of fields to the name of dynamic templates.\nDefaults to an empty map.\nIf a name matches a dynamic template, then that template will be applied regardless of other match predicates defined in the template.\nIf a field is already defined in the mapping, then this parameter won’t be used.", + "description": "A map from the full name of fields to the name of dynamic templates.\nIt defaults to an empty map.\nIf a name matches a dynamic template, that template will be applied regardless of other match predicates defined in the template.\nIf a field is already defined in the mapping, then this parameter won't be used.", "name": "dynamic_templates", "required": false, "type": { @@ -107796,7 +108001,7 @@ } }, { - "description": "ID of the pipeline to use to preprocess incoming documents.\nIf the index has a default ingest pipeline specified, then setting the value to `_none` disables the default ingest pipeline for this request.\nIf a final pipeline is configured it will always run, regardless of the value of this parameter.", + "description": "The ID of the pipeline to use to preprocess incoming documents.\nIf the index has a default ingest pipeline specified, setting the value to `_none` turns off the default ingest pipeline for this request.\nIf a final pipeline is configured, it will always run regardless of the value of this parameter.", "name": "pipeline", "required": false, "type": { @@ -107808,7 +108013,7 @@ } }, { - "description": "If `true`, the request’s actions must target an index alias.", + "description": "If `true`, the request's actions must target an index alias.", "name": "require_alias", "required": false, "serverDefault": false, @@ -107821,7 +108026,7 @@ } } ], - "specLocation": "_global/bulk/types.ts#L109-L128" + "specLocation": "_global/bulk/types.ts#L111-L130" }, { "kind": "interface", @@ -107843,7 +108048,7 @@ } }, { - "description": "Name of the index or index alias to perform the action on.", + "description": "The name of the index or index alias to perform the action on.", "name": "_index", "required": false, "type": { @@ -107855,7 +108060,7 @@ } }, { - "description": "Custom value used to route operations to a specific shard.", + "description": "A custom value used to route operations to a specific shard.", "name": "routing", "required": false, "type": { @@ -107911,7 +108116,7 @@ } } ], - "specLocation": "_global/bulk/types.ts#L90-L107" + "specLocation": "_global/bulk/types.ts#L92-L109" }, { "inherits": { @@ -107926,7 +108131,7 @@ "namespace": "_global.bulk" }, "properties": [], - "specLocation": "_global/bulk/types.ts#L130-L130" + "specLocation": "_global/bulk/types.ts#L132-L132" }, { "inherits": { @@ -107942,7 +108147,7 @@ }, "properties": [ { - "description": "If `true`, the request’s actions must target an index alias.", + "description": "If `true`, the request's actions must target an index alias.", "name": "require_alias", "required": false, "serverDefault": false, @@ -107955,6 +108160,7 @@ } }, { + "description": "The number of times an update should be retried in the case of a version conflict.", "name": "retry_on_conflict", "required": false, "type": { @@ -107966,7 +108172,7 @@ } } ], - "specLocation": "_global/bulk/types.ts#L136-L143" + "specLocation": "_global/bulk/types.ts#L138-L148" }, { "inherits": { @@ -107981,7 +108187,7 @@ "namespace": "_global.bulk" }, "properties": [], - "specLocation": "_global/bulk/types.ts#L134-L134" + "specLocation": "_global/bulk/types.ts#L136-L136" }, { "generics": [ @@ -108001,7 +108207,7 @@ }, "properties": [ { - "description": "Set to false to disable setting 'result' in the response\nto 'noop' if no change to the document occurred.", + "description": "If true, the `result` in the response is set to 'noop' when no changes to the document occur.", "name": "detect_noop", "required": false, "serverDefault": true, @@ -108026,7 +108232,7 @@ } }, { - "description": "Set to true to use the contents of 'doc' as the value of 'upsert'", + "description": "Set to `true` to use the contents of `doc` as the value of `upsert`.", "name": "doc_as_upsert", "required": false, "serverDefault": false, @@ -108039,7 +108245,7 @@ } }, { - "description": "Script to execute to update the document.", + "description": "The script to run to update the document.", "name": "script", "required": false, "type": { @@ -108051,7 +108257,7 @@ } }, { - "description": "Set to true to execute the script whether or not the document exists.", + "description": "Set to `true` to run the script whether or not the document exists.", "name": "scripted_upsert", "required": false, "serverDefault": false, @@ -108064,7 +108270,7 @@ } }, { - "description": "Set to false to disable source retrieval. You can also specify a comma-separated\nlist of the fields you want to retrieve.", + "description": "If `false`, source retrieval is turned off.\nYou can also specify a comma-separated list of the fields you want to retrieve.", "name": "_source", "required": false, "serverDefault": "true", @@ -108077,7 +108283,7 @@ } }, { - "description": "If the document does not already exist, the contents of 'upsert' are inserted as a\nnew document. If the document exists, the 'script' is executed.", + "description": "If the document does not already exist, the contents of `upsert` are inserted as a new document.\nIf the document exists, the `script` is run.", "name": "upsert", "required": false, "type": { @@ -108089,7 +108295,7 @@ } } ], - "specLocation": "_global/bulk/types.ts#L169-L205" + "specLocation": "_global/bulk/types.ts#L174-L209" }, { "kind": "interface", @@ -108123,7 +108329,7 @@ } }, { - "description": "Name of the index associated with the operation.\nIf the operation targeted a data stream, this is the backing index into which the document was written.", + "description": "The name of the index associated with the operation.\nIf the operation targeted a data stream, this is the backing index into which the document was written.", "name": "_index", "required": true, "type": { @@ -108135,7 +108341,7 @@ } }, { - "description": "HTTP status code returned for the operation.", + "description": "The HTTP status code returned for the operation.", "name": "status", "required": true, "type": { @@ -108147,7 +108353,7 @@ } }, { - "description": "Contains additional information about the failed operation.\nThe parameter is only returned for failed operations.", + "description": "Additional information about the failed operation.\nThe property is returned only for failed operations.", "name": "error", "required": false, "type": { @@ -108159,7 +108365,7 @@ } }, { - "description": "The primary term assigned to the document for the operation.", + "description": "The primary term assigned to the document for the operation.\nThis property is returned only for successful operations.", "name": "_primary_term", "required": false, "type": { @@ -108171,7 +108377,7 @@ } }, { - "description": "Result of the operation.\nSuccessful values are `created`, `deleted`, and `updated`.", + "description": "The result of the operation.\nSuccessful values are `created`, `deleted`, and `updated`.", "name": "result", "required": false, "type": { @@ -108183,7 +108389,7 @@ } }, { - "description": "The sequence number assigned to the document for the operation.\nSequence numbers are used to ensure an older version of a document doesn’t overwrite a newer version.", + "description": "The sequence number assigned to the document for the operation.\nSequence numbers are used to ensure an older version of a document doesn't overwrite a newer version.", "name": "_seq_no", "required": false, "type": { @@ -108195,7 +108401,7 @@ } }, { - "description": "Contains shard information for the operation.", + "description": "Shard information for the operation.", "name": "_shards", "required": false, "type": { @@ -108207,7 +108413,7 @@ } }, { - "description": "The document version associated with the operation.\nThe document version is incremented each time the document is updated.", + "description": "The document version associated with the operation.\nThe document version is incremented each time the document is updated.\nThis property is returned only for successful actions.", "name": "_version", "required": false, "type": { @@ -108257,7 +108463,7 @@ } } ], - "specLocation": "_global/bulk/types.ts#L37-L81" + "specLocation": "_global/bulk/types.ts#L37-L83" }, { "attachedBehaviors": [ @@ -108373,7 +108579,7 @@ } } ], - "specLocation": "_types/common.ts#L321-L334" + "specLocation": "_types/common.ts#L324-L337" }, { "attachedBehaviors": [ @@ -118285,6 +118491,7 @@ }, "properties": [ { + "description": "The unique identifier for the added document.", "name": "_id", "required": true, "type": { @@ -118296,6 +118503,7 @@ } }, { + "description": "The name of the index the document was added to.", "name": "_index", "required": true, "type": { @@ -118307,6 +118515,7 @@ } }, { + "description": "The primary term assigned to the document for the indexing operation.", "name": "_primary_term", "required": false, "type": { @@ -118318,6 +118527,7 @@ } }, { + "description": "The result of the indexing operation: `created` or `updated`.", "name": "result", "required": true, "type": { @@ -118329,6 +118539,7 @@ } }, { + "description": "The sequence number assigned to the document for the indexing operation.\nSequence numbers are used to ensure an older version of a document doesn't overwrite a newer version.", "name": "_seq_no", "required": false, "type": { @@ -118340,6 +118551,7 @@ } }, { + "description": "Information about the replication process of the operation.", "name": "_shards", "required": true, "type": { @@ -118351,6 +118563,7 @@ } }, { + "description": "The document version, which is incremented each time the document is updated.", "name": "_version", "required": true, "type": { @@ -118373,7 +118586,7 @@ } } ], - "specLocation": "_types/Base.ts#L36-L45" + "specLocation": "_types/Base.ts#L36-L67" }, { "kind": "interface", @@ -118448,6 +118661,7 @@ }, "properties": [ { + "description": "The number of bulk actions retried.", "name": "bulk", "required": true, "type": { @@ -118459,6 +118673,7 @@ } }, { + "description": "The number of search actions retried.", "name": "search", "required": true, "type": { @@ -118470,7 +118685,7 @@ } } ], - "specLocation": "_types/Retries.ts#L22-L25" + "specLocation": "_types/Retries.ts#L22-L31" }, { "kind": "interface", @@ -119427,7 +119642,7 @@ }, "properties": [ { - "description": "Specifies the language the script is written in.", + "description": "The language the script is written in.", "name": "lang", "required": true, "type": { @@ -120372,7 +120587,7 @@ } } ], - "specLocation": "_types/Base.ts#L116-L118" + "specLocation": "_types/Base.ts#L138-L140" }, { "kind": "interface", @@ -121459,7 +121674,7 @@ } } ], - "specLocation": "_types/Base.ts#L120-L123" + "specLocation": "_types/Base.ts#L142-L145" }, { "kind": "interface", @@ -122948,7 +123163,7 @@ } } ], - "specLocation": "_types/Base.ts#L54-L93" + "specLocation": "_types/Base.ts#L76-L115" }, { "kind": "interface", @@ -132716,7 +132931,7 @@ } } ], - "specLocation": "_types/common.ts#L336-L363" + "specLocation": "_types/common.ts#L339-L366" }, { "kind": "interface", @@ -141056,7 +141271,7 @@ } }, { - "description": "Set to `create` to only index documents that do not already exist.\nImportant: To reindex to a data stream destination, this argument must be `create`.", + "description": "If it is `create`, the operation will only index documents that do not already exist (also known as \"put if absent\").\n\nIMPORTANT: To reindex to a data stream destination, this argument must be `create`.", "name": "op_type", "required": false, "serverDefault": "index", @@ -141081,7 +141296,7 @@ } }, { - "description": "By default, a document's routing is preserved unless it’s changed by the script.\nSet to `discard` to set routing to `null`, or `=value` to route using the specified `value`.", + "description": "By default, a document's routing is preserved unless it's changed by the script.\nIf it is `keep`, the routing on the bulk request sent for each match is set to the routing on the match.\nIf it is `discard`, the routing on the bulk request sent for each match is set to `null`.\nIf it is `=value`, the routing on the bulk request sent for each match is set to all value specified after the equals sign (`=`).", "name": "routing", "required": false, "serverDefault": "keep", @@ -141106,7 +141321,7 @@ } } ], - "specLocation": "_global/reindex/types.ts#L39-L64" + "specLocation": "_global/reindex/types.ts#L39-L67" }, { "kind": "interface", @@ -141116,7 +141331,7 @@ }, "properties": [ { - "description": "The name of the data stream, index, or alias you are copying from.\nAccepts a comma-separated list to reindex from multiple sources.", + "description": "The name of the data stream, index, or alias you are copying from.\nIt accepts a comma-separated list to reindex from multiple sources.", "name": "index", "required": true, "type": { @@ -141128,7 +141343,7 @@ } }, { - "description": "Specifies the documents to reindex using the Query DSL.", + "description": "The documents to reindex, which is defined with Query DSL.", "name": "query", "required": false, "type": { @@ -141152,9 +141367,10 @@ } }, { - "description": "The number of documents to index per batch.\nUse when indexing from remote to ensure that the batches fit within the on-heap buffer, which defaults to a maximum size of 100 MB.", + "description": "The number of documents to index per batch.\nUse it when you are indexing from remote to ensure that the batches fit within the on-heap buffer, which defaults to a maximum size of 100 MB.", "name": "size", "required": false, + "serverDefault": 1000, "type": { "kind": "instance_of", "type": { @@ -141176,6 +141392,11 @@ } }, { + "deprecation": { + "description": "", + "version": "7.6.0" + }, + "description": "A comma-separated list of `:` pairs to sort by before indexing.\nUse it in conjunction with `max_docs` to control what documents are reindexed.\n\nWARNING: Sort in reindex is deprecated.\nSorting in reindex was never guaranteed to index documents in order and prevents further development of reindex such as resilience and performance improvements.\nIf used in combination with `max_docs`, consider using a query filter instead.", "name": "sort", "required": false, "type": { @@ -141188,7 +141409,7 @@ }, { "codegenName": "source_fields", - "description": "If `true` reindexes all source fields.\nSet to a list to reindex select fields.", + "description": "If `true`, reindex all source fields.\nSet it to a list to reindex select fields.", "name": "_source", "required": false, "serverDefault": "true", @@ -141212,7 +141433,7 @@ } } ], - "specLocation": "_global/reindex/types.ts#L66-L97" + "specLocation": "_global/reindex/types.ts#L69-L110" }, { "kind": "interface", @@ -141222,9 +141443,10 @@ }, "properties": [ { - "description": "The remote connection timeout.\nDefaults to 30 seconds.", + "description": "The remote connection timeout.", "name": "connect_timeout", "required": false, + "serverDefault": "30s", "type": { "kind": "instance_of", "type": { @@ -141257,7 +141479,7 @@ } }, { - "description": "The URL for the remote instance of Elasticsearch that you want to index from.", + "description": "The URL for the remote instance of Elasticsearch that you want to index from.\nThis information is required when you're indexing from remote.", "name": "host", "required": true, "type": { @@ -141293,9 +141515,10 @@ } }, { - "description": "The remote socket read timeout. Defaults to 30 seconds.", + "description": "The remote socket read timeout.", "name": "socket_timeout", "required": false, + "serverDefault": "30s", "type": { "kind": "instance_of", "type": { @@ -141305,7 +141528,7 @@ } } ], - "specLocation": "_global/reindex/types.ts#L99-L125" + "specLocation": "_global/reindex/types.ts#L112-L140" }, { "kind": "interface", @@ -141631,9 +141854,30 @@ "namespace": "_types" } } + }, + { + "availability": { + "serverless": { + "stability": "experimental" + }, + "stack": { + "since": "8.18.0", + "stability": "experimental" + } + }, + "description": "Apply oversampling and rescoring to quantized vectors *", + "name": "rescore_vector", + "required": false, + "type": { + "kind": "instance_of", + "type": { + "name": "RescoreVector", + "namespace": "_types" + } + } } ], - "specLocation": "_types/Retriever.ts#L64-L77" + "specLocation": "_types/Retriever.ts#L64-L82" }, { "inherits": { @@ -141688,7 +141932,7 @@ } } ], - "specLocation": "_types/Retriever.ts#L79-L86" + "specLocation": "_types/Retriever.ts#L84-L91" }, { "inherits": { @@ -141764,7 +142008,7 @@ } } ], - "specLocation": "_types/Retriever.ts#L88-L99" + "specLocation": "_types/Retriever.ts#L93-L104" }, { "inherits": { @@ -141827,7 +142071,7 @@ } } ], - "specLocation": "_types/Retriever.ts#L101-L110" + "specLocation": "_types/Retriever.ts#L106-L115" }, { "inherits": { @@ -142190,9 +142434,9 @@ } }, { - "description": "A list of users that the API keys can impersonate. *Note*: in Serverless, the run-as feature is disabled. For API compatibility, you can still specify an empty `run_as` field, but a non-empty list will be rejected.", - "docId": "run-as-privilege", - "docUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/run-as-privilege.html", + "description": "A list of users that the API keys can impersonate.\nNOTE: In Elastic Cloud Serverless, the run-as feature is disabled.\nFor API compatibility, you can still specify an empty `run_as` field, but a non-empty list will be rejected.", + "extDocId": "run-as-privilege", + "extDocUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/run-as-privilege.html", "name": "run_as", "required": false, "type": { @@ -142249,7 +142493,7 @@ } } ], - "specLocation": "security/_types/RoleDescriptor.ts#L33-L80" + "specLocation": "security/_types/RoleDescriptor.ts#L33-L83" }, { "kind": "interface", @@ -142260,8 +142504,8 @@ "properties": [ { "description": "The document fields that the owners of the role have read access to.", - "docId": "field-and-document-access-control", - "docUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/field-and-document-access-control.html", + "extDocId": "field-and-document-access-control", + "extDocUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/field-and-document-access-control.html", "name": "field_security", "required": false, "type": { @@ -142409,6 +142653,7 @@ }, "properties": [ { + "description": "A list of workflows to which the API key is restricted.\nNOTE: In order to use a role restriction, an API key must be created with a single role descriptor.", "name": "workflows", "required": true, "type": { @@ -142423,7 +142668,7 @@ } } ], - "specLocation": "security/_types/RoleDescriptor.ts#L130-L132" + "specLocation": "security/_types/RoleDescriptor.ts#L135-L141" }, { "kind": "interface", @@ -142820,8 +143065,8 @@ "properties": [ { "description": "The document fields that the owners of the role have read access to.", - "docId": "field-and-document-access-control", - "docUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/field-and-document-access-control.html", + "extDocId": "field-and-document-access-control", + "extDocUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/field-and-document-access-control.html", "name": "field_security", "required": false, "type": { @@ -142894,7 +143139,7 @@ } }, { - "description": "A list of the privileges that you want to check for the specified resources. May be either application privilege names, or the names of actions that are granted by those privileges", + "description": "A list of the privileges that you want to check for the specified resources.\nIt may be either application privilege names or the names of actions that are granted by those privileges", "name": "privileges", "required": true, "type": { @@ -142909,7 +143154,7 @@ } }, { - "description": "A list of resource names against which the privileges should be checked", + "description": "A list of resource names against which the privileges should be checked.", "name": "resources", "required": true, "type": { @@ -142924,7 +143169,7 @@ } } ], - "specLocation": "security/has_privileges/types.ts#L24-L31" + "specLocation": "security/has_privileges/types.ts#L24-L32" }, { "kind": "interface", @@ -142961,7 +143206,7 @@ } }, { - "description": "This needs to be set to true (default is false) if using wildcards or regexps for patterns that cover restricted indices.\nImplicitly, restricted indices do not match index patterns because restricted indices usually have limited privileges and including them in pattern tests would render most such tests false.\nIf restricted indices are explicitly included in the names list, privileges will be checked against them regardless of the value of allow_restricted_indices.", + "description": "This needs to be set to `true` (default is `false`) if using wildcards or regexps for patterns that cover restricted indices.\nImplicitly, restricted indices do not match index patterns because restricted indices usually have limited privileges and including them in pattern tests would render most such tests false.\nIf restricted indices are explicitly included in the names list, privileges will be checked against them regardless of the value of `allow_restricted_indices`.", "name": "allow_restricted_indices", "required": false, "type": { @@ -142973,7 +143218,7 @@ } } ], - "specLocation": "security/has_privileges/types.ts#L33-L44" + "specLocation": "security/has_privileges/types.ts#L34-L45" }, { "kind": "interface", @@ -143157,7 +143402,7 @@ }, "properties": [ { - "description": "matches documents matching boolean combinations of other queries.", + "description": "Matches documents matching boolean combinations of other queries.", "docId": "query-dsl-bool-query", "docUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/query-dsl-bool-query.html", "name": "bool", diff --git a/output/schema/schema.json b/output/schema/schema.json index 810c6280a9..6bef67e1e7 100644 --- a/output/schema/schema.json +++ b/output/schema/schema.json @@ -47779,7 +47779,16 @@ } }, { - "description": "Apply oversampling and rescoring to quantized vectors", + "availability": { + "serverless": { + "stability": "experimental" + }, + "stack": { + "since": "8.18.0", + "stability": "experimental" + } + }, + "description": "Apply oversampling and rescoring to quantized vectors *", "name": "rescore_vector", "required": false, "type": { @@ -47791,7 +47800,7 @@ } } ], - "specLocation": "_types/Knn.ts#L61-L81" + "specLocation": "_types/Knn.ts#L64-L87" }, { "kind": "interface", @@ -47879,7 +47888,16 @@ } }, { - "description": "Apply oversampling and rescoring to quantized vectors", + "availability": { + "serverless": { + "stability": "experimental" + }, + "stack": { + "since": "8.18.0", + "stability": "experimental" + } + }, + "description": "Apply oversampling and rescoring to quantized vectors *", "name": "rescore_vector", "required": false, "type": { @@ -47891,7 +47909,7 @@ } } ], - "specLocation": "_types/Retriever.ts#L64-L79" + "specLocation": "_types/Retriever.ts#L64-L82" }, { "kind": "interface", @@ -48026,7 +48044,16 @@ } }, { - "description": "Apply oversampling and rescoring to quantized vectors", + "availability": { + "serverless": { + "stability": "experimental" + }, + "stack": { + "since": "8.18.0", + "stability": "experimental" + } + }, + "description": "Apply oversampling and rescoring to quantized vectors *", "name": "rescore_vector", "required": false, "type": { @@ -48038,7 +48065,7 @@ } } ], - "specLocation": "_types/Knn.ts#L35-L59" + "specLocation": "_types/Knn.ts#L35-L62" }, { "kind": "interface", @@ -49352,7 +49379,7 @@ } } ], - "specLocation": "_types/Knn.ts#L83-L86", + "specLocation": "_types/Knn.ts#L89-L92", "variants": { "kind": "container" } @@ -49410,7 +49437,7 @@ } } ], - "specLocation": "_types/Retriever.ts#L81-L88" + "specLocation": "_types/Retriever.ts#L84-L91" }, { "kind": "interface", @@ -50064,7 +50091,7 @@ } } ], - "specLocation": "_types/Retriever.ts#L103-L112" + "specLocation": "_types/Retriever.ts#L106-L115" }, { "kind": "type_alias", @@ -51960,7 +51987,7 @@ } } ], - "specLocation": "_types/Knn.ts#L88-L91" + "specLocation": "_types/Knn.ts#L94-L97" }, { "kind": "interface", @@ -52036,7 +52063,7 @@ } } ], - "specLocation": "_types/Retriever.ts#L90-L101" + "specLocation": "_types/Retriever.ts#L93-L104" }, { "kind": "enum", diff --git a/specification/_types/Knn.ts b/specification/_types/Knn.ts index a2bc539889..b64553c334 100644 --- a/specification/_types/Knn.ts +++ b/specification/_types/Knn.ts @@ -54,7 +54,10 @@ export interface KnnSearch { * @doc_id knn-inner-hits */ inner_hits?: InnerHits - /** Apply oversampling and rescoring to quantized vectors */ + /** Apply oversampling and rescoring to quantized vectors * + * @availability stack since=8.18.0 stability=experimental + * @availability serverless stability=experimental + */ rescore_vector?: RescoreVector } @@ -76,7 +79,10 @@ export interface KnnQuery extends QueryBase { filter?: QueryContainer | QueryContainer[] /** The minimum similarity for a vector to be considered a match */ similarity?: float - /** Apply oversampling and rescoring to quantized vectors */ + /** Apply oversampling and rescoring to quantized vectors * + * @availability stack since=8.18.0 stability=experimental + * @availability serverless stability=experimental + */ rescore_vector?: RescoreVector } diff --git a/specification/_types/Retriever.ts b/specification/_types/Retriever.ts index 73bf634231..ff487a1fd5 100644 --- a/specification/_types/Retriever.ts +++ b/specification/_types/Retriever.ts @@ -74,7 +74,10 @@ export class KnnRetriever extends RetrieverBase { num_candidates: integer /** The minimum similarity required for a document to be considered a match. */ similarity?: float - /** Apply oversampling and rescoring to quantized vectors */ + /** Apply oversampling and rescoring to quantized vectors * + * @availability stack since=8.18.0 stability=experimental + * @availability serverless stability=experimental + */ rescore_vector?: RescoreVector }