elasticsearch 8.15.1__py3-none-any.whl → 8.16.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 +198 -117
  2. elasticsearch/_async/client/async_search.py +25 -25
  3. elasticsearch/_async/client/autoscaling.py +24 -11
  4. elasticsearch/_async/client/cat.py +75 -66
  5. elasticsearch/_async/client/ccr.py +13 -13
  6. elasticsearch/_async/client/cluster.py +40 -37
  7. elasticsearch/_async/client/connector.py +112 -51
  8. elasticsearch/_async/client/dangling_indices.py +27 -12
  9. elasticsearch/_async/client/enrich.py +10 -10
  10. elasticsearch/_async/client/eql.py +4 -4
  11. elasticsearch/_async/client/esql.py +42 -4
  12. elasticsearch/_async/client/features.py +4 -3
  13. elasticsearch/_async/client/fleet.py +10 -2
  14. elasticsearch/_async/client/graph.py +1 -1
  15. elasticsearch/_async/client/ilm.py +16 -12
  16. elasticsearch/_async/client/indices.py +176 -108
  17. elasticsearch/_async/client/inference.py +15 -5
  18. elasticsearch/_async/client/ingest.py +28 -12
  19. elasticsearch/_async/client/license.py +10 -10
  20. elasticsearch/_async/client/logstash.py +3 -3
  21. elasticsearch/_async/client/migration.py +3 -3
  22. elasticsearch/_async/client/ml.py +294 -291
  23. elasticsearch/_async/client/monitoring.py +1 -1
  24. elasticsearch/_async/client/nodes.py +16 -8
  25. elasticsearch/_async/client/query_rules.py +61 -8
  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 +371 -180
  30. elasticsearch/_async/client/slm.py +9 -9
  31. elasticsearch/_async/client/snapshot.py +97 -12
  32. elasticsearch/_async/client/sql.py +11 -7
  33. elasticsearch/_async/client/ssl.py +18 -3
  34. elasticsearch/_async/client/synonyms.py +7 -7
  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 +198 -117
  44. elasticsearch/_sync/client/async_search.py +25 -25
  45. elasticsearch/_sync/client/autoscaling.py +24 -11
  46. elasticsearch/_sync/client/cat.py +75 -66
  47. elasticsearch/_sync/client/ccr.py +13 -13
  48. elasticsearch/_sync/client/cluster.py +40 -37
  49. elasticsearch/_sync/client/connector.py +112 -51
  50. elasticsearch/_sync/client/dangling_indices.py +27 -12
  51. elasticsearch/_sync/client/enrich.py +10 -10
  52. elasticsearch/_sync/client/eql.py +4 -4
  53. elasticsearch/_sync/client/esql.py +42 -4
  54. elasticsearch/_sync/client/features.py +4 -3
  55. elasticsearch/_sync/client/fleet.py +10 -2
  56. elasticsearch/_sync/client/graph.py +1 -1
  57. elasticsearch/_sync/client/ilm.py +16 -12
  58. elasticsearch/_sync/client/indices.py +176 -108
  59. elasticsearch/_sync/client/inference.py +15 -5
  60. elasticsearch/_sync/client/ingest.py +28 -12
  61. elasticsearch/_sync/client/license.py +10 -10
  62. elasticsearch/_sync/client/logstash.py +3 -3
  63. elasticsearch/_sync/client/migration.py +3 -3
  64. elasticsearch/_sync/client/ml.py +294 -291
  65. elasticsearch/_sync/client/monitoring.py +1 -1
  66. elasticsearch/_sync/client/nodes.py +16 -8
  67. elasticsearch/_sync/client/query_rules.py +61 -8
  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 +371 -180
  72. elasticsearch/_sync/client/slm.py +9 -9
  73. elasticsearch/_sync/client/snapshot.py +97 -12
  74. elasticsearch/_sync/client/sql.py +11 -7
  75. elasticsearch/_sync/client/ssl.py +18 -3
  76. elasticsearch/_sync/client/synonyms.py +7 -7
  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.16.0.dist-info}/METADATA +5 -6
  90. elasticsearch-8.16.0.dist-info/RECORD +117 -0
  91. {elasticsearch-8.15.1.dist-info → elasticsearch-8.16.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.16.0.dist-info}/licenses/LICENSE +0 -0
  94. {elasticsearch-8.15.1.dist-info → elasticsearch-8.16.0.dist-info}/licenses/NOTICE +0 -0
@@ -20,12 +20,19 @@ import typing as t
20
20
  from elastic_transport import ObjectApiResponse
21
21
 
22
22
  from ._base import NamespacedClient
23
- from .utils import SKIP_IN_PATH, _quote, _rewrite_parameters
23
+ from .utils import (
24
+ SKIP_IN_PATH,
25
+ Stability,
26
+ _quote,
27
+ _rewrite_parameters,
28
+ _stability_warning,
29
+ )
24
30
 
25
31
 
26
32
  class InferenceClient(NamespacedClient):
27
33
 
28
34
  @_rewrite_parameters()
35
+ @_stability_warning(Stability.EXPERIMENTAL)
29
36
  async def delete(
30
37
  self,
31
38
  *,
@@ -46,7 +53,7 @@ class InferenceClient(NamespacedClient):
46
53
  """
47
54
  Delete an inference endpoint
48
55
 
49
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/delete-inference-api.html>`_
56
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.16/delete-inference-api.html>`_
50
57
 
51
58
  :param inference_id: The inference Id
52
59
  :param task_type: The task type
@@ -93,6 +100,7 @@ class InferenceClient(NamespacedClient):
93
100
  )
94
101
 
95
102
  @_rewrite_parameters()
103
+ @_stability_warning(Stability.EXPERIMENTAL)
96
104
  async def get(
97
105
  self,
98
106
  *,
@@ -111,7 +119,7 @@ class InferenceClient(NamespacedClient):
111
119
  """
112
120
  Get an inference endpoint
113
121
 
114
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/get-inference-api.html>`_
122
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.16/get-inference-api.html>`_
115
123
 
116
124
  :param task_type: The task type
117
125
  :param inference_id: The inference Id
@@ -151,6 +159,7 @@ class InferenceClient(NamespacedClient):
151
159
  @_rewrite_parameters(
152
160
  body_fields=("input", "query", "task_settings"),
153
161
  )
162
+ @_stability_warning(Stability.EXPERIMENTAL)
154
163
  async def inference(
155
164
  self,
156
165
  *,
@@ -174,7 +183,7 @@ class InferenceClient(NamespacedClient):
174
183
  """
175
184
  Perform inference on the service
176
185
 
177
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/post-inference-api.html>`_
186
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.16/post-inference-api.html>`_
178
187
 
179
188
  :param inference_id: The inference Id
180
189
  :param input: Inference input. Either a string or an array of strings.
@@ -237,6 +246,7 @@ class InferenceClient(NamespacedClient):
237
246
  @_rewrite_parameters(
238
247
  body_name="inference_config",
239
248
  )
249
+ @_stability_warning(Stability.EXPERIMENTAL)
240
250
  async def put(
241
251
  self,
242
252
  *,
@@ -257,7 +267,7 @@ class InferenceClient(NamespacedClient):
257
267
  """
258
268
  Create an inference endpoint
259
269
 
260
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/put-inference-api.html>`_
270
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.16/put-inference-api.html>`_
261
271
 
262
272
  :param inference_id: The inference Id
263
273
  :param inference_config:
@@ -40,7 +40,7 @@ class IngestClient(NamespacedClient):
40
40
  """
41
41
  Deletes a geoip database configuration.
42
42
 
43
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/TODO.html>`_
43
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.16/delete-geoip-database-api.html>`_
44
44
 
45
45
  :param id: A comma-separated list of geoip database configurations to delete
46
46
  :param master_timeout: Period to wait for a connection to the master node. If
@@ -91,7 +91,7 @@ class IngestClient(NamespacedClient):
91
91
  """
92
92
  Deletes one or more existing ingest pipeline.
93
93
 
94
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/delete-pipeline-api.html>`_
94
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.16/delete-pipeline-api.html>`_
95
95
 
96
96
  :param id: Pipeline ID or wildcard expression of pipeline IDs used to limit the
97
97
  request. To delete all ingest pipelines in a cluster, use a value of `*`.
@@ -140,7 +140,7 @@ class IngestClient(NamespacedClient):
140
140
  """
141
141
  Gets download statistics for GeoIP2 databases used with the geoip processor.
142
142
 
143
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/geoip-processor.html>`_
143
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.16/geoip-processor.html>`_
144
144
  """
145
145
  __path_parts: t.Dict[str, str] = {}
146
146
  __path = "/_ingest/geoip/stats"
@@ -177,7 +177,7 @@ class IngestClient(NamespacedClient):
177
177
  """
178
178
  Returns information about one or more geoip database configurations.
179
179
 
180
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/TODO.html>`_
180
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.16/get-geoip-database-api.html>`_
181
181
 
182
182
  :param id: Comma-separated list of database configuration IDs to retrieve. Wildcard
183
183
  (`*`) expressions are supported. To get all database configurations, omit
@@ -230,7 +230,7 @@ class IngestClient(NamespacedClient):
230
230
  Returns information about one or more ingest pipelines. This API returns a local
231
231
  reference of the pipeline.
232
232
 
233
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/get-pipeline-api.html>`_
233
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.16/get-pipeline-api.html>`_
234
234
 
235
235
  :param id: Comma-separated list of pipeline IDs to retrieve. Wildcard (`*`) expressions
236
236
  are supported. To get all ingest pipelines, omit this parameter or use `*`.
@@ -284,7 +284,7 @@ class IngestClient(NamespacedClient):
284
284
  you expect will match. A grok pattern is like a regular expression that supports
285
285
  aliased expressions that can be reused.
286
286
 
287
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/grok-processor.html>`_
287
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.16/grok-processor.html>`_
288
288
  """
289
289
  __path_parts: t.Dict[str, str] = {}
290
290
  __path = "/_ingest/processor/grok"
@@ -327,7 +327,7 @@ class IngestClient(NamespacedClient):
327
327
  """
328
328
  Returns information about one or more geoip database configurations.
329
329
 
330
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/TODO.html>`_
330
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.16/put-geoip-database-api.html>`_
331
331
 
332
332
  :param id: ID of the database configuration to create or update.
333
333
  :param maxmind: The configuration necessary to identify which IP geolocation
@@ -381,13 +381,21 @@ class IngestClient(NamespacedClient):
381
381
  )
382
382
 
383
383
  @_rewrite_parameters(
384
- body_fields=("description", "meta", "on_failure", "processors", "version"),
384
+ body_fields=(
385
+ "deprecated",
386
+ "description",
387
+ "meta",
388
+ "on_failure",
389
+ "processors",
390
+ "version",
391
+ ),
385
392
  parameter_aliases={"_meta": "meta"},
386
393
  )
387
394
  async def put_pipeline(
388
395
  self,
389
396
  *,
390
397
  id: str,
398
+ deprecated: t.Optional[bool] = None,
391
399
  description: t.Optional[str] = None,
392
400
  error_trace: t.Optional[bool] = None,
393
401
  filter_path: t.Optional[t.Union[str, t.Sequence[str]]] = None,
@@ -406,9 +414,13 @@ class IngestClient(NamespacedClient):
406
414
  Creates or updates an ingest pipeline. Changes made using this API take effect
407
415
  immediately.
408
416
 
409
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/ingest.html>`_
417
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.16/ingest.html>`_
410
418
 
411
419
  :param id: ID of the ingest pipeline to create or update.
420
+ :param deprecated: Marks this ingest pipeline as deprecated. When a deprecated
421
+ ingest pipeline is referenced as the default or final pipeline when creating
422
+ or updating a non-deprecated index template, Elasticsearch will emit a deprecation
423
+ warning.
412
424
  :param description: Description of the ingest pipeline.
413
425
  :param if_version: Required version for optimistic concurrency control for pipeline
414
426
  updates
@@ -452,6 +464,8 @@ class IngestClient(NamespacedClient):
452
464
  if timeout is not None:
453
465
  __query["timeout"] = timeout
454
466
  if not __body:
467
+ if deprecated is not None:
468
+ __body["deprecated"] = deprecated
455
469
  if description is not None:
456
470
  __body["description"] = description
457
471
  if meta is not None:
@@ -479,8 +493,8 @@ class IngestClient(NamespacedClient):
479
493
  async def simulate(
480
494
  self,
481
495
  *,
482
- id: t.Optional[str] = None,
483
496
  docs: t.Optional[t.Sequence[t.Mapping[str, t.Any]]] = None,
497
+ id: t.Optional[str] = None,
484
498
  error_trace: t.Optional[bool] = None,
485
499
  filter_path: t.Optional[t.Union[str, t.Sequence[str]]] = None,
486
500
  human: t.Optional[bool] = None,
@@ -492,17 +506,19 @@ class IngestClient(NamespacedClient):
492
506
  """
493
507
  Executes an ingest pipeline against a set of provided documents.
494
508
 
495
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/simulate-pipeline-api.html>`_
509
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.16/simulate-pipeline-api.html>`_
496
510
 
511
+ :param docs: Sample documents to test in the pipeline.
497
512
  :param id: Pipeline to test. If you don’t specify a `pipeline` in the request
498
513
  body, this parameter is required.
499
- :param docs: Sample documents to test in the pipeline.
500
514
  :param pipeline: Pipeline to test. If you don’t specify the `pipeline` request
501
515
  path parameter, this parameter is required. If you specify both this and
502
516
  the request path parameter, the API only uses the request path parameter.
503
517
  :param verbose: If `true`, the response includes output data for each processor
504
518
  in the executed pipeline.
505
519
  """
520
+ if docs is None and body is None:
521
+ raise ValueError("Empty value passed for parameter 'docs'")
506
522
  __path_parts: t.Dict[str, str]
507
523
  if id not in SKIP_IN_PATH:
508
524
  __path_parts = {"id": _quote(id)}
@@ -37,7 +37,7 @@ class LicenseClient(NamespacedClient):
37
37
  """
38
38
  Deletes licensing information for the cluster
39
39
 
40
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/delete-license.html>`_
40
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.16/delete-license.html>`_
41
41
  """
42
42
  __path_parts: t.Dict[str, str] = {}
43
43
  __path = "/_license"
@@ -72,11 +72,11 @@ class LicenseClient(NamespacedClient):
72
72
  pretty: t.Optional[bool] = None,
73
73
  ) -> ObjectApiResponse[t.Any]:
74
74
  """
75
- This API returns information about the type of license, when it was issued, and
76
- when it expires, for example. For more information about the different types
77
- of licenses, see https://www.elastic.co/subscriptions.
75
+ Get license information. Returns information about your Elastic license, including
76
+ its type, its status, when it was issued, and when it expires. For more information
77
+ about the different types of licenses, refer to [Elastic Stack subscriptions](https://www.elastic.co/subscriptions).
78
78
 
79
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/get-license.html>`_
79
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.16/get-license.html>`_
80
80
 
81
81
  :param accept_enterprise: If `true`, this parameter returns enterprise for Enterprise
82
82
  license types. If `false`, this parameter returns platinum for both platinum
@@ -122,7 +122,7 @@ class LicenseClient(NamespacedClient):
122
122
  """
123
123
  Retrieves information about the status of the basic license.
124
124
 
125
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/get-basic-status.html>`_
125
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.16/get-basic-status.html>`_
126
126
  """
127
127
  __path_parts: t.Dict[str, str] = {}
128
128
  __path = "/_license/basic_status"
@@ -157,7 +157,7 @@ class LicenseClient(NamespacedClient):
157
157
  """
158
158
  Retrieves information about the status of the trial license.
159
159
 
160
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/get-trial-status.html>`_
160
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.16/get-trial-status.html>`_
161
161
  """
162
162
  __path_parts: t.Dict[str, str] = {}
163
163
  __path = "/_license/trial_status"
@@ -198,7 +198,7 @@ class LicenseClient(NamespacedClient):
198
198
  """
199
199
  Updates the license for the cluster.
200
200
 
201
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/update-license.html>`_
201
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.16/update-license.html>`_
202
202
 
203
203
  :param acknowledge: Specifies whether you acknowledge the license changes.
204
204
  :param license:
@@ -257,7 +257,7 @@ class LicenseClient(NamespacedClient):
257
257
  acknowledge parameter set to true. To check the status of your basic license,
258
258
  use the following API: [Get basic status](https://www.elastic.co/guide/en/elasticsearch/reference/current/get-basic-status.html).
259
259
 
260
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/start-basic.html>`_
260
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.16/start-basic.html>`_
261
261
 
262
262
  :param acknowledge: whether the user has acknowledged acknowledge messages (default:
263
263
  false)
@@ -300,7 +300,7 @@ class LicenseClient(NamespacedClient):
300
300
  The start trial API enables you to start a 30-day trial, which gives access to
301
301
  all subscription features.
302
302
 
303
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/start-trial.html>`_
303
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.16/start-trial.html>`_
304
304
 
305
305
  :param acknowledge: whether the user has acknowledged acknowledge messages (default:
306
306
  false)
@@ -38,7 +38,7 @@ class LogstashClient(NamespacedClient):
38
38
  """
39
39
  Deletes a pipeline used for Logstash Central Management.
40
40
 
41
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/logstash-api-delete-pipeline.html>`_
41
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.16/logstash-api-delete-pipeline.html>`_
42
42
 
43
43
  :param id: Identifier for the pipeline.
44
44
  """
@@ -78,7 +78,7 @@ class LogstashClient(NamespacedClient):
78
78
  """
79
79
  Retrieves pipelines used for Logstash Central Management.
80
80
 
81
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/logstash-api-get-pipeline.html>`_
81
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.16/logstash-api-get-pipeline.html>`_
82
82
 
83
83
  :param id: Comma-separated list of pipeline identifiers.
84
84
  """
@@ -125,7 +125,7 @@ class LogstashClient(NamespacedClient):
125
125
  """
126
126
  Creates or updates a pipeline used for Logstash Central Management.
127
127
 
128
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/logstash-api-put-pipeline.html>`_
128
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.16/logstash-api-put-pipeline.html>`_
129
129
 
130
130
  :param id: Identifier for the pipeline.
131
131
  :param pipeline:
@@ -40,7 +40,7 @@ class MigrationClient(NamespacedClient):
40
40
  that use deprecated features that will be removed or changed in the next major
41
41
  version.
42
42
 
43
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/migration-api-deprecation.html>`_
43
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.16/migration-api-deprecation.html>`_
44
44
 
45
45
  :param index: Comma-separate list of data streams or indices to check. Wildcard
46
46
  (*) expressions are supported.
@@ -83,7 +83,7 @@ class MigrationClient(NamespacedClient):
83
83
  """
84
84
  Find out whether system features need to be upgraded or not
85
85
 
86
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/migration-api-feature-upgrade.html>`_
86
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.16/migration-api-feature-upgrade.html>`_
87
87
  """
88
88
  __path_parts: t.Dict[str, str] = {}
89
89
  __path = "/_migration/system_features"
@@ -118,7 +118,7 @@ class MigrationClient(NamespacedClient):
118
118
  """
119
119
  Begin upgrades for system features
120
120
 
121
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/migration-api-feature-upgrade.html>`_
121
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.16/migration-api-feature-upgrade.html>`_
122
122
  """
123
123
  __path_parts: t.Dict[str, str] = {}
124
124
  __path = "/_migration/system_features"