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
@@ -44,7 +44,7 @@ class MonitoringClient(NamespacedClient):
44
44
  """
45
45
  Used by the monitoring features to send monitoring data.
46
46
 
47
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/monitor-elasticsearch-cluster.html>`_
47
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/monitor-elasticsearch-cluster.html>`_
48
48
 
49
49
  :param interval: Collection interval (e.g., '10s' or '10000ms') of the payload
50
50
  :param operations:
@@ -20,12 +20,19 @@ import typing as t
20
20
  from elastic_transport import ObjectApiResponse, TextApiResponse
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 NodesClient(NamespacedClient):
27
33
 
28
34
  @_rewrite_parameters()
35
+ @_stability_warning(Stability.EXPERIMENTAL)
29
36
  def clear_repositories_metering_archive(
30
37
  self,
31
38
  *,
@@ -37,10 +44,10 @@ class NodesClient(NamespacedClient):
37
44
  pretty: t.Optional[bool] = None,
38
45
  ) -> ObjectApiResponse[t.Any]:
39
46
  """
40
- You can use this API to clear the archived repositories metering information
41
- in the cluster.
47
+ Clear the archived repositories metering. Clear the archived repositories metering
48
+ information in the cluster.
42
49
 
43
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/clear-repositories-metering-archive-api.html>`_
50
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/clear-repositories-metering-archive-api.html>`_
44
51
 
45
52
  :param node_id: Comma-separated list of node IDs or names used to limit returned
46
53
  information. All the nodes selective options are explained [here](https://www.elastic.co/guide/en/elasticsearch/reference/current/cluster.html#cluster-nodes).
@@ -76,6 +83,7 @@ class NodesClient(NamespacedClient):
76
83
  )
77
84
 
78
85
  @_rewrite_parameters()
86
+ @_stability_warning(Stability.EXPERIMENTAL)
79
87
  def get_repositories_metering_info(
80
88
  self,
81
89
  *,
@@ -86,13 +94,13 @@ class NodesClient(NamespacedClient):
86
94
  pretty: t.Optional[bool] = None,
87
95
  ) -> ObjectApiResponse[t.Any]:
88
96
  """
89
- You can use the cluster repositories metering API to retrieve repositories metering
90
- information in a cluster. This API exposes monotonically non-decreasing counters
91
- and it’s expected that clients would durably store the information needed to
92
- compute aggregations over a period of time. Additionally, the information exposed
93
- by this API is volatile, meaning that it won’t be present after node restarts.
97
+ Get cluster repositories metering. Get repositories metering information for
98
+ a cluster. This API exposes monotonically non-decreasing counters and it is expected
99
+ that clients would durably store the information needed to compute aggregations
100
+ over a period of time. Additionally, the information exposed by this API is volatile,
101
+ meaning that it will not be present after node restarts.
94
102
 
95
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/get-repositories-metering-api.html>`_
103
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/get-repositories-metering-api.html>`_
96
104
 
97
105
  :param node_id: Comma-separated list of node IDs or names used to limit returned
98
106
  information. All the nodes selective options are explained [here](https://www.elastic.co/guide/en/elasticsearch/reference/current/cluster.html#cluster-nodes).
@@ -143,10 +151,11 @@ class NodesClient(NamespacedClient):
143
151
  ] = None,
144
152
  ) -> TextApiResponse:
145
153
  """
146
- This API yields a breakdown of the hot threads on each selected node in the cluster.
147
- The output is plain text with a breakdown of each node’s top hot threads.
154
+ Get the hot threads for nodes. Get a breakdown of the hot threads on each selected
155
+ node in the cluster. The output is plain text with a breakdown of the top hot
156
+ threads for each node.
148
157
 
149
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/cluster-nodes-hot-threads.html>`_
158
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/cluster-nodes-hot-threads.html>`_
150
159
 
151
160
  :param node_id: List of node IDs or names used to limit returned information.
152
161
  :param ignore_idle_threads: If true, known idle threads (e.g. waiting in a socket
@@ -219,9 +228,10 @@ class NodesClient(NamespacedClient):
219
228
  timeout: t.Optional[t.Union[str, t.Literal[-1], t.Literal[0]]] = None,
220
229
  ) -> ObjectApiResponse[t.Any]:
221
230
  """
222
- Returns cluster nodes information.
231
+ Get node information. By default, the API returns all attributes and core settings
232
+ for cluster nodes.
223
233
 
224
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/cluster-nodes-info.html>`_
234
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/cluster-nodes-info.html>`_
225
235
 
226
236
  :param node_id: Comma-separated list of node IDs or names used to limit returned
227
237
  information.
@@ -288,9 +298,20 @@ class NodesClient(NamespacedClient):
288
298
  body: t.Optional[t.Dict[str, t.Any]] = None,
289
299
  ) -> ObjectApiResponse[t.Any]:
290
300
  """
291
- Reloads the keystore on nodes in the cluster.
301
+ Reload the keystore on nodes in the cluster. Secure settings are stored in an
302
+ on-disk keystore. Certain of these settings are reloadable. That is, you can
303
+ change them on disk and reload them without restarting any nodes in the cluster.
304
+ When you have updated reloadable secure settings in your keystore, you can use
305
+ this API to reload those settings on each node. When the Elasticsearch keystore
306
+ is password protected and not simply obfuscated, you must provide the password
307
+ for the keystore when you reload the secure settings. Reloading the settings
308
+ for the whole cluster assumes that the keystores for all nodes are protected
309
+ with the same password; this method is allowed only when inter-node communications
310
+ are encrypted. Alternatively, you can reload the secure settings on each node
311
+ by locally accessing the API and passing the node-specific Elasticsearch keystore
312
+ password.
292
313
 
293
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/secure-settings.html#reloadable-secure-settings>`_
314
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/secure-settings.html#reloadable-secure-settings>`_
294
315
 
295
316
  :param node_id: The names of particular nodes in the cluster to target.
296
317
  :param secure_settings_password: The password for the Elasticsearch keystore.
@@ -359,9 +380,10 @@ class NodesClient(NamespacedClient):
359
380
  types: t.Optional[t.Sequence[str]] = None,
360
381
  ) -> ObjectApiResponse[t.Any]:
361
382
  """
362
- Returns cluster nodes statistics.
383
+ Get node statistics. Get statistics for nodes in a cluster. By default, all stats
384
+ are returned. You can limit the returned information by using metrics.
363
385
 
364
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/cluster-nodes-stats.html>`_
386
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/cluster-nodes-stats.html>`_
365
387
 
366
388
  :param node_id: Comma-separated list of node IDs or names used to limit returned
367
389
  information.
@@ -476,9 +498,9 @@ class NodesClient(NamespacedClient):
476
498
  timeout: t.Optional[t.Union[str, t.Literal[-1], t.Literal[0]]] = None,
477
499
  ) -> ObjectApiResponse[t.Any]:
478
500
  """
479
- Returns information on the usage of features.
501
+ Get feature usage information.
480
502
 
481
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/cluster-nodes-usage.html>`_
503
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/cluster-nodes-usage.html>`_
482
504
 
483
505
  :param node_id: A comma-separated list of node IDs or names to limit the returned
484
506
  information; use `_local` to return information from the node you're connecting
@@ -37,9 +37,9 @@ class QueryRulesClient(NamespacedClient):
37
37
  pretty: t.Optional[bool] = None,
38
38
  ) -> ObjectApiResponse[t.Any]:
39
39
  """
40
- Deletes a query rule within a query ruleset.
40
+ Delete a query rule. Delete a query rule within a query ruleset.
41
41
 
42
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/delete-query-rule.html>`_
42
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/delete-query-rule.html>`_
43
43
 
44
44
  :param ruleset_id: The unique identifier of the query ruleset containing the
45
45
  rule to delete
@@ -85,9 +85,9 @@ class QueryRulesClient(NamespacedClient):
85
85
  pretty: t.Optional[bool] = None,
86
86
  ) -> ObjectApiResponse[t.Any]:
87
87
  """
88
- Deletes a query ruleset.
88
+ Delete a query ruleset.
89
89
 
90
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/delete-query-ruleset.html>`_
90
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/delete-query-ruleset.html>`_
91
91
 
92
92
  :param ruleset_id: The unique identifier of the query ruleset to delete
93
93
  """
@@ -126,9 +126,9 @@ class QueryRulesClient(NamespacedClient):
126
126
  pretty: t.Optional[bool] = None,
127
127
  ) -> ObjectApiResponse[t.Any]:
128
128
  """
129
- Returns the details about a query rule within a query ruleset
129
+ Get a query rule. Get details about a query rule within a query ruleset.
130
130
 
131
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/get-query-rule.html>`_
131
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/get-query-rule.html>`_
132
132
 
133
133
  :param ruleset_id: The unique identifier of the query ruleset containing the
134
134
  rule to retrieve
@@ -174,9 +174,9 @@ class QueryRulesClient(NamespacedClient):
174
174
  pretty: t.Optional[bool] = None,
175
175
  ) -> ObjectApiResponse[t.Any]:
176
176
  """
177
- Returns the details about a query ruleset
177
+ Get a query ruleset. Get details about a query ruleset.
178
178
 
179
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/get-query-ruleset.html>`_
179
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/get-query-ruleset.html>`_
180
180
 
181
181
  :param ruleset_id: The unique identifier of the query ruleset
182
182
  """
@@ -217,9 +217,9 @@ class QueryRulesClient(NamespacedClient):
217
217
  size: t.Optional[int] = None,
218
218
  ) -> ObjectApiResponse[t.Any]:
219
219
  """
220
- Returns summarized information about existing query rulesets.
220
+ Get all query rulesets. Get summarized information about the query rulesets.
221
221
 
222
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/list-query-rulesets.html>`_
222
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/list-query-rulesets.html>`_
223
223
 
224
224
  :param from_: Starting offset (default: 0)
225
225
  :param size: specifies a max number of results to get
@@ -261,7 +261,7 @@ class QueryRulesClient(NamespacedClient):
261
261
  criteria: t.Optional[
262
262
  t.Union[t.Mapping[str, t.Any], t.Sequence[t.Mapping[str, t.Any]]]
263
263
  ] = None,
264
- type: t.Optional[t.Union[str, t.Literal["pinned"]]] = None,
264
+ type: t.Optional[t.Union[str, t.Literal["exclude", "pinned"]]] = None,
265
265
  error_trace: t.Optional[bool] = None,
266
266
  filter_path: t.Optional[t.Union[str, t.Sequence[str]]] = None,
267
267
  human: t.Optional[bool] = None,
@@ -270,9 +270,9 @@ class QueryRulesClient(NamespacedClient):
270
270
  body: t.Optional[t.Dict[str, t.Any]] = None,
271
271
  ) -> ObjectApiResponse[t.Any]:
272
272
  """
273
- Creates or updates a query rule within a query ruleset.
273
+ Create or update a query rule. Create or update a query rule within a query ruleset.
274
274
 
275
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/put-query-rule.html>`_
275
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/put-query-rule.html>`_
276
276
 
277
277
  :param ruleset_id: The unique identifier of the query ruleset containing the
278
278
  rule to be created or updated
@@ -345,9 +345,9 @@ class QueryRulesClient(NamespacedClient):
345
345
  body: t.Optional[t.Dict[str, t.Any]] = None,
346
346
  ) -> ObjectApiResponse[t.Any]:
347
347
  """
348
- Creates or updates a query ruleset.
348
+ Create or update a query ruleset.
349
349
 
350
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/put-query-ruleset.html>`_
350
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/put-query-ruleset.html>`_
351
351
 
352
352
  :param ruleset_id: The unique identifier of the query ruleset to be created or
353
353
  updated
@@ -382,3 +382,57 @@ class QueryRulesClient(NamespacedClient):
382
382
  endpoint_id="query_rules.put_ruleset",
383
383
  path_parts=__path_parts,
384
384
  )
385
+
386
+ @_rewrite_parameters(
387
+ body_fields=("match_criteria",),
388
+ )
389
+ def test(
390
+ self,
391
+ *,
392
+ ruleset_id: str,
393
+ match_criteria: t.Optional[t.Mapping[str, t.Any]] = None,
394
+ error_trace: t.Optional[bool] = None,
395
+ filter_path: t.Optional[t.Union[str, t.Sequence[str]]] = None,
396
+ human: t.Optional[bool] = None,
397
+ pretty: t.Optional[bool] = None,
398
+ body: t.Optional[t.Dict[str, t.Any]] = None,
399
+ ) -> ObjectApiResponse[t.Any]:
400
+ """
401
+ Test a query ruleset. Evaluate match criteria against a query ruleset to identify
402
+ the rules that would match that criteria.
403
+
404
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/test-query-ruleset.html>`_
405
+
406
+ :param ruleset_id: The unique identifier of the query ruleset to be created or
407
+ updated
408
+ :param match_criteria:
409
+ """
410
+ if ruleset_id in SKIP_IN_PATH:
411
+ raise ValueError("Empty value passed for parameter 'ruleset_id'")
412
+ if match_criteria is None and body is None:
413
+ raise ValueError("Empty value passed for parameter 'match_criteria'")
414
+ __path_parts: t.Dict[str, str] = {"ruleset_id": _quote(ruleset_id)}
415
+ __path = f'/_query_rules/{__path_parts["ruleset_id"]}/_test'
416
+ __query: t.Dict[str, t.Any] = {}
417
+ __body: t.Dict[str, t.Any] = body if body is not None else {}
418
+ if error_trace is not None:
419
+ __query["error_trace"] = error_trace
420
+ if filter_path is not None:
421
+ __query["filter_path"] = filter_path
422
+ if human is not None:
423
+ __query["human"] = human
424
+ if pretty is not None:
425
+ __query["pretty"] = pretty
426
+ if not __body:
427
+ if match_criteria is not None:
428
+ __body["match_criteria"] = match_criteria
429
+ __headers = {"accept": "application/json", "content-type": "application/json"}
430
+ return self.perform_request( # type: ignore[return-value]
431
+ "POST",
432
+ __path,
433
+ params=__query,
434
+ headers=__headers,
435
+ body=__body,
436
+ endpoint_id="query_rules.test",
437
+ path_parts=__path_parts,
438
+ )
@@ -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 RollupClient(NamespacedClient):
27
33
 
28
34
  @_rewrite_parameters()
35
+ @_stability_warning(Stability.EXPERIMENTAL)
29
36
  def delete_job(
30
37
  self,
31
38
  *,
@@ -38,7 +45,7 @@ class RollupClient(NamespacedClient):
38
45
  """
39
46
  Deletes an existing rollup job.
40
47
 
41
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/rollup-delete-job.html>`_
48
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/rollup-delete-job.html>`_
42
49
 
43
50
  :param id: Identifier for the job.
44
51
  """
@@ -66,6 +73,7 @@ class RollupClient(NamespacedClient):
66
73
  )
67
74
 
68
75
  @_rewrite_parameters()
76
+ @_stability_warning(Stability.EXPERIMENTAL)
69
77
  def get_jobs(
70
78
  self,
71
79
  *,
@@ -78,7 +86,7 @@ class RollupClient(NamespacedClient):
78
86
  """
79
87
  Retrieves the configuration, stats, and status of rollup jobs.
80
88
 
81
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/rollup-get-job.html>`_
89
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/rollup-get-job.html>`_
82
90
 
83
91
  :param id: Identifier for the rollup job. If it is `_all` or omitted, the API
84
92
  returns all rollup jobs.
@@ -110,6 +118,7 @@ class RollupClient(NamespacedClient):
110
118
  )
111
119
 
112
120
  @_rewrite_parameters()
121
+ @_stability_warning(Stability.EXPERIMENTAL)
113
122
  def get_rollup_caps(
114
123
  self,
115
124
  *,
@@ -123,7 +132,7 @@ class RollupClient(NamespacedClient):
123
132
  Returns the capabilities of any rollup jobs that have been configured for a specific
124
133
  index or index pattern.
125
134
 
126
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/rollup-get-rollup-caps.html>`_
135
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/rollup-get-rollup-caps.html>`_
127
136
 
128
137
  :param id: Index, indices or index-pattern to return rollup capabilities for.
129
138
  `_all` may be used to fetch rollup capabilities from all jobs.
@@ -155,6 +164,7 @@ class RollupClient(NamespacedClient):
155
164
  )
156
165
 
157
166
  @_rewrite_parameters()
167
+ @_stability_warning(Stability.EXPERIMENTAL)
158
168
  def get_rollup_index_caps(
159
169
  self,
160
170
  *,
@@ -168,7 +178,7 @@ class RollupClient(NamespacedClient):
168
178
  Returns the rollup capabilities of all jobs inside of a rollup index (for example,
169
179
  the index where rollup data is stored).
170
180
 
171
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/rollup-get-rollup-index-caps.html>`_
181
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/rollup-get-rollup-index-caps.html>`_
172
182
 
173
183
  :param index: Data stream or index to check for rollup capabilities. Wildcard
174
184
  (`*`) expressions are supported.
@@ -209,6 +219,7 @@ class RollupClient(NamespacedClient):
209
219
  ),
210
220
  ignore_deprecated_options={"headers"},
211
221
  )
222
+ @_stability_warning(Stability.EXPERIMENTAL)
212
223
  def put_job(
213
224
  self,
214
225
  *,
@@ -230,7 +241,7 @@ class RollupClient(NamespacedClient):
230
241
  """
231
242
  Creates a rollup job.
232
243
 
233
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/rollup-put-job.html>`_
244
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/rollup-put-job.html>`_
234
245
 
235
246
  :param id: Identifier for the rollup job. This can be any alphanumeric string
236
247
  and uniquely identifies the data that is associated with the rollup job.
@@ -327,6 +338,7 @@ class RollupClient(NamespacedClient):
327
338
  @_rewrite_parameters(
328
339
  body_fields=("aggregations", "aggs", "query", "size"),
329
340
  )
341
+ @_stability_warning(Stability.EXPERIMENTAL)
330
342
  def rollup_search(
331
343
  self,
332
344
  *,
@@ -346,7 +358,7 @@ class RollupClient(NamespacedClient):
346
358
  """
347
359
  Enables searching rolled-up data using the standard Query DSL.
348
360
 
349
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/rollup-search.html>`_
361
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/rollup-search.html>`_
350
362
 
351
363
  :param index: Enables searching rolled-up data using the standard Query DSL.
352
364
  :param aggregations: Specifies aggregations.
@@ -397,6 +409,7 @@ class RollupClient(NamespacedClient):
397
409
  )
398
410
 
399
411
  @_rewrite_parameters()
412
+ @_stability_warning(Stability.EXPERIMENTAL)
400
413
  def start_job(
401
414
  self,
402
415
  *,
@@ -409,7 +422,7 @@ class RollupClient(NamespacedClient):
409
422
  """
410
423
  Starts an existing, stopped rollup job.
411
424
 
412
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/rollup-start-job.html>`_
425
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/rollup-start-job.html>`_
413
426
 
414
427
  :param id: Identifier for the rollup job.
415
428
  """
@@ -437,6 +450,7 @@ class RollupClient(NamespacedClient):
437
450
  )
438
451
 
439
452
  @_rewrite_parameters()
453
+ @_stability_warning(Stability.EXPERIMENTAL)
440
454
  def stop_job(
441
455
  self,
442
456
  *,
@@ -451,7 +465,7 @@ class RollupClient(NamespacedClient):
451
465
  """
452
466
  Stops an existing, started rollup job.
453
467
 
454
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/rollup-stop-job.html>`_
468
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/rollup-stop-job.html>`_
455
469
 
456
470
  :param id: Identifier for the rollup job.
457
471
  :param timeout: If `wait_for_completion` is `true`, the API blocks for (at maximum)
@@ -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 SearchApplicationClient(NamespacedClient):
27
33
 
28
34
  @_rewrite_parameters()
35
+ @_stability_warning(Stability.BETA)
29
36
  def delete(
30
37
  self,
31
38
  *,
@@ -36,9 +43,10 @@ class SearchApplicationClient(NamespacedClient):
36
43
  pretty: t.Optional[bool] = None,
37
44
  ) -> ObjectApiResponse[t.Any]:
38
45
  """
39
- Deletes a search application.
46
+ Delete a search application. Remove a search application and its associated alias.
47
+ Indices attached to the search application are not removed.
40
48
 
41
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/delete-search-application.html>`_
49
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/delete-search-application.html>`_
42
50
 
43
51
  :param name: The name of the search application to delete
44
52
  """
@@ -66,6 +74,7 @@ class SearchApplicationClient(NamespacedClient):
66
74
  )
67
75
 
68
76
  @_rewrite_parameters()
77
+ @_stability_warning(Stability.EXPERIMENTAL)
69
78
  def delete_behavioral_analytics(
70
79
  self,
71
80
  *,
@@ -76,9 +85,10 @@ class SearchApplicationClient(NamespacedClient):
76
85
  pretty: t.Optional[bool] = None,
77
86
  ) -> ObjectApiResponse[t.Any]:
78
87
  """
79
- Delete a behavioral analytics collection.
88
+ Delete a behavioral analytics collection. The associated data stream is also
89
+ deleted.
80
90
 
81
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/delete-analytics-collection.html>`_
91
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/delete-analytics-collection.html>`_
82
92
 
83
93
  :param name: The name of the analytics collection to be deleted
84
94
  """
@@ -106,6 +116,7 @@ class SearchApplicationClient(NamespacedClient):
106
116
  )
107
117
 
108
118
  @_rewrite_parameters()
119
+ @_stability_warning(Stability.BETA)
109
120
  def get(
110
121
  self,
111
122
  *,
@@ -116,9 +127,9 @@ class SearchApplicationClient(NamespacedClient):
116
127
  pretty: t.Optional[bool] = None,
117
128
  ) -> ObjectApiResponse[t.Any]:
118
129
  """
119
- Returns the details about a search application
130
+ Get search application details.
120
131
 
121
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/get-search-application.html>`_
132
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/get-search-application.html>`_
122
133
 
123
134
  :param name: The name of the search application
124
135
  """
@@ -146,6 +157,7 @@ class SearchApplicationClient(NamespacedClient):
146
157
  )
147
158
 
148
159
  @_rewrite_parameters()
160
+ @_stability_warning(Stability.EXPERIMENTAL)
149
161
  def get_behavioral_analytics(
150
162
  self,
151
163
  *,
@@ -156,9 +168,9 @@ class SearchApplicationClient(NamespacedClient):
156
168
  pretty: t.Optional[bool] = None,
157
169
  ) -> ObjectApiResponse[t.Any]:
158
170
  """
159
- Returns the existing behavioral analytics collections.
171
+ Get behavioral analytics collections.
160
172
 
161
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/list-analytics-collection.html>`_
173
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/list-analytics-collection.html>`_
162
174
 
163
175
  :param name: A list of analytics collections to limit the returned information
164
176
  """
@@ -191,6 +203,7 @@ class SearchApplicationClient(NamespacedClient):
191
203
  @_rewrite_parameters(
192
204
  parameter_aliases={"from": "from_"},
193
205
  )
206
+ @_stability_warning(Stability.BETA)
194
207
  def list(
195
208
  self,
196
209
  *,
@@ -205,7 +218,7 @@ class SearchApplicationClient(NamespacedClient):
205
218
  """
206
219
  Returns the existing search applications.
207
220
 
208
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/list-search-applications.html>`_
221
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/list-search-applications.html>`_
209
222
 
210
223
  :param from_: Starting offset.
211
224
  :param q: Query in the Lucene query string syntax.
@@ -241,6 +254,7 @@ class SearchApplicationClient(NamespacedClient):
241
254
  @_rewrite_parameters(
242
255
  body_name="search_application",
243
256
  )
257
+ @_stability_warning(Stability.BETA)
244
258
  def put(
245
259
  self,
246
260
  *,
@@ -254,9 +268,9 @@ class SearchApplicationClient(NamespacedClient):
254
268
  pretty: t.Optional[bool] = None,
255
269
  ) -> ObjectApiResponse[t.Any]:
256
270
  """
257
- Creates or updates a search application.
271
+ Create or update a search application.
258
272
 
259
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/put-search-application.html>`_
273
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/put-search-application.html>`_
260
274
 
261
275
  :param name: The name of the search application to be created or updated.
262
276
  :param search_application:
@@ -297,6 +311,7 @@ class SearchApplicationClient(NamespacedClient):
297
311
  )
298
312
 
299
313
  @_rewrite_parameters()
314
+ @_stability_warning(Stability.EXPERIMENTAL)
300
315
  def put_behavioral_analytics(
301
316
  self,
302
317
  *,
@@ -307,9 +322,9 @@ class SearchApplicationClient(NamespacedClient):
307
322
  pretty: t.Optional[bool] = None,
308
323
  ) -> ObjectApiResponse[t.Any]:
309
324
  """
310
- Creates a behavioral analytics collection.
325
+ Create a behavioral analytics collection.
311
326
 
312
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/put-analytics-collection.html>`_
327
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/put-analytics-collection.html>`_
313
328
 
314
329
  :param name: The name of the analytics collection to be created or updated.
315
330
  """
@@ -340,6 +355,7 @@ class SearchApplicationClient(NamespacedClient):
340
355
  body_fields=("params",),
341
356
  ignore_deprecated_options={"params"},
342
357
  )
358
+ @_stability_warning(Stability.BETA)
343
359
  def search(
344
360
  self,
345
361
  *,
@@ -353,9 +369,12 @@ class SearchApplicationClient(NamespacedClient):
353
369
  body: t.Optional[t.Dict[str, t.Any]] = None,
354
370
  ) -> ObjectApiResponse[t.Any]:
355
371
  """
356
- Perform a search against a search application.
372
+ Run a search application search. Generate and run an Elasticsearch query that
373
+ uses the specified query parameteter and the search template associated with
374
+ the search application or default template. Unspecified template parameters are
375
+ assigned their default values if applicable.
357
376
 
358
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.15/search-application-search.html>`_
377
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/search-application-search.html>`_
359
378
 
360
379
  :param name: The name of the search application to be searched.
361
380
  :param params: Query parameters specific to this request, which will override