elasticsearch 8.15.1__py3-none-any.whl → 8.17.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (94) hide show
  1. elasticsearch/_async/client/__init__.py +237 -120
  2. elasticsearch/_async/client/async_search.py +33 -43
  3. elasticsearch/_async/client/autoscaling.py +59 -11
  4. elasticsearch/_async/client/cat.py +75 -66
  5. elasticsearch/_async/client/ccr.py +85 -35
  6. elasticsearch/_async/client/cluster.py +165 -70
  7. elasticsearch/_async/client/connector.py +112 -51
  8. elasticsearch/_async/client/dangling_indices.py +27 -12
  9. elasticsearch/_async/client/enrich.py +11 -11
  10. elasticsearch/_async/client/eql.py +13 -11
  11. elasticsearch/_async/client/esql.py +44 -5
  12. elasticsearch/_async/client/features.py +29 -6
  13. elasticsearch/_async/client/fleet.py +10 -2
  14. elasticsearch/_async/client/graph.py +9 -3
  15. elasticsearch/_async/client/ilm.py +74 -35
  16. elasticsearch/_async/client/indices.py +422 -152
  17. elasticsearch/_async/client/inference.py +4 -4
  18. elasticsearch/_async/client/ingest.py +47 -26
  19. elasticsearch/_async/client/license.py +38 -22
  20. elasticsearch/_async/client/logstash.py +3 -3
  21. elasticsearch/_async/client/migration.py +3 -3
  22. elasticsearch/_async/client/ml.py +346 -291
  23. elasticsearch/_async/client/monitoring.py +1 -1
  24. elasticsearch/_async/client/nodes.py +43 -21
  25. elasticsearch/_async/client/query_rules.py +69 -15
  26. elasticsearch/_async/client/rollup.py +23 -9
  27. elasticsearch/_async/client/search_application.py +35 -16
  28. elasticsearch/_async/client/searchable_snapshots.py +13 -5
  29. elasticsearch/_async/client/security.py +378 -180
  30. elasticsearch/_async/client/slm.py +9 -9
  31. elasticsearch/_async/client/snapshot.py +97 -12
  32. elasticsearch/_async/client/sql.py +21 -16
  33. elasticsearch/_async/client/ssl.py +18 -3
  34. elasticsearch/_async/client/synonyms.py +17 -14
  35. elasticsearch/_async/client/tasks.py +19 -9
  36. elasticsearch/_async/client/text_structure.py +2 -2
  37. elasticsearch/_async/client/transform.py +78 -72
  38. elasticsearch/_async/client/utils.py +4 -0
  39. elasticsearch/_async/client/watcher.py +11 -11
  40. elasticsearch/_async/client/xpack.py +5 -3
  41. elasticsearch/_async/helpers.py +19 -10
  42. elasticsearch/_otel.py +2 -2
  43. elasticsearch/_sync/client/__init__.py +237 -120
  44. elasticsearch/_sync/client/async_search.py +33 -43
  45. elasticsearch/_sync/client/autoscaling.py +59 -11
  46. elasticsearch/_sync/client/cat.py +75 -66
  47. elasticsearch/_sync/client/ccr.py +85 -35
  48. elasticsearch/_sync/client/cluster.py +165 -70
  49. elasticsearch/_sync/client/connector.py +112 -51
  50. elasticsearch/_sync/client/dangling_indices.py +27 -12
  51. elasticsearch/_sync/client/enrich.py +11 -11
  52. elasticsearch/_sync/client/eql.py +13 -11
  53. elasticsearch/_sync/client/esql.py +44 -5
  54. elasticsearch/_sync/client/features.py +29 -6
  55. elasticsearch/_sync/client/fleet.py +10 -2
  56. elasticsearch/_sync/client/graph.py +9 -3
  57. elasticsearch/_sync/client/ilm.py +74 -35
  58. elasticsearch/_sync/client/indices.py +422 -152
  59. elasticsearch/_sync/client/inference.py +4 -4
  60. elasticsearch/_sync/client/ingest.py +47 -26
  61. elasticsearch/_sync/client/license.py +38 -22
  62. elasticsearch/_sync/client/logstash.py +3 -3
  63. elasticsearch/_sync/client/migration.py +3 -3
  64. elasticsearch/_sync/client/ml.py +346 -291
  65. elasticsearch/_sync/client/monitoring.py +1 -1
  66. elasticsearch/_sync/client/nodes.py +43 -21
  67. elasticsearch/_sync/client/query_rules.py +69 -15
  68. elasticsearch/_sync/client/rollup.py +23 -9
  69. elasticsearch/_sync/client/search_application.py +35 -16
  70. elasticsearch/_sync/client/searchable_snapshots.py +13 -5
  71. elasticsearch/_sync/client/security.py +378 -180
  72. elasticsearch/_sync/client/slm.py +9 -9
  73. elasticsearch/_sync/client/snapshot.py +97 -12
  74. elasticsearch/_sync/client/sql.py +21 -16
  75. elasticsearch/_sync/client/ssl.py +18 -3
  76. elasticsearch/_sync/client/synonyms.py +17 -14
  77. elasticsearch/_sync/client/tasks.py +19 -9
  78. elasticsearch/_sync/client/text_structure.py +2 -2
  79. elasticsearch/_sync/client/transform.py +78 -72
  80. elasticsearch/_sync/client/utils.py +40 -0
  81. elasticsearch/_sync/client/watcher.py +11 -11
  82. elasticsearch/_sync/client/xpack.py +5 -3
  83. elasticsearch/_version.py +1 -1
  84. elasticsearch/exceptions.py +4 -0
  85. elasticsearch/helpers/actions.py +19 -10
  86. elasticsearch/helpers/errors.py +12 -4
  87. elasticsearch/helpers/vectorstore/_async/strategies.py +30 -9
  88. elasticsearch/helpers/vectorstore/_sync/strategies.py +30 -9
  89. {elasticsearch-8.15.1.dist-info → elasticsearch-8.17.0.dist-info}/METADATA +4 -3
  90. elasticsearch-8.17.0.dist-info/RECORD +117 -0
  91. {elasticsearch-8.15.1.dist-info → elasticsearch-8.17.0.dist-info}/WHEEL +1 -1
  92. elasticsearch-8.15.1.dist-info/RECORD +0 -117
  93. {elasticsearch-8.15.1.dist-info → elasticsearch-8.17.0.dist-info}/licenses/LICENSE +0 -0
  94. {elasticsearch-8.15.1.dist-info → elasticsearch-8.17.0.dist-info}/licenses/NOTICE +0 -0
@@ -82,8 +82,10 @@ from .utils import (
82
82
  _TYPE_HOSTS,
83
83
  CLIENT_META_SERVICE,
84
84
  SKIP_IN_PATH,
85
+ Stability,
85
86
  _quote,
86
87
  _rewrite_parameters,
88
+ _stability_warning,
87
89
  client_node_configs,
88
90
  is_requests_http_auth,
89
91
  is_requests_node_class,
@@ -624,12 +626,14 @@ class AsyncElasticsearch(BaseClient):
624
626
  error_trace: t.Optional[bool] = None,
625
627
  filter_path: t.Optional[t.Union[str, t.Sequence[str]]] = None,
626
628
  human: t.Optional[bool] = None,
629
+ list_executed_pipelines: t.Optional[bool] = None,
627
630
  pipeline: t.Optional[str] = None,
628
631
  pretty: t.Optional[bool] = None,
629
632
  refresh: t.Optional[
630
633
  t.Union[bool, str, t.Literal["false", "true", "wait_for"]]
631
634
  ] = None,
632
635
  require_alias: t.Optional[bool] = None,
636
+ require_data_stream: t.Optional[bool] = None,
633
637
  routing: t.Optional[str] = None,
634
638
  source: t.Optional[t.Union[bool, t.Union[str, t.Sequence[str]]]] = None,
635
639
  source_excludes: t.Optional[t.Union[str, t.Sequence[str]]] = None,
@@ -640,14 +644,17 @@ class AsyncElasticsearch(BaseClient):
640
644
  ] = None,
641
645
  ) -> ObjectApiResponse[t.Any]:
642
646
  """
643
- Performs multiple indexing or delete operations in a single API call. This reduces
644
- overhead and can greatly increase indexing speed.
647
+ Bulk index or delete documents. Performs multiple indexing or delete operations
648
+ in a single API call. This reduces overhead and can greatly increase indexing
649
+ speed.
645
650
 
646
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/docs-bulk.html>`_
651
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/docs-bulk.html>`_
647
652
 
648
653
  :param operations:
649
654
  :param index: Name of the data stream, index, or index alias to perform bulk
650
655
  actions on.
656
+ :param list_executed_pipelines: If `true`, the response will include the ingest
657
+ pipelines that were executed for each index or create.
651
658
  :param pipeline: ID of the pipeline to use to preprocess incoming documents.
652
659
  If the index has a default ingest pipeline specified, then setting the value
653
660
  to `_none` disables the default ingest pipeline for this request. If a final
@@ -658,6 +665,8 @@ class AsyncElasticsearch(BaseClient):
658
665
  make this operation visible to search, if `false` do nothing with refreshes.
659
666
  Valid values: `true`, `false`, `wait_for`.
660
667
  :param require_alias: If `true`, the request’s actions must target an index alias.
668
+ :param require_data_stream: If `true`, the request's actions must target a data
669
+ stream (existing or to-be-created).
661
670
  :param routing: Custom value used to route operations to a specific shard.
662
671
  :param source: `true` or `false` to return the `_source` field or not, or a list
663
672
  of fields to return.
@@ -691,6 +700,8 @@ class AsyncElasticsearch(BaseClient):
691
700
  __query["filter_path"] = filter_path
692
701
  if human is not None:
693
702
  __query["human"] = human
703
+ if list_executed_pipelines is not None:
704
+ __query["list_executed_pipelines"] = list_executed_pipelines
694
705
  if pipeline is not None:
695
706
  __query["pipeline"] = pipeline
696
707
  if pretty is not None:
@@ -699,6 +710,8 @@ class AsyncElasticsearch(BaseClient):
699
710
  __query["refresh"] = refresh
700
711
  if require_alias is not None:
701
712
  __query["require_alias"] = require_alias
713
+ if require_data_stream is not None:
714
+ __query["require_data_stream"] = require_data_stream
702
715
  if routing is not None:
703
716
  __query["routing"] = routing
704
717
  if source is not None:
@@ -740,9 +753,10 @@ class AsyncElasticsearch(BaseClient):
740
753
  body: t.Optional[t.Dict[str, t.Any]] = None,
741
754
  ) -> ObjectApiResponse[t.Any]:
742
755
  """
743
- Clears the search context and results for a scrolling search.
756
+ Clear a scrolling search. Clear the search context and results for a scrolling
757
+ search.
744
758
 
745
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/clear-scroll-api.html>`_
759
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/clear-scroll-api.html>`_
746
760
 
747
761
  :param scroll_id: Scroll IDs to clear. To clear all scroll IDs, use `_all`.
748
762
  """
@@ -790,9 +804,13 @@ class AsyncElasticsearch(BaseClient):
790
804
  body: t.Optional[t.Dict[str, t.Any]] = None,
791
805
  ) -> ObjectApiResponse[t.Any]:
792
806
  """
793
- Closes a point-in-time.
807
+ Close a point in time. A point in time must be opened explicitly before being
808
+ used in search requests. The `keep_alive` parameter tells Elasticsearch how long
809
+ it should persist. A point in time is automatically closed when the `keep_alive`
810
+ period has elapsed. However, keeping points in time has a cost; close them as
811
+ soon as they are no longer required for search requests.
794
812
 
795
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/point-in-time-api.html>`_
813
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/point-in-time-api.html>`_
796
814
 
797
815
  :param id: The ID of the point-in-time.
798
816
  """
@@ -864,9 +882,9 @@ class AsyncElasticsearch(BaseClient):
864
882
  body: t.Optional[t.Dict[str, t.Any]] = None,
865
883
  ) -> ObjectApiResponse[t.Any]:
866
884
  """
867
- Returns number of documents matching a query.
885
+ Count search results. Get the number of documents matching a query.
868
886
 
869
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/search-count.html>`_
887
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/search-count.html>`_
870
888
 
871
889
  :param index: Comma-separated list of data streams, indices, and aliases to search.
872
890
  Supports wildcards (`*`). To search all data streams and indices, omit this
@@ -997,11 +1015,11 @@ class AsyncElasticsearch(BaseClient):
997
1015
  ] = None,
998
1016
  ) -> ObjectApiResponse[t.Any]:
999
1017
  """
1000
- Adds a JSON document to the specified data stream or index and makes it searchable.
1001
- If the target is an index and the document already exists, the request updates
1002
- the document and increments its version.
1018
+ Index a document. Adds a JSON document to the specified data stream or index
1019
+ and makes it searchable. If the target is an index and the document already exists,
1020
+ the request updates the document and increments its version.
1003
1021
 
1004
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/docs-index_.html>`_
1022
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/docs-index_.html>`_
1005
1023
 
1006
1024
  :param index: Name of the data stream or index to target. If the target doesn’t
1007
1025
  exist and matches the name or wildcard (`*`) pattern of an index template
@@ -1103,9 +1121,9 @@ class AsyncElasticsearch(BaseClient):
1103
1121
  ] = None,
1104
1122
  ) -> ObjectApiResponse[t.Any]:
1105
1123
  """
1106
- Removes a JSON document from the specified index.
1124
+ Delete a document. Removes a JSON document from the specified index.
1107
1125
 
1108
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/docs-delete.html>`_
1126
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/docs-delete.html>`_
1109
1127
 
1110
1128
  :param index: Name of the target index.
1111
1129
  :param id: Unique identifier for the document.
@@ -1225,9 +1243,9 @@ class AsyncElasticsearch(BaseClient):
1225
1243
  body: t.Optional[t.Dict[str, t.Any]] = None,
1226
1244
  ) -> ObjectApiResponse[t.Any]:
1227
1245
  """
1228
- Deletes documents that match the specified query.
1246
+ Delete documents. Deletes documents that match the specified query.
1229
1247
 
1230
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/docs-delete-by-query.html>`_
1248
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/docs-delete-by-query.html>`_
1231
1249
 
1232
1250
  :param index: Comma-separated list of data streams, indices, and aliases to search.
1233
1251
  Supports wildcards (`*`). To search all data streams or indices, omit this
@@ -1403,9 +1421,12 @@ class AsyncElasticsearch(BaseClient):
1403
1421
  requests_per_second: t.Optional[float] = None,
1404
1422
  ) -> ObjectApiResponse[t.Any]:
1405
1423
  """
1406
- Changes the number of requests per second for a particular Delete By Query operation.
1424
+ Throttle a delete by query operation. Change the number of requests per second
1425
+ for a particular delete by query operation. Rethrottling that speeds up the query
1426
+ takes effect immediately but rethrotting that slows down the query takes effect
1427
+ after completing the current batch to prevent scroll timeouts.
1407
1428
 
1408
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/docs-delete-by-query.html>`_
1429
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/docs-delete-by-query.html>`_
1409
1430
 
1410
1431
  :param task_id: The ID for the task.
1411
1432
  :param requests_per_second: The throttle for this request in sub-requests per
@@ -1449,9 +1470,9 @@ class AsyncElasticsearch(BaseClient):
1449
1470
  timeout: t.Optional[t.Union[str, t.Literal[-1], t.Literal[0]]] = None,
1450
1471
  ) -> ObjectApiResponse[t.Any]:
1451
1472
  """
1452
- Deletes a stored script or search template.
1473
+ Delete a script or search template. Deletes a stored script or search template.
1453
1474
 
1454
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/modules-scripting.html>`_
1475
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/modules-scripting.html>`_
1455
1476
 
1456
1477
  :param id: Identifier for the stored script or search template.
1457
1478
  :param master_timeout: Period to wait for a connection to the master node. If
@@ -1517,9 +1538,9 @@ class AsyncElasticsearch(BaseClient):
1517
1538
  ] = None,
1518
1539
  ) -> HeadApiResponse:
1519
1540
  """
1520
- Checks if a document in an index exists.
1541
+ Check a document. Checks if a specified document exists.
1521
1542
 
1522
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/docs-get.html>`_
1543
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/docs-get.html>`_
1523
1544
 
1524
1545
  :param index: Comma-separated list of data streams, indices, and aliases. Supports
1525
1546
  wildcards (`*`).
@@ -1618,9 +1639,9 @@ class AsyncElasticsearch(BaseClient):
1618
1639
  ] = None,
1619
1640
  ) -> HeadApiResponse:
1620
1641
  """
1621
- Checks if a document's `_source` is stored.
1642
+ Check for a document source. Checks if a document's `_source` is stored.
1622
1643
 
1623
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/docs-get.html>`_
1644
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/docs-get.html>`_
1624
1645
 
1625
1646
  :param index: Comma-separated list of data streams, indices, and aliases. Supports
1626
1647
  wildcards (`*`).
@@ -1718,10 +1739,10 @@ class AsyncElasticsearch(BaseClient):
1718
1739
  body: t.Optional[t.Dict[str, t.Any]] = None,
1719
1740
  ) -> ObjectApiResponse[t.Any]:
1720
1741
  """
1721
- Returns information about why a specific document matches (or doesn’t match)
1722
- a query.
1742
+ Explain a document match result. Returns information about why a specific document
1743
+ matches, or doesn’t match, a query.
1723
1744
 
1724
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/search-explain.html>`_
1745
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/search-explain.html>`_
1725
1746
 
1726
1747
  :param index: Index names used to limit the request. Only a single index name
1727
1748
  can be provided to this parameter.
@@ -1838,12 +1859,13 @@ class AsyncElasticsearch(BaseClient):
1838
1859
  body: t.Optional[t.Dict[str, t.Any]] = None,
1839
1860
  ) -> ObjectApiResponse[t.Any]:
1840
1861
  """
1841
- The field capabilities API returns the information about the capabilities of
1842
- fields among multiple indices. The field capabilities API returns runtime fields
1843
- like any other field. For example, a runtime field with a type of keyword is
1844
- returned as any other field that belongs to the `keyword` family.
1862
+ Get the field capabilities. Get information about the capabilities of fields
1863
+ among multiple indices. For data streams, the API returns field capabilities
1864
+ among the stream’s backing indices. It returns runtime fields like any other
1865
+ field. For example, a runtime field with a type of keyword is returned the same
1866
+ as any other field that belongs to the `keyword` family.
1845
1867
 
1846
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/search-field-caps.html>`_
1868
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/search-field-caps.html>`_
1847
1869
 
1848
1870
  :param index: Comma-separated list of data streams, indices, and aliases used
1849
1871
  to limit the request. Supports wildcards (*). To target all data streams
@@ -1957,9 +1979,10 @@ class AsyncElasticsearch(BaseClient):
1957
1979
  ] = None,
1958
1980
  ) -> ObjectApiResponse[t.Any]:
1959
1981
  """
1960
- Returns a document.
1982
+ Get a document by its ID. Retrieves the document with the specified ID from an
1983
+ index.
1961
1984
 
1962
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/docs-get.html>`_
1985
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/docs-get.html>`_
1963
1986
 
1964
1987
  :param index: Name of the index that contains the document.
1965
1988
  :param id: Unique identifier of the document.
@@ -2046,9 +2069,9 @@ class AsyncElasticsearch(BaseClient):
2046
2069
  pretty: t.Optional[bool] = None,
2047
2070
  ) -> ObjectApiResponse[t.Any]:
2048
2071
  """
2049
- Retrieves a stored script or search template.
2072
+ Get a script or search template. Retrieves a stored script or search template.
2050
2073
 
2051
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/modules-scripting.html>`_
2074
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/modules-scripting.html>`_
2052
2075
 
2053
2076
  :param id: Identifier for the stored script or search template.
2054
2077
  :param master_timeout: Specify timeout for connection to master
@@ -2088,9 +2111,9 @@ class AsyncElasticsearch(BaseClient):
2088
2111
  pretty: t.Optional[bool] = None,
2089
2112
  ) -> ObjectApiResponse[t.Any]:
2090
2113
  """
2091
- Returns all script contexts.
2114
+ Get script contexts. Get a list of supported script contexts and their methods.
2092
2115
 
2093
- `<https://www.elastic.co/guide/en/elasticsearch/painless/8.15/painless-contexts.html>`_
2116
+ `<https://www.elastic.co/guide/en/elasticsearch/painless/8.17/painless-contexts.html>`_
2094
2117
  """
2095
2118
  __path_parts: t.Dict[str, str] = {}
2096
2119
  __path = "/_script_context"
@@ -2123,9 +2146,9 @@ class AsyncElasticsearch(BaseClient):
2123
2146
  pretty: t.Optional[bool] = None,
2124
2147
  ) -> ObjectApiResponse[t.Any]:
2125
2148
  """
2126
- Returns available script types, languages and contexts
2149
+ Get script languages. Get a list of available script types, languages, and contexts.
2127
2150
 
2128
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/modules-scripting.html>`_
2151
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/modules-scripting.html>`_
2129
2152
  """
2130
2153
  __path_parts: t.Dict[str, str] = {}
2131
2154
  __path = "/_script_language"
@@ -2178,9 +2201,9 @@ class AsyncElasticsearch(BaseClient):
2178
2201
  ] = None,
2179
2202
  ) -> ObjectApiResponse[t.Any]:
2180
2203
  """
2181
- Returns the source of a document.
2204
+ Get a document's source. Returns the source of a document.
2182
2205
 
2183
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/docs-get.html>`_
2206
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/docs-get.html>`_
2184
2207
 
2185
2208
  :param index: Name of the index that contains the document.
2186
2209
  :param id: Unique identifier of the document.
@@ -2261,9 +2284,28 @@ class AsyncElasticsearch(BaseClient):
2261
2284
  verbose: t.Optional[bool] = None,
2262
2285
  ) -> ObjectApiResponse[t.Any]:
2263
2286
  """
2264
- Returns the health of the cluster.
2265
-
2266
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/health-api.html>`_
2287
+ Get the cluster health. Get a report with the health status of an Elasticsearch
2288
+ cluster. The report contains a list of indicators that compose Elasticsearch
2289
+ functionality. Each indicator has a health status of: green, unknown, yellow
2290
+ or red. The indicator will provide an explanation and metadata describing the
2291
+ reason for its current health status. The cluster’s status is controlled by the
2292
+ worst indicator status. In the event that an indicator’s status is non-green,
2293
+ a list of impacts may be present in the indicator result which detail the functionalities
2294
+ that are negatively affected by the health issue. Each impact carries with it
2295
+ a severity level, an area of the system that is affected, and a simple description
2296
+ of the impact on the system. Some health indicators can determine the root cause
2297
+ of a health problem and prescribe a set of steps that can be performed in order
2298
+ to improve the health of the system. The root cause and remediation steps are
2299
+ encapsulated in a diagnosis. A diagnosis contains a cause detailing a root cause
2300
+ analysis, an action containing a brief description of the steps to take to fix
2301
+ the problem, the list of affected resources (if applicable), and a detailed step-by-step
2302
+ troubleshooting guide to fix the diagnosed problem. NOTE: The health indicators
2303
+ perform root cause analysis of non-green health statuses. This can be computationally
2304
+ expensive when called frequently. When setting up automated polling of the API
2305
+ for health status, set verbose to false to disable the more expensive analysis
2306
+ logic.
2307
+
2308
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/health-api.html>`_
2267
2309
 
2268
2310
  :param feature: A feature of the cluster, as returned by the top-level health
2269
2311
  report API.
@@ -2336,11 +2378,11 @@ class AsyncElasticsearch(BaseClient):
2336
2378
  ] = None,
2337
2379
  ) -> ObjectApiResponse[t.Any]:
2338
2380
  """
2339
- Adds a JSON document to the specified data stream or index and makes it searchable.
2340
- If the target is an index and the document already exists, the request updates
2341
- the document and increments its version.
2381
+ Index a document. Adds a JSON document to the specified data stream or index
2382
+ and makes it searchable. If the target is an index and the document already exists,
2383
+ the request updates the document and increments its version.
2342
2384
 
2343
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/docs-index_.html>`_
2385
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/docs-index_.html>`_
2344
2386
 
2345
2387
  :param index: Name of the data stream or index to target.
2346
2388
  :param document:
@@ -2447,9 +2489,9 @@ class AsyncElasticsearch(BaseClient):
2447
2489
  pretty: t.Optional[bool] = None,
2448
2490
  ) -> ObjectApiResponse[t.Any]:
2449
2491
  """
2450
- Returns basic information about the cluster.
2492
+ Get cluster info. Returns basic information about the cluster.
2451
2493
 
2452
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/index.html>`_
2494
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/index.html>`_
2453
2495
  """
2454
2496
  __path_parts: t.Dict[str, str] = {}
2455
2497
  __path = "/"
@@ -2483,6 +2525,7 @@ class AsyncElasticsearch(BaseClient):
2483
2525
  ),
2484
2526
  parameter_aliases={"_source": "source"},
2485
2527
  )
2528
+ @_stability_warning(Stability.EXPERIMENTAL)
2486
2529
  async def knn_search(
2487
2530
  self,
2488
2531
  *,
@@ -2503,9 +2546,17 @@ class AsyncElasticsearch(BaseClient):
2503
2546
  body: t.Optional[t.Dict[str, t.Any]] = None,
2504
2547
  ) -> ObjectApiResponse[t.Any]:
2505
2548
  """
2506
- Performs a kNN search.
2507
-
2508
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/search-search.html>`_
2549
+ Run a knn search. NOTE: The kNN search API has been replaced by the `knn` option
2550
+ in the search API. Perform a k-nearest neighbor (kNN) search on a dense_vector
2551
+ field and return the matching documents. Given a query vector, the API finds
2552
+ the k closest vectors and returns those documents as search hits. Elasticsearch
2553
+ uses the HNSW algorithm to support efficient kNN search. Like most kNN algorithms,
2554
+ HNSW is an approximate method that sacrifices result accuracy for improved search
2555
+ speed. This means the results returned are not always the true k closest neighbors.
2556
+ The kNN search API supports restricting the search using a filter. The search
2557
+ will return the top k documents that also match the filter query.
2558
+
2559
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/search-search.html>`_
2509
2560
 
2510
2561
  :param index: A comma-separated list of index names to search; use `_all` or
2511
2562
  to perform the operation on all indices
@@ -2604,9 +2655,12 @@ class AsyncElasticsearch(BaseClient):
2604
2655
  body: t.Optional[t.Dict[str, t.Any]] = None,
2605
2656
  ) -> ObjectApiResponse[t.Any]:
2606
2657
  """
2607
- Allows to get multiple documents in one request.
2658
+ Get multiple documents. Get multiple JSON documents by ID from one or more indices.
2659
+ If you specify an index in the request URI, you only need to specify the document
2660
+ IDs in the request body. To ensure fast responses, this multi get (mget) API
2661
+ responds with partial results if one or more shards fail.
2608
2662
 
2609
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/docs-multi-get.html>`_
2663
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/docs-multi-get.html>`_
2610
2664
 
2611
2665
  :param index: Name of the index to retrieve documents from when `ids` are specified,
2612
2666
  or when a document in the `docs` array does not specify an index.
@@ -2725,9 +2779,15 @@ class AsyncElasticsearch(BaseClient):
2725
2779
  typed_keys: t.Optional[bool] = None,
2726
2780
  ) -> ObjectApiResponse[t.Any]:
2727
2781
  """
2728
- Allows to execute several search operations in one request.
2782
+ Run multiple searches. The format of the request is similar to the bulk API format
2783
+ and makes use of the newline delimited JSON (NDJSON) format. The structure is
2784
+ as follows: ``` header\\n body\\n header\\n body\\n ``` This structure is specifically
2785
+ optimized to reduce parsing if a specific search ends up redirected to another
2786
+ node. IMPORTANT: The final line of data must end with a newline character `\\n`.
2787
+ Each newline character may be preceded by a carriage return `\\r`. When sending
2788
+ requests to this endpoint the `Content-Type` header should be set to `application/x-ndjson`.
2729
2789
 
2730
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/search-multi-search.html>`_
2790
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/search-multi-search.html>`_
2731
2791
 
2732
2792
  :param searches:
2733
2793
  :param index: Comma-separated list of data streams, indices, and index aliases
@@ -2857,9 +2917,9 @@ class AsyncElasticsearch(BaseClient):
2857
2917
  typed_keys: t.Optional[bool] = None,
2858
2918
  ) -> ObjectApiResponse[t.Any]:
2859
2919
  """
2860
- Runs multiple templated searches with a single request.
2920
+ Run multiple templated searches.
2861
2921
 
2862
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/search-multi-search.html>`_
2922
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/search-multi-search.html>`_
2863
2923
 
2864
2924
  :param search_templates:
2865
2925
  :param index: Comma-separated list of data streams, indices, and aliases to search.
@@ -2952,9 +3012,13 @@ class AsyncElasticsearch(BaseClient):
2952
3012
  body: t.Optional[t.Dict[str, t.Any]] = None,
2953
3013
  ) -> ObjectApiResponse[t.Any]:
2954
3014
  """
2955
- Returns multiple termvectors in one request.
3015
+ Get multiple term vectors. You can specify existing documents by index and ID
3016
+ or provide artificial documents in the body of the request. You can specify the
3017
+ index in the request body or request URI. The response contains a `docs` array
3018
+ with all the fetched termvectors. Each element has the structure provided by
3019
+ the termvectors API.
2956
3020
 
2957
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/docs-multi-termvectors.html>`_
3021
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/docs-multi-termvectors.html>`_
2958
3022
 
2959
3023
  :param index: Name of the index that contains the documents.
2960
3024
  :param docs: Array of existing or artificial documents.
@@ -3036,12 +3100,15 @@ class AsyncElasticsearch(BaseClient):
3036
3100
  path_parts=__path_parts,
3037
3101
  )
3038
3102
 
3039
- @_rewrite_parameters()
3103
+ @_rewrite_parameters(
3104
+ body_fields=("index_filter",),
3105
+ )
3040
3106
  async def open_point_in_time(
3041
3107
  self,
3042
3108
  *,
3043
3109
  index: t.Union[str, t.Sequence[str]],
3044
3110
  keep_alive: t.Union[str, t.Literal[-1], t.Literal[0]],
3111
+ allow_partial_search_results: t.Optional[bool] = None,
3045
3112
  error_trace: t.Optional[bool] = None,
3046
3113
  expand_wildcards: t.Optional[
3047
3114
  t.Union[
@@ -3054,43 +3121,56 @@ class AsyncElasticsearch(BaseClient):
3054
3121
  filter_path: t.Optional[t.Union[str, t.Sequence[str]]] = None,
3055
3122
  human: t.Optional[bool] = None,
3056
3123
  ignore_unavailable: t.Optional[bool] = None,
3124
+ index_filter: t.Optional[t.Mapping[str, t.Any]] = None,
3057
3125
  preference: t.Optional[str] = None,
3058
3126
  pretty: t.Optional[bool] = None,
3059
3127
  routing: t.Optional[str] = None,
3128
+ body: t.Optional[t.Dict[str, t.Any]] = None,
3060
3129
  ) -> ObjectApiResponse[t.Any]:
3061
3130
  """
3062
- A search request by default executes against the most recent visible data of
3063
- the target indices, which is called point in time. Elasticsearch pit (point in
3064
- time) is a lightweight view into the state of the data as it existed when initiated.
3065
- In some cases, it’s preferred to perform multiple search requests using the same
3066
- point in time. For example, if refreshes happen between `search_after` requests,
3067
- then the results of those requests might not be consistent as changes happening
3068
- between searches are only visible to the more recent point in time.
3069
-
3070
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/point-in-time-api.html>`_
3131
+ Open a point in time. A search request by default runs against the most recent
3132
+ visible data of the target indices, which is called point in time. Elasticsearch
3133
+ pit (point in time) is a lightweight view into the state of the data as it existed
3134
+ when initiated. In some cases, it’s preferred to perform multiple search requests
3135
+ using the same point in time. For example, if refreshes happen between `search_after`
3136
+ requests, then the results of those requests might not be consistent as changes
3137
+ happening between searches are only visible to the more recent point in time.
3138
+ A point in time must be opened explicitly before being used in search requests.
3139
+ The `keep_alive` parameter tells Elasticsearch how long it should persist.
3140
+
3141
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/point-in-time-api.html>`_
3071
3142
 
3072
3143
  :param index: A comma-separated list of index names to open point in time; use
3073
3144
  `_all` or empty string to perform the operation on all indices
3074
3145
  :param keep_alive: Extends the time to live of the corresponding point in time.
3146
+ :param allow_partial_search_results: If `false`, creating a point in time request
3147
+ when a shard is missing or unavailable will throw an exception. If `true`,
3148
+ the point in time will contain all the shards that are available at the time
3149
+ of the request.
3075
3150
  :param expand_wildcards: Type of index that wildcard patterns can match. If the
3076
3151
  request can target data streams, this argument determines whether wildcard
3077
3152
  expressions match hidden data streams. Supports comma-separated values, such
3078
3153
  as `open,hidden`. Valid values are: `all`, `open`, `closed`, `hidden`, `none`.
3079
3154
  :param ignore_unavailable: If `false`, the request returns an error if it targets
3080
3155
  a missing or closed index.
3156
+ :param index_filter: Allows to filter indices if the provided query rewrites
3157
+ to `match_none` on every shard.
3081
3158
  :param preference: Specifies the node or shard the operation should be performed
3082
3159
  on. Random by default.
3083
3160
  :param routing: Custom value used to route operations to a specific shard.
3084
3161
  """
3085
3162
  if index in SKIP_IN_PATH:
3086
3163
  raise ValueError("Empty value passed for parameter 'index'")
3087
- if keep_alive is None:
3164
+ if keep_alive is None and body is None:
3088
3165
  raise ValueError("Empty value passed for parameter 'keep_alive'")
3089
3166
  __path_parts: t.Dict[str, str] = {"index": _quote(index)}
3090
3167
  __path = f'/{__path_parts["index"]}/_pit'
3091
3168
  __query: t.Dict[str, t.Any] = {}
3169
+ __body: t.Dict[str, t.Any] = body if body is not None else {}
3092
3170
  if keep_alive is not None:
3093
3171
  __query["keep_alive"] = keep_alive
3172
+ if allow_partial_search_results is not None:
3173
+ __query["allow_partial_search_results"] = allow_partial_search_results
3094
3174
  if error_trace is not None:
3095
3175
  __query["error_trace"] = error_trace
3096
3176
  if expand_wildcards is not None:
@@ -3107,12 +3187,20 @@ class AsyncElasticsearch(BaseClient):
3107
3187
  __query["pretty"] = pretty
3108
3188
  if routing is not None:
3109
3189
  __query["routing"] = routing
3190
+ if not __body:
3191
+ if index_filter is not None:
3192
+ __body["index_filter"] = index_filter
3193
+ if not __body:
3194
+ __body = None # type: ignore[assignment]
3110
3195
  __headers = {"accept": "application/json"}
3196
+ if __body is not None:
3197
+ __headers["content-type"] = "application/json"
3111
3198
  return await self.perform_request( # type: ignore[return-value]
3112
3199
  "POST",
3113
3200
  __path,
3114
3201
  params=__query,
3115
3202
  headers=__headers,
3203
+ body=__body,
3116
3204
  endpoint_id="open_point_in_time",
3117
3205
  path_parts=__path_parts,
3118
3206
  )
@@ -3135,9 +3223,10 @@ class AsyncElasticsearch(BaseClient):
3135
3223
  body: t.Optional[t.Dict[str, t.Any]] = None,
3136
3224
  ) -> ObjectApiResponse[t.Any]:
3137
3225
  """
3138
- Creates or updates a stored script or search template.
3226
+ Create or update a script or search template. Creates or updates a stored script
3227
+ or search template.
3139
3228
 
3140
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/modules-scripting.html>`_
3229
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/modules-scripting.html>`_
3141
3230
 
3142
3231
  :param id: Identifier for the stored script or search template. Must be unique
3143
3232
  within the cluster.
@@ -3220,10 +3309,10 @@ class AsyncElasticsearch(BaseClient):
3220
3309
  body: t.Optional[t.Dict[str, t.Any]] = None,
3221
3310
  ) -> ObjectApiResponse[t.Any]:
3222
3311
  """
3223
- Enables you to evaluate the quality of ranked search results over a set of typical
3224
- search queries.
3312
+ Evaluate ranked search results. Evaluate the quality of ranked search results
3313
+ over a set of typical search queries.
3225
3314
 
3226
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/search-rank-eval.html>`_
3315
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/search-rank-eval.html>`_
3227
3316
 
3228
3317
  :param requests: A set of typical search requests, together with their provided
3229
3318
  ratings.
@@ -3315,11 +3404,11 @@ class AsyncElasticsearch(BaseClient):
3315
3404
  body: t.Optional[t.Dict[str, t.Any]] = None,
3316
3405
  ) -> ObjectApiResponse[t.Any]:
3317
3406
  """
3318
- Allows to copy documents from one index to another, optionally filtering the
3319
- source documents by a query, changing the destination index settings, or fetching
3320
- the documents from a remote cluster.
3407
+ Reindex documents. Copies documents from a source to a destination. The source
3408
+ can be any existing index, alias, or data stream. The destination must differ
3409
+ from the source. For example, you cannot reindex a data stream into itself.
3321
3410
 
3322
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/docs-reindex.html>`_
3411
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/docs-reindex.html>`_
3323
3412
 
3324
3413
  :param dest: The destination you are copying to.
3325
3414
  :param source: The source you are copying from.
@@ -3413,9 +3502,10 @@ class AsyncElasticsearch(BaseClient):
3413
3502
  requests_per_second: t.Optional[float] = None,
3414
3503
  ) -> ObjectApiResponse[t.Any]:
3415
3504
  """
3416
- Copies documents from a source to a destination.
3505
+ Throttle a reindex operation. Change the number of requests per second for a
3506
+ particular reindex operation.
3417
3507
 
3418
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/docs-reindex.html>`_
3508
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/docs-reindex.html>`_
3419
3509
 
3420
3510
  :param task_id: Identifier for the task.
3421
3511
  :param requests_per_second: The throttle for this request in sub-requests per
@@ -3464,9 +3554,9 @@ class AsyncElasticsearch(BaseClient):
3464
3554
  body: t.Optional[t.Dict[str, t.Any]] = None,
3465
3555
  ) -> ObjectApiResponse[t.Any]:
3466
3556
  """
3467
- Renders a search template as a search request body.
3557
+ Render a search template. Render a search template as a search request body.
3468
3558
 
3469
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/render-search-template-api.html>`_
3559
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/render-search-template-api.html>`_
3470
3560
 
3471
3561
  :param id: ID of the search template to render. If no `source` is specified,
3472
3562
  this or the `id` request body parameter is required.
@@ -3519,6 +3609,7 @@ class AsyncElasticsearch(BaseClient):
3519
3609
  @_rewrite_parameters(
3520
3610
  body_fields=("context", "context_setup", "script"),
3521
3611
  )
3612
+ @_stability_warning(Stability.EXPERIMENTAL)
3522
3613
  async def scripts_painless_execute(
3523
3614
  self,
3524
3615
  *,
@@ -3532,9 +3623,9 @@ class AsyncElasticsearch(BaseClient):
3532
3623
  body: t.Optional[t.Dict[str, t.Any]] = None,
3533
3624
  ) -> ObjectApiResponse[t.Any]:
3534
3625
  """
3535
- Runs a script and returns a result.
3626
+ Run a script. Runs a script and returns a result.
3536
3627
 
3537
- `<https://www.elastic.co/guide/en/elasticsearch/painless/8.15/painless-execute-api.html>`_
3628
+ `<https://www.elastic.co/guide/en/elasticsearch/painless/8.17/painless-execute-api.html>`_
3538
3629
 
3539
3630
  :param context: The context that the script should run in.
3540
3631
  :param context_setup: Additional parameters for the `context`.
@@ -3590,9 +3681,24 @@ class AsyncElasticsearch(BaseClient):
3590
3681
  body: t.Optional[t.Dict[str, t.Any]] = None,
3591
3682
  ) -> ObjectApiResponse[t.Any]:
3592
3683
  """
3593
- Allows to retrieve a large numbers of results from a single search request.
3594
-
3595
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/search-request-body.html#request-body-search-scroll>`_
3684
+ Run a scrolling search. IMPORTANT: The scroll API is no longer recommend for
3685
+ deep pagination. If you need to preserve the index state while paging through
3686
+ more than 10,000 hits, use the `search_after` parameter with a point in time
3687
+ (PIT). The scroll API gets large sets of results from a single scrolling search
3688
+ request. To get the necessary scroll ID, submit a search API request that includes
3689
+ an argument for the `scroll` query parameter. The `scroll` parameter indicates
3690
+ how long Elasticsearch should retain the search context for the request. The
3691
+ search response returns a scroll ID in the `_scroll_id` response body parameter.
3692
+ You can then use the scroll ID with the scroll API to retrieve the next batch
3693
+ of results for the request. If the Elasticsearch security features are enabled,
3694
+ the access to the results of a specific scroll ID is restricted to the user or
3695
+ API key that submitted the search. You can also use the scroll API to specify
3696
+ a new scroll parameter that extends or shortens the retention period for the
3697
+ search context. IMPORTANT: Results from a scrolling search reflect the state
3698
+ of the index at the time of the initial search request. Subsequent indexing or
3699
+ document changes only affect later search and scroll requests.
3700
+
3701
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/search-request-body.html#request-body-search-scroll>`_
3596
3702
 
3597
3703
  :param scroll_id: Scroll ID of the search.
3598
3704
  :param rest_total_hits_as_int: If true, the API response’s hit.total property
@@ -3780,11 +3886,11 @@ class AsyncElasticsearch(BaseClient):
3780
3886
  body: t.Optional[t.Dict[str, t.Any]] = None,
3781
3887
  ) -> ObjectApiResponse[t.Any]:
3782
3888
  """
3783
- Returns search hits that match the query defined in the request. You can provide
3784
- search queries using the `q` query string parameter or the request body. If both
3785
- are specified, only the query parameter is used.
3889
+ Run a search. Get search hits that match the query defined in the request. You
3890
+ can provide search queries using the `q` query string parameter or the request
3891
+ body. If both are specified, only the query parameter is used.
3786
3892
 
3787
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/search-search.html>`_
3893
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/search-search.html>`_
3788
3894
 
3789
3895
  :param index: Comma-separated list of data streams, indices, and aliases to search.
3790
3896
  Supports wildcards (`*`). To search all data streams and indices, omit this
@@ -4212,10 +4318,9 @@ class AsyncElasticsearch(BaseClient):
4212
4318
  body: t.Optional[t.Dict[str, t.Any]] = None,
4213
4319
  ) -> BinaryApiResponse:
4214
4320
  """
4215
- Searches a vector tile for geospatial values. Returns results as a binary Mapbox
4216
- vector tile.
4321
+ Search a vector tile. Search a vector tile for geospatial values.
4217
4322
 
4218
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/search-vector-tile-api.html>`_
4323
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/search-vector-tile-api.html>`_
4219
4324
 
4220
4325
  :param index: Comma-separated list of data streams, indices, or aliases to search
4221
4326
  :param field: Field containing geospatial data to return
@@ -4367,10 +4472,12 @@ class AsyncElasticsearch(BaseClient):
4367
4472
  routing: t.Optional[str] = None,
4368
4473
  ) -> ObjectApiResponse[t.Any]:
4369
4474
  """
4370
- Returns information about the indices and shards that a search request would
4371
- be executed against.
4475
+ Get the search shards. Get the indices and shards that a search request would
4476
+ be run against. This information can be useful for working out issues or planning
4477
+ optimizations with routing and shard preferences. When filtered aliases are used,
4478
+ the filter is returned as part of the indices section.
4372
4479
 
4373
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/search-shards.html>`_
4480
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/search-shards.html>`_
4374
4481
 
4375
4482
  :param index: Returns the indices and shards that a search request would be executed
4376
4483
  against.
@@ -4469,9 +4576,9 @@ class AsyncElasticsearch(BaseClient):
4469
4576
  body: t.Optional[t.Dict[str, t.Any]] = None,
4470
4577
  ) -> ObjectApiResponse[t.Any]:
4471
4578
  """
4472
- Runs a search with a search template.
4579
+ Run a search with a search template.
4473
4580
 
4474
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/search-template.html>`_
4581
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/search-template.html>`_
4475
4582
 
4476
4583
  :param index: Comma-separated list of data streams, indices, and aliases to search.
4477
4584
  Supports wildcards (*).
@@ -4601,11 +4708,17 @@ class AsyncElasticsearch(BaseClient):
4601
4708
  body: t.Optional[t.Dict[str, t.Any]] = None,
4602
4709
  ) -> ObjectApiResponse[t.Any]:
4603
4710
  """
4604
- The terms enum API can be used to discover terms in the index that begin with
4605
- the provided string. It is designed for low-latency look-ups used in auto-complete
4606
- scenarios.
4607
-
4608
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/search-terms-enum.html>`_
4711
+ Get terms in an index. Discover terms that match a partial string in an index.
4712
+ This "terms enum" API is designed for low-latency look-ups used in auto-complete
4713
+ scenarios. If the `complete` property in the response is false, the returned
4714
+ terms set may be incomplete and should be treated as approximate. This can occur
4715
+ due to a few reasons, such as a request timeout or a node error. NOTE: The terms
4716
+ enum API may return terms from deleted documents. Deleted documents are initially
4717
+ only marked as deleted. It is not until their segments are merged that documents
4718
+ are actually deleted. Until that happens, the terms enum API will return terms
4719
+ from these documents.
4720
+
4721
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/search-terms-enum.html>`_
4609
4722
 
4610
4723
  :param index: Comma-separated list of data streams, indices, and index aliases
4611
4724
  to search. Wildcard (*) expressions are supported.
@@ -4701,10 +4814,10 @@ class AsyncElasticsearch(BaseClient):
4701
4814
  body: t.Optional[t.Dict[str, t.Any]] = None,
4702
4815
  ) -> ObjectApiResponse[t.Any]:
4703
4816
  """
4704
- Returns information and statistics about terms in the fields of a particular
4705
- document.
4817
+ Get term vector information. Get information and statistics about terms in the
4818
+ fields of a particular document.
4706
4819
 
4707
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/docs-termvectors.html>`_
4820
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/docs-termvectors.html>`_
4708
4821
 
4709
4822
  :param index: Name of the index that contains the document.
4710
4823
  :param id: Unique identifier of the document.
@@ -4844,9 +4957,10 @@ class AsyncElasticsearch(BaseClient):
4844
4957
  body: t.Optional[t.Dict[str, t.Any]] = None,
4845
4958
  ) -> ObjectApiResponse[t.Any]:
4846
4959
  """
4847
- Updates a document with a script or partial document.
4960
+ Update a document. Updates a document by running a script or passing a partial
4961
+ document.
4848
4962
 
4849
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/docs-update.html>`_
4963
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/docs-update.html>`_
4850
4964
 
4851
4965
  :param index: The name of the index
4852
4966
  :param id: Document ID
@@ -5008,11 +5122,11 @@ class AsyncElasticsearch(BaseClient):
5008
5122
  body: t.Optional[t.Dict[str, t.Any]] = None,
5009
5123
  ) -> ObjectApiResponse[t.Any]:
5010
5124
  """
5011
- Updates documents that match the specified query. If no query is specified, performs
5012
- an update on every document in the data stream or index without modifying the
5013
- source, which is useful for picking up mapping changes.
5125
+ Update documents. Updates documents that match the specified query. If no query
5126
+ is specified, performs an update on every document in the data stream or index
5127
+ without modifying the source, which is useful for picking up mapping changes.
5014
5128
 
5015
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/docs-update-by-query.html>`_
5129
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/docs-update-by-query.html>`_
5016
5130
 
5017
5131
  :param index: Comma-separated list of data streams, indices, and aliases to search.
5018
5132
  Supports wildcards (`*`). To search all data streams or indices, omit this
@@ -5206,9 +5320,12 @@ class AsyncElasticsearch(BaseClient):
5206
5320
  requests_per_second: t.Optional[float] = None,
5207
5321
  ) -> ObjectApiResponse[t.Any]:
5208
5322
  """
5209
- Changes the number of requests per second for a particular Update By Query operation.
5323
+ Throttle an update by query operation. Change the number of requests per second
5324
+ for a particular update by query operation. Rethrottling that speeds up the query
5325
+ takes effect immediately but rethrotting that slows down the query takes effect
5326
+ after completing the current batch to prevent scroll timeouts.
5210
5327
 
5211
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/docs-update-by-query.html>`_
5328
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/docs-update-by-query.html>`_
5212
5329
 
5213
5330
  :param task_id: The ID for the task.
5214
5331
  :param requests_per_second: The throttle for this request in sub-requests per