elasticsearch-api 9.1.1 → 9.2.0

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 (150) hide show
  1. checksums.yaml +4 -4
  2. data/lib/elasticsearch/api/actions/async_search/submit.rb +12 -4
  3. data/lib/elasticsearch/api/actions/bulk.rb +2 -3
  4. data/lib/elasticsearch/api/actions/cat/aliases.rb +10 -1
  5. data/lib/elasticsearch/api/actions/cat/allocation.rb +10 -2
  6. data/lib/elasticsearch/api/actions/cat/component_templates.rb +10 -1
  7. data/lib/elasticsearch/api/actions/cat/count.rb +18 -1
  8. data/lib/elasticsearch/api/actions/cat/fielddata.rb +10 -2
  9. data/lib/elasticsearch/api/actions/cat/health.rb +10 -2
  10. data/lib/elasticsearch/api/actions/cat/indices.rb +10 -3
  11. data/lib/elasticsearch/api/actions/cat/master.rb +10 -1
  12. data/lib/elasticsearch/api/actions/cat/ml_data_frame_analytics.rb +11 -3
  13. data/lib/elasticsearch/api/actions/cat/ml_datafeeds.rb +9 -1
  14. data/lib/elasticsearch/api/actions/cat/ml_jobs.rb +9 -2
  15. data/lib/elasticsearch/api/actions/cat/ml_trained_models.rb +11 -4
  16. data/lib/elasticsearch/api/actions/cat/nodeattrs.rb +10 -1
  17. data/lib/elasticsearch/api/actions/cat/nodes.rb +10 -3
  18. data/lib/elasticsearch/api/actions/cat/pending_tasks.rb +10 -2
  19. data/lib/elasticsearch/api/actions/cat/plugins.rb +10 -1
  20. data/lib/elasticsearch/api/actions/cat/recovery.rb +9 -2
  21. data/lib/elasticsearch/api/actions/cat/repositories.rb +9 -0
  22. data/lib/elasticsearch/api/actions/cat/segments.rb +9 -1
  23. data/lib/elasticsearch/api/actions/cat/shards.rb +9 -2
  24. data/lib/elasticsearch/api/actions/cat/snapshots.rb +9 -1
  25. data/lib/elasticsearch/api/actions/cat/tasks.rb +10 -2
  26. data/lib/elasticsearch/api/actions/cat/templates.rb +10 -1
  27. data/lib/elasticsearch/api/actions/cat/thread_pool.rb +9 -1
  28. data/lib/elasticsearch/api/actions/cat/transforms.rb +9 -1
  29. data/lib/elasticsearch/api/actions/close_point_in_time.rb +2 -0
  30. data/lib/elasticsearch/api/actions/cluster/allocation_explain.rb +5 -0
  31. data/lib/elasticsearch/api/actions/cluster/get_settings.rb +6 -1
  32. data/lib/elasticsearch/api/actions/cluster/state.rb +1 -1
  33. data/lib/elasticsearch/api/actions/connector/delete.rb +1 -1
  34. data/lib/elasticsearch/api/actions/connector/list.rb +2 -2
  35. data/lib/elasticsearch/api/actions/connector/sync_job_list.rb +2 -2
  36. data/lib/elasticsearch/api/actions/count.rb +10 -2
  37. data/lib/elasticsearch/api/actions/cross_cluster_replication/follow.rb +1 -1
  38. data/lib/elasticsearch/api/actions/dangling_indices/delete_dangling_index.rb +1 -1
  39. data/lib/elasticsearch/api/actions/dangling_indices/import_dangling_index.rb +1 -1
  40. data/lib/elasticsearch/api/actions/delete_by_query.rb +2 -2
  41. data/lib/elasticsearch/api/actions/eql/get.rb +1 -1
  42. data/lib/elasticsearch/api/actions/eql/search.rb +8 -0
  43. data/lib/elasticsearch/api/actions/esql/async_query.rb +1 -1
  44. data/lib/elasticsearch/api/actions/esql/get_query.rb +1 -1
  45. data/lib/elasticsearch/api/actions/esql/list_queries.rb +1 -1
  46. data/lib/elasticsearch/api/actions/esql/query.rb +1 -1
  47. data/lib/elasticsearch/api/actions/explain.rb +2 -2
  48. data/lib/elasticsearch/api/actions/field_caps.rb +8 -0
  49. data/lib/elasticsearch/api/actions/fleet/msearch.rb +1 -3
  50. data/lib/elasticsearch/api/actions/fleet/search.rb +2 -6
  51. data/lib/elasticsearch/api/actions/get.rb +1 -0
  52. data/lib/elasticsearch/api/actions/get_script.rb +1 -1
  53. data/lib/elasticsearch/api/actions/graph/explore.rb +2 -6
  54. data/lib/elasticsearch/api/actions/index_lifecycle_management/move_to_step.rb +1 -0
  55. data/lib/elasticsearch/api/actions/index_lifecycle_management/put_lifecycle.rb +1 -0
  56. data/lib/elasticsearch/api/actions/indices/analyze.rb +3 -6
  57. data/lib/elasticsearch/api/actions/indices/create_from.rb +0 -1
  58. data/lib/elasticsearch/api/actions/indices/delete_data_lifecycle.rb +1 -1
  59. data/lib/elasticsearch/api/actions/indices/delete_data_stream_options.rb +2 -2
  60. data/lib/elasticsearch/api/actions/indices/disk_usage.rb +1 -0
  61. data/lib/elasticsearch/api/actions/indices/explain_data_lifecycle.rb +1 -1
  62. data/lib/elasticsearch/api/actions/indices/forcemerge.rb +1 -1
  63. data/lib/elasticsearch/api/actions/indices/get_data_stream_mappings.rb +75 -0
  64. data/lib/elasticsearch/api/actions/indices/get_data_stream_options.rb +1 -1
  65. data/lib/elasticsearch/api/actions/indices/put_data_lifecycle.rb +1 -0
  66. data/lib/elasticsearch/api/actions/indices/put_data_stream_mappings.rb +84 -0
  67. data/lib/elasticsearch/api/actions/indices/put_data_stream_options.rb +2 -1
  68. data/lib/elasticsearch/api/actions/indices/put_index_template.rb +1 -1
  69. data/lib/elasticsearch/api/actions/indices/put_mapping.rb +1 -1
  70. data/lib/elasticsearch/api/actions/indices/put_template.rb +1 -1
  71. data/lib/elasticsearch/api/actions/indices/refresh.rb +1 -0
  72. data/lib/elasticsearch/api/actions/indices/resolve_index.rb +9 -0
  73. data/lib/elasticsearch/api/actions/indices/rollover.rb +1 -1
  74. data/lib/elasticsearch/api/actions/indices/shrink.rb +1 -0
  75. data/lib/elasticsearch/api/actions/indices/simulate_index_template.rb +2 -1
  76. data/lib/elasticsearch/api/actions/indices/simulate_template.rb +1 -1
  77. data/lib/elasticsearch/api/actions/indices/split.rb +1 -0
  78. data/lib/elasticsearch/api/actions/indices/stats.rb +1 -1
  79. data/lib/elasticsearch/api/actions/indices/validate_query.rb +1 -1
  80. data/lib/elasticsearch/api/actions/inference/completion.rb +1 -0
  81. data/lib/elasticsearch/api/actions/inference/inference.rb +1 -0
  82. data/lib/elasticsearch/api/actions/inference/put.rb +7 -5
  83. data/lib/elasticsearch/api/actions/inference/put_ai21.rb +79 -0
  84. data/lib/elasticsearch/api/actions/inference/put_alibabacloud.rb +1 -0
  85. data/lib/elasticsearch/api/actions/inference/put_amazonbedrock.rb +1 -0
  86. data/lib/elasticsearch/api/actions/inference/put_amazonsagemaker.rb +1 -0
  87. data/lib/elasticsearch/api/actions/inference/put_anthropic.rb +1 -0
  88. data/lib/elasticsearch/api/actions/inference/put_azureaistudio.rb +1 -0
  89. data/lib/elasticsearch/api/actions/inference/put_azureopenai.rb +1 -0
  90. data/lib/elasticsearch/api/actions/inference/put_cohere.rb +1 -0
  91. data/lib/elasticsearch/api/actions/inference/put_contextualai.rb +84 -0
  92. data/lib/elasticsearch/api/actions/inference/put_custom.rb +1 -0
  93. data/lib/elasticsearch/api/actions/inference/put_deepseek.rb +1 -0
  94. data/lib/elasticsearch/api/actions/inference/put_elasticsearch.rb +1 -0
  95. data/lib/elasticsearch/api/actions/inference/put_elser.rb +1 -0
  96. data/lib/elasticsearch/api/actions/inference/put_googleaistudio.rb +1 -0
  97. data/lib/elasticsearch/api/actions/inference/put_googlevertexai.rb +1 -0
  98. data/lib/elasticsearch/api/actions/inference/put_hugging_face.rb +1 -0
  99. data/lib/elasticsearch/api/actions/inference/put_jinaai.rb +1 -0
  100. data/lib/elasticsearch/api/actions/inference/put_llama.rb +79 -0
  101. data/lib/elasticsearch/api/actions/inference/put_mistral.rb +1 -0
  102. data/lib/elasticsearch/api/actions/inference/put_openai.rb +1 -0
  103. data/lib/elasticsearch/api/actions/inference/put_voyageai.rb +1 -0
  104. data/lib/elasticsearch/api/actions/inference/put_watsonx.rb +1 -0
  105. data/lib/elasticsearch/api/actions/inference/rerank.rb +1 -0
  106. data/lib/elasticsearch/api/actions/inference/sparse_embedding.rb +1 -0
  107. data/lib/elasticsearch/api/actions/inference/stream_completion.rb +1 -0
  108. data/lib/elasticsearch/api/actions/inference/text_embedding.rb +1 -0
  109. data/lib/elasticsearch/api/actions/license/get.rb +3 -1
  110. data/lib/elasticsearch/api/actions/logstash/put_pipeline.rb +2 -1
  111. data/lib/elasticsearch/api/actions/machine_learning/get_overall_buckets.rb +1 -1
  112. data/lib/elasticsearch/api/actions/msearch.rb +8 -3
  113. data/lib/elasticsearch/api/actions/msearch_template.rb +9 -3
  114. data/lib/elasticsearch/api/actions/nodes/stats.rb +1 -1
  115. data/lib/elasticsearch/api/actions/open_point_in_time.rb +8 -0
  116. data/lib/elasticsearch/api/actions/project/tags.rb +65 -0
  117. data/lib/elasticsearch/api/actions/query_rules/list_rulesets.rb +1 -1
  118. data/lib/elasticsearch/api/actions/reindex.rb +6 -1
  119. data/lib/elasticsearch/api/actions/render_search_template.rb +3 -6
  120. data/lib/elasticsearch/api/actions/scripts_painless_execute.rb +3 -6
  121. data/lib/elasticsearch/api/actions/search.rb +11 -2
  122. data/lib/elasticsearch/api/actions/search_mvt.rb +9 -1
  123. data/lib/elasticsearch/api/actions/search_template.rb +8 -0
  124. data/lib/elasticsearch/api/actions/searchable_snapshots/stats.rb +1 -1
  125. data/lib/elasticsearch/api/actions/security/get_settings.rb +1 -1
  126. data/lib/elasticsearch/api/actions/security/get_stats.rb +62 -0
  127. data/lib/elasticsearch/api/actions/security/update_settings.rb +1 -1
  128. data/lib/elasticsearch/api/actions/simulate/ingest.rb +4 -0
  129. data/lib/elasticsearch/api/actions/snapshot/get_repository.rb +1 -1
  130. data/lib/elasticsearch/api/actions/snapshot/repository_analyze.rb +17 -10
  131. data/lib/elasticsearch/api/actions/snapshot/status.rb +5 -0
  132. data/lib/elasticsearch/api/actions/snapshot_lifecycle_management/put_lifecycle.rb +1 -0
  133. data/lib/elasticsearch/api/actions/sql/get_async.rb +1 -1
  134. data/lib/elasticsearch/api/actions/sql/query.rb +8 -0
  135. data/lib/elasticsearch/api/actions/streams/logs_disable.rb +23 -3
  136. data/lib/elasticsearch/api/actions/streams/logs_enable.rb +26 -3
  137. data/lib/elasticsearch/api/actions/streams/status.rb +20 -3
  138. data/lib/elasticsearch/api/actions/tasks/list.rb +1 -1
  139. data/lib/elasticsearch/api/actions/terms_enum.rb +2 -6
  140. data/lib/elasticsearch/api/actions/text_structure/find_structure.rb +1 -3
  141. data/lib/elasticsearch/api/actions/transform/get_node_stats.rb +1 -1
  142. data/lib/elasticsearch/api/actions/transform/set_upgrade_mode.rb +77 -0
  143. data/lib/elasticsearch/api/actions/update_by_query.rb +2 -2
  144. data/lib/elasticsearch/api/actions/watcher/get_settings.rb +1 -1
  145. data/lib/elasticsearch/api/actions/watcher/put_watch.rb +1 -0
  146. data/lib/elasticsearch/api/actions/watcher/update_settings.rb +1 -1
  147. data/lib/elasticsearch/api/utils.rb +15 -0
  148. data/lib/elasticsearch/api/version.rb +2 -2
  149. data/lib/elasticsearch/api.rb +1 -0
  150. metadata +10 -2
@@ -38,6 +38,14 @@ module Elasticsearch
38
38
  # @option arguments [String] :preference The node or shard the operation should be performed on.
39
39
  # It is random by default.
40
40
  # @option arguments [Boolean] :profile If `true`, the query execution is profiled.
41
+ # @option arguments [String] :project_routing Specifies a subset of projects to target for the search using project
42
+ # metadata tags in a subset of Lucene query syntax.
43
+ # Allowed Lucene queries: the _alias tag and a single value (possibly wildcarded).
44
+ # Examples:
45
+ # _alias:my-project
46
+ # _alias:_origin
47
+ # _alias:*pr*
48
+ # Supported in serverless only.
41
49
  # @option arguments [String] :routing A custom value used to route operations to a specific shard.
42
50
  # @option arguments [Time] :scroll Specifies how long a consistent view of the index
43
51
  # should be maintained for scrolled search.
@@ -25,7 +25,7 @@ module Elasticsearch
25
25
  # Get searchable snapshot statistics.
26
26
  #
27
27
  # @option arguments [String, Array] :index A comma-separated list of data streams and indices to retrieve statistics for.
28
- # @option arguments [String] :level Return stats aggregated at cluster, index or shard level
28
+ # @option arguments [String] :level Return stats aggregated at cluster, index or shard level Server default: indices.
29
29
  # @option arguments [Boolean] :error_trace When set to `true` Elasticsearch will include the full stack trace of errors
30
30
  # when they occur.
31
31
  # @option arguments [String, Array<String>] :filter_path Comma-separated list of filters in dot notation which reduce the response
@@ -30,7 +30,7 @@ module Elasticsearch
30
30
  # * `index.number_of_replicas`
31
31
  #
32
32
  # @option arguments [Time] :master_timeout Period to wait for a connection to the master node.
33
- # If no response is received before the timeout expires, the request fails and returns an error.
33
+ # If no response is received before the timeout expires, the request fails and returns an error. Server default: 30s.
34
34
  # @option arguments [Boolean] :error_trace When set to `true` Elasticsearch will include the full stack trace of errors
35
35
  # when they occur.
36
36
  # @option arguments [String, Array<String>] :filter_path Comma-separated list of filters in dot notation which reduce the response
@@ -0,0 +1,62 @@
1
+ # Licensed to Elasticsearch B.V. under one or more contributor
2
+ # license agreements. See the NOTICE file distributed with
3
+ # this work for additional information regarding copyright
4
+ # ownership. Elasticsearch B.V. licenses this file to you under
5
+ # the Apache License, Version 2.0 (the "License"); you may
6
+ # not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing,
12
+ # software distributed under the License is distributed on an
13
+ # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
+ # KIND, either express or implied. See the License for the
15
+ # specific language governing permissions and limitations
16
+ # under the License.
17
+ #
18
+ # This code was automatically generated from the Elasticsearch Specification
19
+ # See https://github.com/elastic/elasticsearch-specification
20
+ # See Elasticsearch::ES_SPECIFICATION_COMMIT for commit hash.
21
+ module Elasticsearch
22
+ module API
23
+ module Security
24
+ module Actions
25
+ # Get security stats.
26
+ # Gather security usage statistics from all node(s) within the cluster.
27
+ #
28
+ # @option arguments [Boolean] :error_trace When set to `true` Elasticsearch will include the full stack trace of errors
29
+ # when they occur.
30
+ # @option arguments [String, Array<String>] :filter_path Comma-separated list of filters in dot notation which reduce the response
31
+ # returned by Elasticsearch.
32
+ # @option arguments [Boolean] :human When set to `true` will return statistics in a format suitable for humans.
33
+ # For example `"exists_time": "1h"` for humans and
34
+ # `"exists_time_in_millis": 3600000` for computers. When disabled the human
35
+ # readable values will be omitted. This makes sense for responses being consumed
36
+ # only by machines.
37
+ # @option arguments [Boolean] :pretty If set to `true` the returned JSON will be "pretty-formatted". Only use
38
+ # this option for debugging only.
39
+ # @option arguments [Hash] :headers Custom HTTP headers
40
+ #
41
+ # @see https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-security-get-stats
42
+ #
43
+ def get_stats(arguments = {})
44
+ request_opts = { endpoint: arguments[:endpoint] || 'security.get_stats' }
45
+
46
+ arguments = arguments.clone
47
+ headers = arguments.delete(:headers) || {}
48
+
49
+ body = nil
50
+
51
+ method = Elasticsearch::API::HTTP_GET
52
+ path = '_security/stats'
53
+ params = Utils.process_params(arguments)
54
+
55
+ Elasticsearch::API::Response.new(
56
+ perform_request(method, path, params, body, headers, request_opts)
57
+ )
58
+ end
59
+ end
60
+ end
61
+ end
62
+ end
@@ -29,7 +29,7 @@ module Elasticsearch
29
29
  # This API does not yet support configuring the settings for indices before they are in use.
30
30
  #
31
31
  # @option arguments [Time] :master_timeout The period to wait for a connection to the master node.
32
- # If no response is received before the timeout expires, the request fails and returns an error.
32
+ # If no response is received before the timeout expires, the request fails and returns an error. Server default: 30s.
33
33
  # @option arguments [Time] :timeout The period to wait for a response.
34
34
  # If no response is received before the timeout expires, the request fails and returns an error.
35
35
  # @option arguments [Boolean] :error_trace When set to `true` Elasticsearch will include the full stack trace of errors
@@ -45,6 +45,10 @@ module Elasticsearch
45
45
  # If you specify this parameter in the request path, it is used for any documents that do not explicitly specify an index argument.
46
46
  # @option arguments [String] :pipeline The pipeline to use as the default pipeline.
47
47
  # This value can be used to override the default pipeline of the index.
48
+ # @option arguments [String] :merge_type The mapping merge type if mapping overrides are being provided in mapping_addition.
49
+ # The allowed values are one of index or template.
50
+ # The index option merges mappings the way they would be merged into an existing index.
51
+ # The template option merges mappings the way they would be merged into a template. Server default: index.
48
52
  # @option arguments [Boolean] :error_trace When set to `true` Elasticsearch will include the full stack trace of errors
49
53
  # when they occur.
50
54
  # @option arguments [String, Array<String>] :filter_path Comma-separated list of filters in dot notation which reduce the response
@@ -30,7 +30,7 @@ module Elasticsearch
30
30
  # If `false`, the request gets information from the master node.
31
31
  # @option arguments [Time] :master_timeout The period to wait for the master node.
32
32
  # If the master node is not available before the timeout expires, the request fails and returns an error.
33
- # To indicate that the request should never timeout, set it to `-1`. Server default: to 30s.
33
+ # To indicate that the request should never timeout, set it to `-1`. Server default: 30s.
34
34
  # @option arguments [Boolean] :error_trace When set to `true` Elasticsearch will include the full stack trace of errors
35
35
  # when they occur.
36
36
  # @option arguments [String, Array<String>] :filter_path Comma-separated list of filters in dot notation which reduce the response
@@ -108,26 +108,33 @@ module Elasticsearch
108
108
  #
109
109
  # @option arguments [String] :repository The name of the repository. (*Required*)
110
110
  # @option arguments [Integer] :blob_count The total number of blobs to write to the repository during the test.
111
- # For realistic experiments, you should set it to at least `2000`. Server default: 100.
112
- # @option arguments [Integer] :concurrency The number of operations to run concurrently during the test. Server default: 10.
111
+ # For realistic experiments, set this parameter to at least `2000`. Server default: 100.
112
+ # @option arguments [Integer] :concurrency The number of operations to run concurrently during the test.
113
+ # For realistic experiments, leave this parameter unset. Server default: 10.
113
114
  # @option arguments [Boolean] :detailed Indicates whether to return detailed results, including timing information for every operation performed during the analysis.
114
115
  # If false, it returns only a summary of the analysis.
115
116
  # @option arguments [Integer] :early_read_node_count The number of nodes on which to perform an early read operation while writing each blob.
116
- # Early read operations are only rarely performed. Server default: 2.
117
+ # Early read operations are only rarely performed.
118
+ # For realistic experiments, leave this parameter unset. Server default: 2.
117
119
  # @option arguments [Integer, String] :max_blob_size The maximum size of a blob to be written during the test.
118
- # For realistic experiments, you should set it to at least `2gb`. Server default: 10mb.
120
+ # For realistic experiments, set this parameter to at least `2gb`. Server default: 10mb.
119
121
  # @option arguments [Integer, String] :max_total_data_size An upper limit on the total size of all the blobs written during the test.
120
- # For realistic experiments, you should set it to at least `1tb`. Server default: 1gb.
121
- # @option arguments [Float] :rare_action_probability The probability of performing a rare action such as an early read, an overwrite, or an aborted write on each blob. Server default: 0.02.
122
- # @option arguments [Boolean] :rarely_abort_writes Indicates whether to rarely cancel writes before they complete. Server default: true.
123
- # @option arguments [Integer] :read_node_count The number of nodes on which to read a blob after writing. Server default: 10.
122
+ # For realistic experiments, set this parameter to at least `1tb`. Server default: 1gb.
123
+ # @option arguments [Float] :rare_action_probability The probability of performing a rare action such as an early read, an overwrite, or an aborted write on each blob.
124
+ # For realistic experiments, leave this parameter unset. Server default: 0.02.
125
+ # @option arguments [Boolean] :rarely_abort_writes Indicates whether to rarely cancel writes before they complete.
126
+ # For realistic experiments, leave this parameter unset. Server default: true.
127
+ # @option arguments [Integer] :read_node_count The number of nodes on which to read a blob after writing.
128
+ # For realistic experiments, leave this parameter unset. Server default: 10.
124
129
  # @option arguments [Integer] :register_operation_count The minimum number of linearizable register operations to perform in total.
125
- # For realistic experiments, you should set it to at least `100`. Server default: 10.
130
+ # For realistic experiments, set this parameter to at least `100`. Server default: 10.
126
131
  # @option arguments [Integer] :seed The seed for the pseudo-random number generator used to generate the list of operations performed during the test.
127
132
  # To repeat the same set of operations in multiple experiments, use the same seed in each experiment.
128
133
  # Note that the operations are performed concurrently so might not always happen in the same order on each run.
134
+ # For realistic experiments, leave this parameter unset.
129
135
  # @option arguments [Time] :timeout The period of time to wait for the test to complete.
130
- # If no response is received before the timeout expires, the test is cancelled and returns an error. Server default: 30s.
136
+ # If no response is received before the timeout expires, the test is cancelled and returns an error.
137
+ # For realistic experiments, set this parameter sufficiently long to allow the test to complete. Server default: 30s.
131
138
  # @option arguments [Boolean] :error_trace When set to `true` Elasticsearch will include the full stack trace of errors
132
139
  # when they occur.
133
140
  # @option arguments [String, Array<String>] :filter_path Comma-separated list of filters in dot notation which reduce the response
@@ -29,6 +29,11 @@ module Elasticsearch
29
29
  # If you omit the `<snapshot>` request path parameter, the request retrieves information only for currently running snapshots.
30
30
  # This usage is preferred.
31
31
  # If needed, you can specify `<repository>` and `<snapshot>` to retrieve information for specific snapshots, even if they're not currently running.
32
+ # Note that the stats will not be available for any shard snapshots in an ongoing snapshot completed by a node that (even momentarily) left the cluster.
33
+ # Loading the stats from the repository is an expensive operation (see the WARNING below).
34
+ # Therefore the stats values for such shards will be -1 even though the "stage" value will be "DONE", in order to minimize latency.
35
+ # A "description" field will be present for a shard snapshot completed by a departed node explaining why the shard snapshot's stats results are invalid.
36
+ # Consequently, the total stats for the index will be less than expected due to the missing values from these shards.
32
37
  # WARNING: Using the API to return the status of any snapshots other than currently running snapshots can be expensive.
33
38
  # The API requires a read from the repository for each shard in each snapshot.
34
39
  # For example, if you have 100 snapshots with 1,000 shards each, an API request that includes all snapshots will require 100,000 reads (100 snapshots x 1,000 shards).
@@ -58,6 +58,7 @@ module Elasticsearch
58
58
  end
59
59
  request_opts[:defined_params] = defined_params unless defined_params.empty?
60
60
 
61
+ raise ArgumentError, "Required argument 'body' missing" unless arguments[:body]
61
62
  raise ArgumentError, "Required argument 'policy_id' missing" unless arguments[:policy_id]
62
63
 
63
64
  arguments = arguments.clone
@@ -33,7 +33,7 @@ module Elasticsearch
33
33
  # You must specify a format using this parameter or the `Accept` HTTP header.
34
34
  # If you specify both, the API uses this parameter.
35
35
  # @option arguments [Time] :keep_alive The retention period for the search and its results.
36
- # It defaults to the `keep_alive` period for the original SQL search.
36
+ # It defaults to the `keep_alive` period for the original SQL search. Server default: 5d.
37
37
  # @option arguments [Time] :wait_for_completion_timeout The period to wait for complete results.
38
38
  # It defaults to no timeout, meaning the request waits for complete search results.
39
39
  # @option arguments [Boolean] :error_trace When set to `true` Elasticsearch will include the full stack trace of errors
@@ -28,6 +28,14 @@ module Elasticsearch
28
28
  # @option arguments [String] :format The format for the response.
29
29
  # You can also specify a format using the `Accept` HTTP header.
30
30
  # If you specify both this parameter and the `Accept` HTTP header, this parameter takes precedence.
31
+ # @option arguments [String] :project_routing Specifies a subset of projects to target for the search using project
32
+ # metadata tags in a subset of Lucene query syntax.
33
+ # Allowed Lucene queries: the _alias tag and a single value (possibly wildcarded).
34
+ # Examples:
35
+ # _alias:my-project
36
+ # _alias:_origin
37
+ # _alias:*pr*
38
+ # Supported in serverless only.
31
39
  # @option arguments [Boolean] :error_trace When set to `true` Elasticsearch will include the full stack trace of errors
32
40
  # when they occur.
33
41
  # @option arguments [String, Array<String>] :filter_path Comma-separated list of filters in dot notation which reduce the response
@@ -22,11 +22,31 @@ module Elasticsearch
22
22
  module API
23
23
  module Streams
24
24
  module Actions
25
- # Disable the Logs Streams feature for this cluster
25
+ # Disable logs stream.
26
+ # Turn off the logs stream feature for this cluster.
27
+ # This functionality is Experimental and may be changed or removed
28
+ # completely in a future release. Elastic will take a best effort approach
29
+ # to fix any issues, but experimental features are not subject to the
30
+ # support SLA of official GA features.
26
31
  #
32
+ # @option arguments [Time] :master_timeout The period to wait for a connection to the master node.
33
+ # If no response is received before the timeout expires, the request fails and returns an error. Server default: 30s.
34
+ # @option arguments [Time] :timeout The period to wait for a response.
35
+ # If no response is received before the timeout expires, the request fails and returns an error. Server default: 30s.
36
+ # @option arguments [Boolean] :error_trace When set to `true` Elasticsearch will include the full stack trace of errors
37
+ # when they occur.
38
+ # @option arguments [String, Array<String>] :filter_path Comma-separated list of filters in dot notation which reduce the response
39
+ # returned by Elasticsearch.
40
+ # @option arguments [Boolean] :human When set to `true` will return statistics in a format suitable for humans.
41
+ # For example `"exists_time": "1h"` for humans and
42
+ # `"exists_time_in_millis": 3600000` for computers. When disabled the human
43
+ # readable values will be omitted. This makes sense for responses being consumed
44
+ # only by machines.
45
+ # @option arguments [Boolean] :pretty If set to `true` the returned JSON will be "pretty-formatted". Only use
46
+ # this option for debugging only.
27
47
  # @option arguments [Hash] :headers Custom HTTP headers
28
48
  #
29
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/master/streams-logs-disable.html
49
+ # @see https://www.elastic.co/docs/api/doc/elasticsearch#TODO
30
50
  #
31
51
  def logs_disable(arguments = {})
32
52
  request_opts = { endpoint: arguments[:endpoint] || 'streams.logs_disable' }
@@ -38,7 +58,7 @@ module Elasticsearch
38
58
 
39
59
  method = Elasticsearch::API::HTTP_POST
40
60
  path = '_streams/logs/_disable'
41
- params = {}
61
+ params = Utils.process_params(arguments)
42
62
 
43
63
  Elasticsearch::API::Response.new(
44
64
  perform_request(method, path, params, body, headers, request_opts)
@@ -22,11 +22,34 @@ module Elasticsearch
22
22
  module API
23
23
  module Streams
24
24
  module Actions
25
- # Enable the Logs Streams feature for this cluster
25
+ # Enable logs stream.
26
+ # Turn on the logs stream feature for this cluster.
27
+ # NOTE: To protect existing data, this feature can be turned on only if the
28
+ # cluster does not have existing indices or data streams that match the pattern `logs|logs.*`.
29
+ # If those indices or data streams exist, a `409 - Conflict` response and error is returned.
30
+ # This functionality is Experimental and may be changed or removed
31
+ # completely in a future release. Elastic will take a best effort approach
32
+ # to fix any issues, but experimental features are not subject to the
33
+ # support SLA of official GA features.
26
34
  #
35
+ # @option arguments [Time] :master_timeout The period to wait for a connection to the master node.
36
+ # If no response is received before the timeout expires, the request fails and returns an error. Server default: 30s.
37
+ # @option arguments [Time] :timeout The period to wait for a response.
38
+ # If no response is received before the timeout expires, the request fails and returns an error. Server default: 30s.
39
+ # @option arguments [Boolean] :error_trace When set to `true` Elasticsearch will include the full stack trace of errors
40
+ # when they occur.
41
+ # @option arguments [String, Array<String>] :filter_path Comma-separated list of filters in dot notation which reduce the response
42
+ # returned by Elasticsearch.
43
+ # @option arguments [Boolean] :human When set to `true` will return statistics in a format suitable for humans.
44
+ # For example `"exists_time": "1h"` for humans and
45
+ # `"exists_time_in_millis": 3600000` for computers. When disabled the human
46
+ # readable values will be omitted. This makes sense for responses being consumed
47
+ # only by machines.
48
+ # @option arguments [Boolean] :pretty If set to `true` the returned JSON will be "pretty-formatted". Only use
49
+ # this option for debugging only.
27
50
  # @option arguments [Hash] :headers Custom HTTP headers
28
51
  #
29
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/master/streams-logs-enable.html
52
+ # @see https://www.elastic.co/docs/api/doc/elasticsearch#TODO
30
53
  #
31
54
  def logs_enable(arguments = {})
32
55
  request_opts = { endpoint: arguments[:endpoint] || 'streams.logs_enable' }
@@ -38,7 +61,7 @@ module Elasticsearch
38
61
 
39
62
  method = Elasticsearch::API::HTTP_POST
40
63
  path = '_streams/logs/_enable'
41
- params = {}
64
+ params = Utils.process_params(arguments)
42
65
 
43
66
  Elasticsearch::API::Response.new(
44
67
  perform_request(method, path, params, body, headers, request_opts)
@@ -22,11 +22,28 @@ module Elasticsearch
22
22
  module API
23
23
  module Streams
24
24
  module Actions
25
- # Return the current status of the streams feature for each streams type
25
+ # Get the status of streams.
26
+ # Get the current status for all types of streams.
27
+ # This functionality is Experimental and may be changed or removed
28
+ # completely in a future release. Elastic will take a best effort approach
29
+ # to fix any issues, but experimental features are not subject to the
30
+ # support SLA of official GA features.
26
31
  #
32
+ # @option arguments [Time] :master_timeout Period to wait for a connection to the master node. If no response is received before the timeout expires, the request fails and returns an error. Server default: 30s.
33
+ # @option arguments [Boolean] :error_trace When set to `true` Elasticsearch will include the full stack trace of errors
34
+ # when they occur.
35
+ # @option arguments [String, Array<String>] :filter_path Comma-separated list of filters in dot notation which reduce the response
36
+ # returned by Elasticsearch.
37
+ # @option arguments [Boolean] :human When set to `true` will return statistics in a format suitable for humans.
38
+ # For example `"exists_time": "1h"` for humans and
39
+ # `"exists_time_in_millis": 3600000` for computers. When disabled the human
40
+ # readable values will be omitted. This makes sense for responses being consumed
41
+ # only by machines.
42
+ # @option arguments [Boolean] :pretty If set to `true` the returned JSON will be "pretty-formatted". Only use
43
+ # this option for debugging only.
27
44
  # @option arguments [Hash] :headers Custom HTTP headers
28
45
  #
29
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/master/streams-status.html
46
+ # @see https://www.elastic.co/docs/api/doc/elasticsearch#TODO
30
47
  #
31
48
  def status(arguments = {})
32
49
  request_opts = { endpoint: arguments[:endpoint] || 'streams.status' }
@@ -38,7 +55,7 @@ module Elasticsearch
38
55
 
39
56
  method = Elasticsearch::API::HTTP_GET
40
57
  path = '_streams/status'
41
- params = {}
58
+ params = Utils.process_params(arguments)
42
59
 
43
60
  Elasticsearch::API::Response.new(
44
61
  perform_request(method, path, params, body, headers, request_opts)
@@ -88,7 +88,7 @@ module Elasticsearch
88
88
  # @option arguments [Boolean] :detailed If `true`, the response includes detailed information about the running tasks.
89
89
  # This information is useful to distinguish tasks from each other but is more costly to run.
90
90
  # @option arguments [String] :group_by A key that is used to group tasks in the response.
91
- # The task lists can be grouped either by nodes or by parent tasks.
91
+ # The task lists can be grouped either by nodes or by parent tasks. Server default: nodes.
92
92
  # @option arguments [String, Array] :nodes A comma-separated list of node IDs or names that is used to limit the returned information.
93
93
  # @option arguments [String] :parent_task_id A parent task identifier that is used to limit returned information.
94
94
  # To return all tasks, omit this parameter or use a value of `-1`.
@@ -52,6 +52,7 @@ module Elasticsearch
52
52
  end
53
53
  request_opts[:defined_params] = defined_params unless defined_params.empty?
54
54
 
55
+ raise ArgumentError, "Required argument 'body' missing" unless arguments[:body]
55
56
  raise ArgumentError, "Required argument 'index' missing" unless arguments[:index]
56
57
 
57
58
  arguments = arguments.clone
@@ -61,12 +62,7 @@ module Elasticsearch
61
62
 
62
63
  _index = arguments.delete(:index)
63
64
 
64
- method = if body
65
- Elasticsearch::API::HTTP_POST
66
- else
67
- Elasticsearch::API::HTTP_GET
68
- end
69
-
65
+ method = Elasticsearch::API::HTTP_POST
70
66
  path = "#{Utils.listify(_index)}/_terms_enum"
71
67
  params = Utils.process_params(arguments)
72
68
 
@@ -136,9 +136,7 @@ module Elasticsearch
136
136
  body
137
137
  end
138
138
 
139
- headers.merge!({
140
- 'Content-Type' => 'application/vnd.elasticsearch+x-ndjson; compatible-with=9'
141
- })
139
+ Utils.update_ndjson_headers!(headers, client.transport.options.dig(:transport_options, :headers))
142
140
  Elasticsearch::API::Response.new(
143
141
  perform_request(method, path, params, payload, headers, request_opts)
144
142
  )
@@ -22,7 +22,7 @@ module Elasticsearch
22
22
  module API
23
23
  module Transform
24
24
  module Actions
25
- # Retrieves transform usage information for transform nodes.
25
+ # Retrieves transform usage information for transform nodes
26
26
  #
27
27
  # @option arguments [Hash] :headers Custom HTTP headers
28
28
  #
@@ -0,0 +1,77 @@
1
+ # Licensed to Elasticsearch B.V. under one or more contributor
2
+ # license agreements. See the NOTICE file distributed with
3
+ # this work for additional information regarding copyright
4
+ # ownership. Elasticsearch B.V. licenses this file to you under
5
+ # the Apache License, Version 2.0 (the "License"); you may
6
+ # not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing,
12
+ # software distributed under the License is distributed on an
13
+ # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
+ # KIND, either express or implied. See the License for the
15
+ # specific language governing permissions and limitations
16
+ # under the License.
17
+ #
18
+ # This code was automatically generated from the Elasticsearch Specification
19
+ # See https://github.com/elastic/elasticsearch-specification
20
+ # See Elasticsearch::ES_SPECIFICATION_COMMIT for commit hash.
21
+ module Elasticsearch
22
+ module API
23
+ module Transform
24
+ module Actions
25
+ # Set upgrade_mode for transform indices.
26
+ # Sets a cluster wide upgrade_mode setting that prepares transform
27
+ # indices for an upgrade.
28
+ # When upgrading your cluster, in some circumstances you must restart your
29
+ # nodes and reindex your transform indices. In those circumstances,
30
+ # there must be no transforms running. You can close the transforms,
31
+ # do the upgrade, then open all the transforms again. Alternatively,
32
+ # you can use this API to temporarily halt tasks associated with the transforms
33
+ # and prevent new transforms from opening. You can also use this API
34
+ # during upgrades that do not require you to reindex your transform
35
+ # indices, though stopping transforms is not a requirement in that case.
36
+ # You can see the current value for the upgrade_mode setting by using the get
37
+ # transform info API.
38
+ #
39
+ # @option arguments [Boolean] :enabled When `true`, it enables `upgrade_mode` which temporarily halts all
40
+ # transform tasks and prohibits new transform tasks from
41
+ # starting.
42
+ # @option arguments [Time] :timeout The time to wait for the request to be completed. Server default: 30s.
43
+ # @option arguments [Boolean] :error_trace When set to `true` Elasticsearch will include the full stack trace of errors
44
+ # when they occur.
45
+ # @option arguments [String, Array<String>] :filter_path Comma-separated list of filters in dot notation which reduce the response
46
+ # returned by Elasticsearch.
47
+ # @option arguments [Boolean] :human When set to `true` will return statistics in a format suitable for humans.
48
+ # For example `"exists_time": "1h"` for humans and
49
+ # `"exists_time_in_millis": 3600000` for computers. When disabled the human
50
+ # readable values will be omitted. This makes sense for responses being consumed
51
+ # only by machines.
52
+ # @option arguments [Boolean] :pretty If set to `true` the returned JSON will be "pretty-formatted". Only use
53
+ # this option for debugging only.
54
+ # @option arguments [Hash] :headers Custom HTTP headers
55
+ #
56
+ # @see https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-transform-set-upgrade-mode
57
+ #
58
+ def set_upgrade_mode(arguments = {})
59
+ request_opts = { endpoint: arguments[:endpoint] || 'transform.set_upgrade_mode' }
60
+
61
+ arguments = arguments.clone
62
+ headers = arguments.delete(:headers) || {}
63
+
64
+ body = nil
65
+
66
+ method = Elasticsearch::API::HTTP_POST
67
+ path = '_transform/set_upgrade_mode'
68
+ params = Utils.process_params(arguments)
69
+
70
+ Elasticsearch::API::Response.new(
71
+ perform_request(method, path, params, body, headers, request_opts)
72
+ )
73
+ end
74
+ end
75
+ end
76
+ end
77
+ end
@@ -103,8 +103,8 @@ module Elasticsearch
103
103
  # @option arguments [Boolean] :analyze_wildcard If `true`, wildcard and prefix queries are analyzed.
104
104
  # This parameter can be used only when the `q` query string parameter is specified.
105
105
  # @option arguments [String] :conflicts The preferred behavior when update by query hits version conflicts: `abort` or `proceed`. Server default: abort.
106
- # @option arguments [String] :default_operator The default operator for query string query: `AND` or `OR`.
107
- # This parameter can be used only when the `q` query string parameter is specified. Server default: OR.
106
+ # @option arguments [String] :default_operator The default operator for query string query: `and` or `or`.
107
+ # This parameter can be used only when the `q` query string parameter is specified. Server default: or.
108
108
  # @option arguments [String] :df The field to use as default where no field prefix is given in the query string.
109
109
  # This parameter can be used only when the `q` query string parameter is specified.
110
110
  # @option arguments [String, Array<String>] :expand_wildcards The type of index that wildcard patterns can match.
@@ -27,7 +27,7 @@ module Elasticsearch
27
27
  # Only a subset of settings are shown, for example `index.auto_expand_replicas` and `index.number_of_replicas`.
28
28
  #
29
29
  # @option arguments [Time] :master_timeout The period to wait for a connection to the master node.
30
- # If no response is received before the timeout expires, the request fails and returns an error.
30
+ # If no response is received before the timeout expires, the request fails and returns an error. Server default: 30s.
31
31
  # @option arguments [Boolean] :error_trace When set to `true` Elasticsearch will include the full stack trace of errors
32
32
  # when they occur.
33
33
  # @option arguments [String, Array<String>] :filter_path Comma-separated list of filters in dot notation which reduce the response
@@ -62,6 +62,7 @@ module Elasticsearch
62
62
  end
63
63
  request_opts[:defined_params] = defined_params unless defined_params.empty?
64
64
 
65
+ raise ArgumentError, "Required argument 'body' missing" unless arguments[:body]
65
66
  raise ArgumentError, "Required argument 'id' missing" unless arguments[:id]
66
67
 
67
68
  arguments = arguments.clone
@@ -31,7 +31,7 @@ module Elasticsearch
31
31
  # Watcher shards must always be in the `data_content` tier.
32
32
  #
33
33
  # @option arguments [Time] :master_timeout The period to wait for a connection to the master node.
34
- # If no response is received before the timeout expires, the request fails and returns an error.
34
+ # If no response is received before the timeout expires, the request fails and returns an error. Server default: 30s.
35
35
  # @option arguments [Time] :timeout The period to wait for a response.
36
36
  # If no response is received before the timeout expires, the request fails and returns an error.
37
37
  # @option arguments [Boolean] :error_trace When set to `true` Elasticsearch will include the full stack trace of errors
@@ -177,6 +177,21 @@ module Elasticsearch
177
177
  end
178
178
  end
179
179
 
180
+ # Updates ndjson headers for msearch, bulk, and others
181
+ #
182
+ def update_ndjson_headers!(headers, client_headers)
183
+ current_content = client_headers.keys.find { |c| c.match?(/content-?_?type/i) } || 'content-type'
184
+ current_accept = client_headers.keys.find { |c| c.match?(/accept/i) } || 'accept'
185
+ version = client_headers[current_content].match(/compatible-with=([0-9]+)/)[1] || 9
186
+
187
+ headers.merge!(
188
+ {
189
+ current_content => "application/vnd.elasticsearch+x-ndjson; compatible-with=#{version}",
190
+ current_accept => "application/vnd.elasticsearch+x-ndjson; compatible-with=#{version}"
191
+ }
192
+ )
193
+ end
194
+
180
195
  extend self
181
196
  end
182
197
  end
@@ -17,7 +17,7 @@
17
17
 
18
18
  module Elasticsearch
19
19
  module API
20
- VERSION = '9.1.1'.freeze
21
- ES_SPECIFICATION_COMMIT = '569f8b3768762075a47e5fa16a694b41cbc90a34'.freeze
20
+ VERSION = '9.2.0'.freeze
21
+ ES_SPECIFICATION_COMMIT = 'd520d9e8cf14cad487de5e0654007686c395b494'.freeze
22
22
  end
23
23
  end
@@ -71,6 +71,7 @@ module Elasticsearch
71
71
  :migration,
72
72
  :machine_learning,
73
73
  :nodes,
74
+ :project,
74
75
  :query_rules,
75
76
  :search_application,
76
77
  :searchable_snapshots,