elasticsearch 8.18.1__py3-none-any.whl → 8.19.1__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 (102) hide show
  1. elasticsearch/_async/client/__init__.py +68 -82
  2. elasticsearch/_async/client/async_search.py +5 -9
  3. elasticsearch/_async/client/autoscaling.py +4 -4
  4. elasticsearch/_async/client/cat.py +744 -75
  5. elasticsearch/_async/client/ccr.py +13 -13
  6. elasticsearch/_async/client/cluster.py +38 -24
  7. elasticsearch/_async/client/connector.py +30 -30
  8. elasticsearch/_async/client/dangling_indices.py +3 -3
  9. elasticsearch/_async/client/enrich.py +5 -5
  10. elasticsearch/_async/client/eql.py +13 -5
  11. elasticsearch/_async/client/esql.py +54 -15
  12. elasticsearch/_async/client/features.py +2 -2
  13. elasticsearch/_async/client/fleet.py +13 -13
  14. elasticsearch/_async/client/graph.py +1 -1
  15. elasticsearch/_async/client/ilm.py +11 -11
  16. elasticsearch/_async/client/indices.py +132 -83
  17. elasticsearch/_async/client/inference.py +519 -112
  18. elasticsearch/_async/client/ingest.py +9 -16
  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 +76 -88
  23. elasticsearch/_async/client/nodes.py +9 -8
  24. elasticsearch/_async/client/query_rules.py +8 -8
  25. elasticsearch/_async/client/rollup.py +8 -8
  26. elasticsearch/_async/client/search_application.py +10 -10
  27. elasticsearch/_async/client/searchable_snapshots.py +4 -4
  28. elasticsearch/_async/client/security.py +72 -80
  29. elasticsearch/_async/client/shutdown.py +3 -3
  30. elasticsearch/_async/client/simulate.py +1 -1
  31. elasticsearch/_async/client/slm.py +9 -9
  32. elasticsearch/_async/client/snapshot.py +286 -130
  33. elasticsearch/_async/client/sql.py +7 -7
  34. elasticsearch/_async/client/ssl.py +1 -1
  35. elasticsearch/_async/client/synonyms.py +7 -7
  36. elasticsearch/_async/client/tasks.py +3 -3
  37. elasticsearch/_async/client/text_structure.py +4 -4
  38. elasticsearch/_async/client/transform.py +69 -9
  39. elasticsearch/_async/client/xpack.py +1 -1
  40. elasticsearch/_sync/client/__init__.py +68 -82
  41. elasticsearch/_sync/client/async_search.py +5 -9
  42. elasticsearch/_sync/client/autoscaling.py +4 -4
  43. elasticsearch/_sync/client/cat.py +744 -75
  44. elasticsearch/_sync/client/ccr.py +13 -13
  45. elasticsearch/_sync/client/cluster.py +38 -24
  46. elasticsearch/_sync/client/connector.py +30 -30
  47. elasticsearch/_sync/client/dangling_indices.py +3 -3
  48. elasticsearch/_sync/client/enrich.py +5 -5
  49. elasticsearch/_sync/client/eql.py +13 -5
  50. elasticsearch/_sync/client/esql.py +54 -15
  51. elasticsearch/_sync/client/features.py +2 -2
  52. elasticsearch/_sync/client/fleet.py +13 -13
  53. elasticsearch/_sync/client/graph.py +1 -1
  54. elasticsearch/_sync/client/ilm.py +11 -11
  55. elasticsearch/_sync/client/indices.py +132 -83
  56. elasticsearch/_sync/client/inference.py +519 -112
  57. elasticsearch/_sync/client/ingest.py +9 -16
  58. elasticsearch/_sync/client/license.py +10 -10
  59. elasticsearch/_sync/client/logstash.py +3 -3
  60. elasticsearch/_sync/client/migration.py +3 -3
  61. elasticsearch/_sync/client/ml.py +76 -88
  62. elasticsearch/_sync/client/nodes.py +9 -8
  63. elasticsearch/_sync/client/query_rules.py +8 -8
  64. elasticsearch/_sync/client/rollup.py +8 -8
  65. elasticsearch/_sync/client/search_application.py +10 -10
  66. elasticsearch/_sync/client/searchable_snapshots.py +4 -4
  67. elasticsearch/_sync/client/security.py +72 -80
  68. elasticsearch/_sync/client/shutdown.py +3 -3
  69. elasticsearch/_sync/client/simulate.py +1 -1
  70. elasticsearch/_sync/client/slm.py +9 -9
  71. elasticsearch/_sync/client/snapshot.py +286 -130
  72. elasticsearch/_sync/client/sql.py +7 -7
  73. elasticsearch/_sync/client/ssl.py +1 -1
  74. elasticsearch/_sync/client/synonyms.py +7 -7
  75. elasticsearch/_sync/client/tasks.py +3 -3
  76. elasticsearch/_sync/client/text_structure.py +4 -4
  77. elasticsearch/_sync/client/transform.py +69 -9
  78. elasticsearch/_sync/client/xpack.py +1 -1
  79. elasticsearch/_version.py +1 -1
  80. elasticsearch/compat.py +5 -0
  81. elasticsearch/dsl/__init__.py +2 -1
  82. elasticsearch/dsl/_async/document.py +85 -1
  83. elasticsearch/dsl/_sync/document.py +85 -1
  84. elasticsearch/dsl/aggs.py +22 -3
  85. elasticsearch/dsl/document_base.py +219 -16
  86. elasticsearch/dsl/field.py +272 -48
  87. elasticsearch/dsl/query.py +49 -4
  88. elasticsearch/dsl/response/aggs.py +1 -1
  89. elasticsearch/dsl/types.py +247 -27
  90. elasticsearch/dsl/utils.py +2 -2
  91. elasticsearch/esql/__init__.py +19 -0
  92. elasticsearch/esql/esql.py +1156 -0
  93. elasticsearch/esql/functions.py +1750 -0
  94. elasticsearch/exceptions.py +2 -0
  95. {elasticsearch-8.18.1.dist-info → elasticsearch-8.19.1.dist-info}/METADATA +1 -5
  96. elasticsearch-8.19.1.dist-info/RECORD +164 -0
  97. elasticsearch-8.18.1.dist-info/RECORD +0 -163
  98. elasticsearch-8.18.1.dist-info/licenses/LICENSE.txt +0 -175
  99. elasticsearch-8.18.1.dist-info/licenses/NOTICE.txt +0 -559
  100. {elasticsearch-8.18.1.dist-info → elasticsearch-8.19.1.dist-info}/WHEEL +0 -0
  101. {elasticsearch-8.18.1.dist-info → elasticsearch-8.19.1.dist-info}/licenses/LICENSE +0 -0
  102. {elasticsearch-8.18.1.dist-info → elasticsearch-8.19.1.dist-info}/licenses/NOTICE +0 -0
@@ -698,6 +698,7 @@ class Elasticsearch(BaseClient):
698
698
  <li>JavaScript: Check out <code>client.helpers.*</code></li>
699
699
  <li>.NET: Check out <code>BulkAllObservable</code></li>
700
700
  <li>PHP: Check out bulk indexing.</li>
701
+ <li>Ruby: Check out <code>Elasticsearch::Helpers::BulkHelper</code></li>
701
702
  </ul>
702
703
  <p><strong>Submitting bulk requests with cURL</strong></p>
703
704
  <p>If you're providing text file input to <code>curl</code>, you must use the <code>--data-binary</code> flag instead of plain <code>-d</code>.
@@ -729,7 +730,7 @@ class Elasticsearch(BaseClient):
729
730
  The other two shards that make up the index do not participate in the <code>_bulk</code> request at all.</p>
730
731
 
731
732
 
732
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.18/docs-bulk.html>`_
733
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.19/docs-bulk.html>`_
733
734
 
734
735
  :param operations:
735
736
  :param index: The name of the data stream, index, or index alias to perform bulk
@@ -854,7 +855,7 @@ class Elasticsearch(BaseClient):
854
855
  Clear the search context and results for a scrolling search.</p>
855
856
 
856
857
 
857
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.18/clear-scroll-api.html>`_
858
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.19/clear-scroll-api.html>`_
858
859
 
859
860
  :param scroll_id: The scroll IDs to clear. To clear all scroll IDs, use `_all`.
860
861
  """
@@ -911,7 +912,7 @@ class Elasticsearch(BaseClient):
911
912
  However, keeping points in time has a cost; close them as soon as they are no longer required for search requests.</p>
912
913
 
913
914
 
914
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.18/point-in-time-api.html>`_
915
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.19/point-in-time-api.html>`_
915
916
 
916
917
  :param id: The ID of the point-in-time.
917
918
  """
@@ -995,7 +996,7 @@ class Elasticsearch(BaseClient):
995
996
  This means that replicas increase the scalability of the count.</p>
996
997
 
997
998
 
998
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.18/search-count.html>`_
999
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.19/search-count.html>`_
999
1000
 
1000
1001
  :param index: A comma-separated list of data streams, indices, and aliases to
1001
1002
  search. It supports wildcards (`*`). To search all data streams and indices,
@@ -1119,10 +1120,7 @@ class Elasticsearch(BaseClient):
1119
1120
  error_trace: t.Optional[bool] = None,
1120
1121
  filter_path: t.Optional[t.Union[str, t.Sequence[str]]] = None,
1121
1122
  human: t.Optional[bool] = None,
1122
- if_primary_term: t.Optional[int] = None,
1123
- if_seq_no: t.Optional[int] = None,
1124
1123
  include_source_on_error: t.Optional[bool] = None,
1125
- op_type: t.Optional[t.Union[str, t.Literal["create", "index"]]] = None,
1126
1124
  pipeline: t.Optional[str] = None,
1127
1125
  pretty: t.Optional[bool] = None,
1128
1126
  refresh: t.Optional[
@@ -1197,7 +1195,7 @@ class Elasticsearch(BaseClient):
1197
1195
  The <code>_shards</code> section of the API response reveals the number of shard copies on which replication succeeded and failed.</p>
1198
1196
 
1199
1197
 
1200
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.18/docs-index_.html>`_
1198
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.19/docs-index_.html>`_
1201
1199
 
1202
1200
  :param index: The name of the data stream or index to target. If the target doesn't
1203
1201
  exist and matches the name or wildcard (`*`) pattern of an index template
@@ -1207,18 +1205,8 @@ class Elasticsearch(BaseClient):
1207
1205
  :param id: A unique identifier for the document. To automatically generate a
1208
1206
  document ID, use the `POST /<target>/_doc/` request format.
1209
1207
  :param document:
1210
- :param if_primary_term: Only perform the operation if the document has this primary
1211
- term.
1212
- :param if_seq_no: Only perform the operation if the document has this sequence
1213
- number.
1214
1208
  :param include_source_on_error: True or false if to include the document source
1215
1209
  in the error message in case of parsing errors.
1216
- :param op_type: Set to `create` to only index the document if it does not already
1217
- exist (put if absent). If a document with the specified `_id` already exists,
1218
- the indexing operation will fail. The behavior is the same as using the `<index>/_create`
1219
- endpoint. If a document ID is specified, this paramater defaults to `index`.
1220
- Otherwise, it defaults to `create`. If the request targets a data stream,
1221
- an `op_type` of `create` is required.
1222
1210
  :param pipeline: The ID of the pipeline to use to preprocess incoming documents.
1223
1211
  If the index has a default ingest pipeline specified, setting the value to
1224
1212
  `_none` turns off the default ingest pipeline for this request. If a final
@@ -1270,14 +1258,8 @@ class Elasticsearch(BaseClient):
1270
1258
  __query["filter_path"] = filter_path
1271
1259
  if human is not None:
1272
1260
  __query["human"] = human
1273
- if if_primary_term is not None:
1274
- __query["if_primary_term"] = if_primary_term
1275
- if if_seq_no is not None:
1276
- __query["if_seq_no"] = if_seq_no
1277
1261
  if include_source_on_error is not None:
1278
1262
  __query["include_source_on_error"] = include_source_on_error
1279
- if op_type is not None:
1280
- __query["op_type"] = op_type
1281
1263
  if pipeline is not None:
1282
1264
  __query["pipeline"] = pipeline
1283
1265
  if pretty is not None:
@@ -1364,7 +1346,7 @@ class Elasticsearch(BaseClient):
1364
1346
  It then gets redirected into the primary shard within that ID group and replicated (if needed) to shard replicas within that ID group.</p>
1365
1347
 
1366
1348
 
1367
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.18/docs-delete.html>`_
1349
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.19/docs-delete.html>`_
1368
1350
 
1369
1351
  :param index: The name of the target index.
1370
1352
  :param id: A unique identifier for the document.
@@ -1433,7 +1415,7 @@ class Elasticsearch(BaseClient):
1433
1415
  )
1434
1416
 
1435
1417
  @_rewrite_parameters(
1436
- body_fields=("max_docs", "query", "slice"),
1418
+ body_fields=("max_docs", "query", "slice", "sort"),
1437
1419
  parameter_aliases={"from": "from_"},
1438
1420
  )
1439
1421
  def delete_by_query(
@@ -1477,7 +1459,12 @@ class Elasticsearch(BaseClient):
1477
1459
  ] = None,
1478
1460
  slice: t.Optional[t.Mapping[str, t.Any]] = None,
1479
1461
  slices: t.Optional[t.Union[int, t.Union[str, t.Literal["auto"]]]] = None,
1480
- sort: t.Optional[t.Sequence[str]] = None,
1462
+ sort: t.Optional[
1463
+ t.Union[
1464
+ t.Sequence[t.Union[str, t.Mapping[str, t.Any]]],
1465
+ t.Union[str, t.Mapping[str, t.Any]],
1466
+ ]
1467
+ ] = None,
1481
1468
  stats: t.Optional[t.Sequence[str]] = None,
1482
1469
  terminate_after: t.Optional[int] = None,
1483
1470
  timeout: t.Optional[t.Union[str, t.Literal[-1], t.Literal[0]]] = None,
@@ -1553,7 +1540,7 @@ class Elasticsearch(BaseClient):
1553
1540
  The get task status API will continue to list the delete by query task until this task checks that it has been cancelled and terminates itself.</p>
1554
1541
 
1555
1542
 
1556
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.18/docs-delete-by-query.html>`_
1543
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.19/docs-delete-by-query.html>`_
1557
1544
 
1558
1545
  :param index: A comma-separated list of data streams, indices, and aliases to
1559
1546
  search. It supports wildcards (`*`). To search all data streams or indices,
@@ -1609,7 +1596,7 @@ class Elasticsearch(BaseClient):
1609
1596
  :param slice: Slice the request manually using the provided slice ID and total
1610
1597
  number of slices.
1611
1598
  :param slices: The number of slices this task should be divided into.
1612
- :param sort: A comma-separated list of `<field>:<direction>` pairs.
1599
+ :param sort: A sort object that specifies the order of deleted documents.
1613
1600
  :param stats: The specific `tag` of the request for logging and statistical purposes.
1614
1601
  :param terminate_after: The maximum number of documents to collect for each shard.
1615
1602
  If a query reaches this limit, Elasticsearch terminates the query early.
@@ -1699,8 +1686,6 @@ class Elasticsearch(BaseClient):
1699
1686
  __query["search_type"] = search_type
1700
1687
  if slices is not None:
1701
1688
  __query["slices"] = slices
1702
- if sort is not None:
1703
- __query["sort"] = sort
1704
1689
  if stats is not None:
1705
1690
  __query["stats"] = stats
1706
1691
  if terminate_after is not None:
@@ -1720,6 +1705,8 @@ class Elasticsearch(BaseClient):
1720
1705
  __body["query"] = query
1721
1706
  if slice is not None:
1722
1707
  __body["slice"] = slice
1708
+ if sort is not None:
1709
+ __body["sort"] = sort
1723
1710
  __headers = {"accept": "application/json", "content-type": "application/json"}
1724
1711
  return self.perform_request( # type: ignore[return-value]
1725
1712
  "POST",
@@ -1750,7 +1737,7 @@ class Elasticsearch(BaseClient):
1750
1737
  Rethrottling that speeds up the query takes effect immediately but rethrotting that slows down the query takes effect after completing the current batch to prevent scroll timeouts.</p>
1751
1738
 
1752
1739
 
1753
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.18/docs-delete-by-query.html#docs-delete-by-query-rethrottle>`_
1740
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.19/docs-delete-by-query.html#docs-delete-by-query-rethrottle>`_
1754
1741
 
1755
1742
  :param task_id: The ID for the task.
1756
1743
  :param requests_per_second: The throttle for this request in sub-requests per
@@ -1800,7 +1787,7 @@ class Elasticsearch(BaseClient):
1800
1787
  Deletes a stored script or search template.</p>
1801
1788
 
1802
1789
 
1803
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.18/delete-stored-script-api.html>`_
1790
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.19/delete-stored-script-api.html>`_
1804
1791
 
1805
1792
  :param id: The identifier for the stored script or search template.
1806
1793
  :param master_timeout: The period to wait for a connection to the master node.
@@ -1884,7 +1871,7 @@ class Elasticsearch(BaseClient):
1884
1871
  Elasticsearch cleans up deleted documents in the background as you continue to index more data.</p>
1885
1872
 
1886
1873
 
1887
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.18/docs-get.html>`_
1874
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.19/docs-get.html>`_
1888
1875
 
1889
1876
  :param index: A comma-separated list of data streams, indices, and aliases. It
1890
1877
  supports wildcards (`*`).
@@ -2007,7 +1994,7 @@ class Elasticsearch(BaseClient):
2007
1994
  <p>A document's source is not available if it is disabled in the mapping.</p>
2008
1995
 
2009
1996
 
2010
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.18/docs-get.html>`_
1997
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.19/docs-get.html>`_
2011
1998
 
2012
1999
  :param index: A comma-separated list of data streams, indices, and aliases. It
2013
2000
  supports wildcards (`*`).
@@ -2113,7 +2100,7 @@ class Elasticsearch(BaseClient):
2113
2100
  It computes a score explanation for a query and a specific document.</p>
2114
2101
 
2115
2102
 
2116
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.18/search-explain.html>`_
2103
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.19/search-explain.html>`_
2117
2104
 
2118
2105
  :param index: Index names that are used to limit the request. Only a single index
2119
2106
  name can be provided to this parameter.
@@ -2248,7 +2235,7 @@ class Elasticsearch(BaseClient):
2248
2235
  For example, a runtime field with a type of keyword is returned the same as any other field that belongs to the <code>keyword</code> family.</p>
2249
2236
 
2250
2237
 
2251
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.18/search-field-caps.html>`_
2238
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.19/search-field-caps.html>`_
2252
2239
 
2253
2240
  :param index: A comma-separated list of data streams, indices, and aliases used
2254
2241
  to limit the request. Supports wildcards (*). To target all data streams
@@ -2409,7 +2396,7 @@ class Elasticsearch(BaseClient):
2409
2396
  Elasticsearch cleans up deleted documents in the background as you continue to index more data.</p>
2410
2397
 
2411
2398
 
2412
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.18/docs-get.html>`_
2399
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.19/docs-get.html>`_
2413
2400
 
2414
2401
  :param index: The name of the index that contains the document.
2415
2402
  :param id: A unique document identifier.
@@ -2516,7 +2503,7 @@ class Elasticsearch(BaseClient):
2516
2503
  Retrieves a stored script or search template.</p>
2517
2504
 
2518
2505
 
2519
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.18/get-stored-script-api.html>`_
2506
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.19/get-stored-script-api.html>`_
2520
2507
 
2521
2508
  :param id: The identifier for the stored script or search template.
2522
2509
  :param master_timeout: The period to wait for the master node. If the master
@@ -2565,7 +2552,7 @@ class Elasticsearch(BaseClient):
2565
2552
  <p>Get a list of supported script contexts and their methods.</p>
2566
2553
 
2567
2554
 
2568
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.18/get-script-contexts-api.html>`_
2555
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.19/get-script-contexts-api.html>`_
2569
2556
  """
2570
2557
  __path_parts: t.Dict[str, str] = {}
2571
2558
  __path = "/_script_context"
@@ -2604,7 +2591,7 @@ class Elasticsearch(BaseClient):
2604
2591
  <p>Get a list of available script types, languages, and contexts.</p>
2605
2592
 
2606
2593
 
2607
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.18/get-script-languages-api.html>`_
2594
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.19/get-script-languages-api.html>`_
2608
2595
  """
2609
2596
  __path_parts: t.Dict[str, str] = {}
2610
2597
  __path = "/_script_language"
@@ -2650,7 +2637,6 @@ class Elasticsearch(BaseClient):
2650
2637
  source: t.Optional[t.Union[bool, t.Union[str, t.Sequence[str]]]] = None,
2651
2638
  source_excludes: t.Optional[t.Union[str, t.Sequence[str]]] = None,
2652
2639
  source_includes: t.Optional[t.Union[str, t.Sequence[str]]] = None,
2653
- stored_fields: t.Optional[t.Union[str, t.Sequence[str]]] = None,
2654
2640
  version: t.Optional[int] = None,
2655
2641
  version_type: t.Optional[
2656
2642
  t.Union[str, t.Literal["external", "external_gte", "force", "internal"]]
@@ -2669,7 +2655,7 @@ class Elasticsearch(BaseClient):
2669
2655
  </code></pre>
2670
2656
 
2671
2657
 
2672
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.18/docs-get.html>`_
2658
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.19/docs-get.html>`_
2673
2659
 
2674
2660
  :param index: The name of the index that contains the document.
2675
2661
  :param id: A unique document identifier.
@@ -2687,8 +2673,6 @@ class Elasticsearch(BaseClient):
2687
2673
  the response.
2688
2674
  :param source_includes: A comma-separated list of source fields to include in
2689
2675
  the response.
2690
- :param stored_fields: A comma-separated list of stored fields to return as part
2691
- of a hit.
2692
2676
  :param version: The version number for concurrency control. It must match the
2693
2677
  current version of the document for the request to succeed.
2694
2678
  :param version_type: The version type.
@@ -2722,8 +2706,6 @@ class Elasticsearch(BaseClient):
2722
2706
  __query["_source_excludes"] = source_excludes
2723
2707
  if source_includes is not None:
2724
2708
  __query["_source_includes"] = source_includes
2725
- if stored_fields is not None:
2726
- __query["stored_fields"] = stored_fields
2727
2709
  if version is not None:
2728
2710
  __query["version"] = version
2729
2711
  if version_type is not None:
@@ -2769,7 +2751,7 @@ class Elasticsearch(BaseClient):
2769
2751
  When setting up automated polling of the API for health status, set verbose to false to disable the more expensive analysis logic.</p>
2770
2752
 
2771
2753
 
2772
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.18/health-api.html>`_
2754
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.19/health-api.html>`_
2773
2755
 
2774
2756
  :param feature: A feature of the cluster, as returned by the top-level health
2775
2757
  report API.
@@ -2832,6 +2814,7 @@ class Elasticsearch(BaseClient):
2832
2814
  t.Union[bool, str, t.Literal["false", "true", "wait_for"]]
2833
2815
  ] = None,
2834
2816
  require_alias: t.Optional[bool] = None,
2817
+ require_data_stream: t.Optional[bool] = None,
2835
2818
  routing: t.Optional[str] = None,
2836
2819
  timeout: t.Optional[t.Union[str, t.Literal[-1], t.Literal[0]]] = None,
2837
2820
  version: t.Optional[int] = None,
@@ -2934,7 +2917,7 @@ class Elasticsearch(BaseClient):
2934
2917
  </code></pre>
2935
2918
 
2936
2919
 
2937
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.18/docs-index_.html>`_
2920
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.19/docs-index_.html>`_
2938
2921
 
2939
2922
  :param index: The name of the data stream or index to target. If the target doesn't
2940
2923
  exist and matches the name or wildcard (`*`) pattern of an index template
@@ -2967,6 +2950,8 @@ class Elasticsearch(BaseClient):
2967
2950
  this operation visible to search. If `wait_for`, it waits for a refresh to
2968
2951
  make this operation visible to search. If `false`, it does nothing with refreshes.
2969
2952
  :param require_alias: If `true`, the destination must be an index alias.
2953
+ :param require_data_stream: If `true`, the request's actions must target a data
2954
+ stream (existing or to be created).
2970
2955
  :param routing: A custom value that is used to route operations to a specific
2971
2956
  shard.
2972
2957
  :param timeout: The period the request waits for the following operations: automatic
@@ -3028,6 +3013,8 @@ class Elasticsearch(BaseClient):
3028
3013
  __query["refresh"] = refresh
3029
3014
  if require_alias is not None:
3030
3015
  __query["require_alias"] = require_alias
3016
+ if require_data_stream is not None:
3017
+ __query["require_data_stream"] = require_data_stream
3031
3018
  if routing is not None:
3032
3019
  __query["routing"] = routing
3033
3020
  if timeout is not None:
@@ -3063,10 +3050,11 @@ class Elasticsearch(BaseClient):
3063
3050
  .. raw:: html
3064
3051
 
3065
3052
  <p>Get cluster info.
3066
- Get basic build, version, and cluster information.</p>
3053
+ Get basic build, version, and cluster information.
3054
+ ::: In Serverless, this API is retained for backward compatibility only. Some response fields, such as the version number, should be ignored.</p>
3067
3055
 
3068
3056
 
3069
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.18/rest-api-root.html>`_
3057
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.19/rest-api-root.html>`_
3070
3058
  """
3071
3059
  __path_parts: t.Dict[str, str] = {}
3072
3060
  __path = "/"
@@ -3140,7 +3128,7 @@ class Elasticsearch(BaseClient):
3140
3128
  </ul>
3141
3129
 
3142
3130
 
3143
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.18/knn-search-api.html>`_
3131
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.19/knn-search-api.html>`_
3144
3132
 
3145
3133
  :param index: A comma-separated list of index names to search; use `_all` or
3146
3134
  to perform the operation on all indices.
@@ -3256,7 +3244,7 @@ class Elasticsearch(BaseClient):
3256
3244
  You can include the <code>stored_fields</code> query parameter in the request URI to specify the defaults to use when there are no per-document instructions.</p>
3257
3245
 
3258
3246
 
3259
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.18/docs-multi-get.html>`_
3247
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.19/docs-multi-get.html>`_
3260
3248
 
3261
3249
  :param index: Name of the index to retrieve documents from when `ids` are specified,
3262
3250
  or when a document in the `docs` array does not specify an index.
@@ -3391,7 +3379,7 @@ class Elasticsearch(BaseClient):
3391
3379
  When sending requests to this endpoint the <code>Content-Type</code> header should be set to <code>application/x-ndjson</code>.</p>
3392
3380
 
3393
3381
 
3394
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.18/search-multi-search.html>`_
3382
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.19/search-multi-search.html>`_
3395
3383
 
3396
3384
  :param searches:
3397
3385
  :param index: Comma-separated list of data streams, indices, and index aliases
@@ -3537,7 +3525,7 @@ class Elasticsearch(BaseClient):
3537
3525
  </code></pre>
3538
3526
 
3539
3527
 
3540
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.18/multi-search-template.html>`_
3528
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.19/multi-search-template.html>`_
3541
3529
 
3542
3530
  :param search_templates:
3543
3531
  :param index: A comma-separated list of data streams, indices, and aliases to
@@ -3642,7 +3630,7 @@ class Elasticsearch(BaseClient):
3642
3630
  The mapping used is determined by the specified <code>_index</code>.</p>
3643
3631
 
3644
3632
 
3645
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.18/docs-multi-termvectors.html>`_
3633
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.19/docs-multi-termvectors.html>`_
3646
3634
 
3647
3635
  :param index: The name of the index that contains the documents.
3648
3636
  :param docs: An array of existing or artificial documents.
@@ -3783,7 +3771,7 @@ class Elasticsearch(BaseClient):
3783
3771
  You can check how many point-in-times (that is, search contexts) are open with the nodes stats API.</p>
3784
3772
 
3785
3773
 
3786
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.18/point-in-time-api.html>`_
3774
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.19/point-in-time-api.html>`_
3787
3775
 
3788
3776
  :param index: A comma-separated list of index names to open point in time; use
3789
3777
  `_all` or empty string to perform the operation on all indices
@@ -3796,8 +3784,7 @@ class Elasticsearch(BaseClient):
3796
3784
  :param expand_wildcards: The type of index that wildcard patterns can match.
3797
3785
  If the request can target data streams, this argument determines whether
3798
3786
  wildcard expressions match hidden data streams. It supports comma-separated
3799
- values, such as `open,hidden`. Valid values are: `all`, `open`, `closed`,
3800
- `hidden`, `none`.
3787
+ values, such as `open,hidden`.
3801
3788
  :param ignore_unavailable: If `false`, the request returns an error if it targets
3802
3789
  a missing or closed index.
3803
3790
  :param index_filter: Filter indices if the provided query rewrites to `match_none`
@@ -3881,7 +3868,7 @@ class Elasticsearch(BaseClient):
3881
3868
  Creates or updates a stored script or search template.</p>
3882
3869
 
3883
3870
 
3884
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.18/create-stored-script-api.html>`_
3871
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.19/create-stored-script-api.html>`_
3885
3872
 
3886
3873
  :param id: The identifier for the stored script or search template. It must be
3887
3874
  unique within the cluster.
@@ -3971,7 +3958,7 @@ class Elasticsearch(BaseClient):
3971
3958
  <p>Evaluate the quality of ranked search results over a set of typical search queries.</p>
3972
3959
 
3973
3960
 
3974
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.18/search-rank-eval.html>`_
3961
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.19/search-rank-eval.html>`_
3975
3962
 
3976
3963
  :param requests: A set of typical search requests, together with their provided
3977
3964
  ratings.
@@ -4203,7 +4190,7 @@ class Elasticsearch(BaseClient):
4203
4190
  It is not possible to configure SSL in the body of the reindex request.</p>
4204
4191
 
4205
4192
 
4206
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.18/docs-reindex.html>`_
4193
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.19/docs-reindex.html>`_
4207
4194
 
4208
4195
  :param dest: The destination you are copying to.
4209
4196
  :param source: The source you are copying from.
@@ -4327,7 +4314,7 @@ class Elasticsearch(BaseClient):
4327
4314
  This behavior prevents scroll timeouts.</p>
4328
4315
 
4329
4316
 
4330
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.18/docs-reindex.html>`_
4317
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.19/docs-reindex.html>`_
4331
4318
 
4332
4319
  :param task_id: The task identifier, which can be found by using the tasks API.
4333
4320
  :param requests_per_second: The throttle for this request in sub-requests per
@@ -4383,7 +4370,7 @@ class Elasticsearch(BaseClient):
4383
4370
  <p>Render a search template as a search request body.</p>
4384
4371
 
4385
4372
 
4386
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.18/render-search-template-api.html>`_
4373
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.19/render-search-template-api.html>`_
4387
4374
 
4388
4375
  :param id: The ID of the search template to render. If no `source` is specified,
4389
4376
  this or the `id` request body parameter is required.
@@ -4477,7 +4464,7 @@ class Elasticsearch(BaseClient):
4477
4464
  <p>Each context requires a script, but additional parameters depend on the context you're using for that script.</p>
4478
4465
 
4479
4466
 
4480
- `<https://www.elastic.co/guide/en/elasticsearch/painless/8.18/painless-execute-api.html>`_
4467
+ `<https://www.elastic.co/guide/en/elasticsearch/painless/8.19/painless-execute-api.html>`_
4481
4468
 
4482
4469
  :param context: The context that the script should run in. NOTE: Result ordering
4483
4470
  in the field contexts is not guaranteed.
@@ -4550,7 +4537,7 @@ class Elasticsearch(BaseClient):
4550
4537
  <p>IMPORTANT: Results from a scrolling search reflect the state of the index at the time of the initial search request. Subsequent indexing or document changes only affect later search and scroll requests.</p>
4551
4538
 
4552
4539
 
4553
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.18/scroll-api.html>`_
4540
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.19/scroll-api.html>`_
4554
4541
 
4555
4542
  :param scroll_id: The scroll ID of the search.
4556
4543
  :param rest_total_hits_as_int: If true, the API response’s hit.total property
@@ -4756,7 +4743,7 @@ class Elasticsearch(BaseClient):
4756
4743
  This situation can occur because the splitting criterion is based on Lucene document IDs, which are not stable across changes to the index.</p>
4757
4744
 
4758
4745
 
4759
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.18/search-search.html>`_
4746
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.19/search-search.html>`_
4760
4747
 
4761
4748
  :param index: A comma-separated list of data streams, indices, and aliases to
4762
4749
  search. It supports wildcards (`*`). To search all data streams and indices,
@@ -4837,7 +4824,8 @@ class Elasticsearch(BaseClient):
4837
4824
  :param min_compatible_shard_node: The minimum version of the node that can handle
4838
4825
  the request Any handling node with a lower version will fail the request.
4839
4826
  :param min_score: The minimum `_score` for matching documents. Documents with
4840
- a lower `_score` are not included in the search results.
4827
+ a lower `_score` are not included in search results and results collected
4828
+ by aggregations.
4841
4829
  :param pit: Limit the search to a point in time (PIT). If you provide a PIT,
4842
4830
  you cannot specify an `<index>` in the request path.
4843
4831
  :param post_filter: Use the `post_filter` parameter to filter search results.
@@ -5506,7 +5494,7 @@ class Elasticsearch(BaseClient):
5506
5494
  Elasticsearch uses the H3 resolution that is closest to the corresponding geotile density.</p>
5507
5495
 
5508
5496
 
5509
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.18/search-vector-tile-api.html>`_
5497
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.19/search-vector-tile-api.html>`_
5510
5498
 
5511
5499
  :param index: Comma-separated list of data streams, indices, or aliases to search
5512
5500
  :param field: Field containing geospatial data to return
@@ -5680,7 +5668,7 @@ class Elasticsearch(BaseClient):
5680
5668
  <p>If the Elasticsearch security features are enabled, you must have the <code>view_index_metadata</code> or <code>manage</code> index privilege for the target data stream, index, or alias.</p>
5681
5669
 
5682
5670
 
5683
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.18/search-shards.html>`_
5671
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.19/search-shards.html>`_
5684
5672
 
5685
5673
  :param index: A comma-separated list of data streams, indices, and aliases to
5686
5674
  search. It supports wildcards (`*`). To search all data streams and indices,
@@ -5693,7 +5681,7 @@ class Elasticsearch(BaseClient):
5693
5681
  :param expand_wildcards: Type of index that wildcard patterns can match. If the
5694
5682
  request can target data streams, this argument determines whether wildcard
5695
5683
  expressions match hidden data streams. Supports comma-separated values, such
5696
- as `open,hidden`. Valid values are: `all`, `open`, `closed`, `hidden`, `none`.
5684
+ as `open,hidden`.
5697
5685
  :param ignore_unavailable: If `false`, the request returns an error if it targets
5698
5686
  a missing or closed index.
5699
5687
  :param local: If `true`, the request retrieves information from the local node
@@ -5791,7 +5779,7 @@ class Elasticsearch(BaseClient):
5791
5779
  <p>Run a search with a search template.</p>
5792
5780
 
5793
5781
 
5794
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.18/search-template-api.html>`_
5782
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.19/search-template-api.html>`_
5795
5783
 
5796
5784
  :param index: A comma-separated list of data streams, indices, and aliases to
5797
5785
  search. It supports wildcards (`*`).
@@ -5805,8 +5793,7 @@ class Elasticsearch(BaseClient):
5805
5793
  :param expand_wildcards: The type of index that wildcard patterns can match.
5806
5794
  If the request can target data streams, this argument determines whether
5807
5795
  wildcard expressions match hidden data streams. Supports comma-separated
5808
- values, such as `open,hidden`. Valid values are: `all`, `open`, `closed`,
5809
- `hidden`, `none`.
5796
+ values, such as `open,hidden`.
5810
5797
  :param explain: If `true`, returns detailed information about score calculation
5811
5798
  as part of each hit. If you specify both this and the `explain` query parameter,
5812
5799
  the API uses only the query parameter.
@@ -5934,7 +5921,7 @@ class Elasticsearch(BaseClient):
5934
5921
  </blockquote>
5935
5922
 
5936
5923
 
5937
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.18/search-terms-enum.html>`_
5924
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.19/search-terms-enum.html>`_
5938
5925
 
5939
5926
  :param index: A comma-separated list of data streams, indices, and index aliases
5940
5927
  to search. Wildcard (`*`) expressions are supported. To search all data streams
@@ -6027,7 +6014,7 @@ class Elasticsearch(BaseClient):
6027
6014
  doc: t.Optional[t.Mapping[str, t.Any]] = None,
6028
6015
  error_trace: t.Optional[bool] = None,
6029
6016
  field_statistics: t.Optional[bool] = None,
6030
- fields: t.Optional[t.Union[str, t.Sequence[str]]] = None,
6017
+ fields: t.Optional[t.Sequence[str]] = None,
6031
6018
  filter: t.Optional[t.Mapping[str, t.Any]] = None,
6032
6019
  filter_path: t.Optional[t.Union[str, t.Sequence[str]]] = None,
6033
6020
  human: t.Optional[bool] = None,
@@ -6083,7 +6070,7 @@ class Elasticsearch(BaseClient):
6083
6070
  Use <code>routing</code> only to hit a particular shard.</p>
6084
6071
 
6085
6072
 
6086
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.18/docs-termvectors.html>`_
6073
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.19/docs-termvectors.html>`_
6087
6074
 
6088
6075
  :param index: The name of the index that contains the document.
6089
6076
  :param id: A unique identifier for the document.
@@ -6254,7 +6241,7 @@ class Elasticsearch(BaseClient):
6254
6241
  In addition to <code>_source</code>, you can access the following variables through the <code>ctx</code> map: <code>_index</code>, <code>_type</code>, <code>_id</code>, <code>_version</code>, <code>_routing</code>, and <code>_now</code> (the current timestamp).</p>
6255
6242
 
6256
6243
 
6257
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.18/docs-update.html>`_
6244
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.19/docs-update.html>`_
6258
6245
 
6259
6246
  :param index: The name of the target index. By default, the index is created
6260
6247
  automatically if it doesn't exist.
@@ -6492,7 +6479,7 @@ class Elasticsearch(BaseClient):
6492
6479
  This API enables you to only modify the source of matching documents; you cannot move them.</p>
6493
6480
 
6494
6481
 
6495
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.18/docs-update-by-query.html>`_
6482
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.19/docs-update-by-query.html>`_
6496
6483
 
6497
6484
  :param index: A comma-separated list of data streams, indices, and aliases to
6498
6485
  search. It supports wildcards (`*`). To search all data streams or indices,
@@ -6517,8 +6504,7 @@ class Elasticsearch(BaseClient):
6517
6504
  :param expand_wildcards: The type of index that wildcard patterns can match.
6518
6505
  If the request can target data streams, this argument determines whether
6519
6506
  wildcard expressions match hidden data streams. It supports comma-separated
6520
- values, such as `open,hidden`. Valid values are: `all`, `open`, `closed`,
6521
- `hidden`, `none`.
6507
+ values, such as `open,hidden`.
6522
6508
  :param from_: Skips the specified number of documents.
6523
6509
  :param ignore_unavailable: If `false`, the request returns an error if it targets
6524
6510
  a missing or closed index.
@@ -6712,7 +6698,7 @@ class Elasticsearch(BaseClient):
6712
6698
  Rethrottling that speeds up the query takes effect immediately but rethrotting that slows down the query takes effect after completing the current batch to prevent scroll timeouts.</p>
6713
6699
 
6714
6700
 
6715
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.18/docs-update-by-query.html#docs-update-by-query-rethrottle>`_
6701
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.19/docs-update-by-query.html#docs-update-by-query-rethrottle>`_
6716
6702
 
6717
6703
  :param task_id: The ID for the task.
6718
6704
  :param requests_per_second: The throttle for this request in sub-requests per
@@ -44,7 +44,7 @@ class AsyncSearchClient(NamespacedClient):
44
44
  If the Elasticsearch security features are enabled, the deletion of a specific async search is restricted to: the authenticated user that submitted the original search request; users that have the <code>cancel_task</code> cluster privilege.</p>
45
45
 
46
46
 
47
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.18/async-search.html>`_
47
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.19/async-search.html>`_
48
48
 
49
49
  :param id: A unique identifier for the async search.
50
50
  """
@@ -94,7 +94,7 @@ class AsyncSearchClient(NamespacedClient):
94
94
  If the Elasticsearch security features are enabled, access to the results of a specific async search is restricted to the user or API key that submitted it.</p>
95
95
 
96
96
 
97
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.18/async-search.html>`_
97
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.19/async-search.html>`_
98
98
 
99
99
  :param id: A unique identifier for the async search.
100
100
  :param keep_alive: The length of time that the async search should be available
@@ -164,7 +164,7 @@ class AsyncSearchClient(NamespacedClient):
164
164
  </ul>
165
165
 
166
166
 
167
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.18/async-search.html>`_
167
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.19/async-search.html>`_
168
168
 
169
169
  :param id: A unique identifier for the async search.
170
170
  :param keep_alive: The length of time that the async search needs to be available.
@@ -281,7 +281,6 @@ class AsyncSearchClient(NamespacedClient):
281
281
  ] = None,
282
282
  lenient: t.Optional[bool] = None,
283
283
  max_concurrent_shard_requests: t.Optional[int] = None,
284
- min_compatible_shard_node: t.Optional[str] = None,
285
284
  min_score: t.Optional[float] = None,
286
285
  pit: t.Optional[t.Mapping[str, t.Any]] = None,
287
286
  post_filter: t.Optional[t.Mapping[str, t.Any]] = None,
@@ -346,7 +345,7 @@ class AsyncSearchClient(NamespacedClient):
346
345
  The maximum allowed size for a stored async search response can be set by changing the <code>search.max_async_search_response_size</code> cluster level setting.</p>
347
346
 
348
347
 
349
- `<https://www.elastic.co/guide/en/elasticsearch/reference/8.18/async-search.html>`_
348
+ `<https://www.elastic.co/guide/en/elasticsearch/reference/8.19/async-search.html>`_
350
349
 
351
350
  :param index: A comma-separated list of index names to search; use `_all` or
352
351
  empty string to perform the operation on all indices
@@ -401,9 +400,8 @@ class AsyncSearchClient(NamespacedClient):
401
400
  per node this search executes concurrently. This value should be used to
402
401
  limit the impact of the search on the cluster in order to limit the number
403
402
  of concurrent shard requests
404
- :param min_compatible_shard_node:
405
403
  :param min_score: Minimum _score for matching documents. Documents with a lower
406
- _score are not included in the search results.
404
+ _score are not included in search results and results collected by aggregations.
407
405
  :param pit: Limits the search to a point in time (PIT). If you provide a PIT,
408
406
  you cannot specify an <index> in the request path.
409
407
  :param post_filter:
@@ -526,8 +524,6 @@ class AsyncSearchClient(NamespacedClient):
526
524
  __query["lenient"] = lenient
527
525
  if max_concurrent_shard_requests is not None:
528
526
  __query["max_concurrent_shard_requests"] = max_concurrent_shard_requests
529
- if min_compatible_shard_node is not None:
530
- __query["min_compatible_shard_node"] = min_compatible_shard_node
531
527
  if preference is not None:
532
528
  __query["preference"] = preference
533
529
  if pretty is not None: