elasticsearch-api 9.2.1 → 9.3.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 (97) hide show
  1. checksums.yaml +4 -4
  2. data/elasticsearch-api.gemspec +1 -0
  3. data/lib/elasticsearch/api/actions/async_search/submit.rb +1 -9
  4. data/lib/elasticsearch/api/actions/bulk.rb +1 -1
  5. data/lib/elasticsearch/api/actions/cat/circuit_breaker.rb +96 -0
  6. data/lib/elasticsearch/api/actions/cat/count.rb +8 -10
  7. data/lib/elasticsearch/api/actions/cat/indices.rb +0 -2
  8. data/lib/elasticsearch/api/actions/cluster/reroute.rb +1 -1
  9. data/lib/elasticsearch/api/actions/connector/sync_job_claim.rb +1 -0
  10. data/lib/elasticsearch/api/actions/connector/sync_job_error.rb +1 -0
  11. data/lib/elasticsearch/api/actions/connector/sync_job_update_stats.rb +1 -0
  12. data/lib/elasticsearch/api/actions/count.rb +1 -9
  13. data/lib/elasticsearch/api/actions/create.rb +1 -1
  14. data/lib/elasticsearch/api/actions/delete.rb +1 -1
  15. data/lib/elasticsearch/api/actions/delete_by_query.rb +1 -1
  16. data/lib/elasticsearch/api/actions/eql/search.rb +0 -8
  17. data/lib/elasticsearch/api/actions/esql/delete_view.rb +75 -0
  18. data/lib/elasticsearch/api/actions/esql/get_view.rb +77 -0
  19. data/lib/elasticsearch/api/actions/esql/put_view.rb +76 -0
  20. data/lib/elasticsearch/api/actions/exists.rb +1 -1
  21. data/lib/elasticsearch/api/actions/exists_source.rb +1 -1
  22. data/lib/elasticsearch/api/actions/explain.rb +1 -1
  23. data/lib/elasticsearch/api/actions/field_caps.rb +1 -9
  24. data/lib/elasticsearch/api/actions/fleet/search.rb +1 -1
  25. data/lib/elasticsearch/api/actions/get.rb +1 -1
  26. data/lib/elasticsearch/api/actions/get_source.rb +1 -1
  27. data/lib/elasticsearch/api/actions/graph/explore.rb +1 -1
  28. data/lib/elasticsearch/api/actions/index.rb +1 -1
  29. data/lib/elasticsearch/api/actions/indices/add_block.rb +1 -1
  30. data/lib/elasticsearch/api/actions/indices/data_streams_stats.rb +1 -1
  31. data/lib/elasticsearch/api/actions/indices/delete_sample_configuration.rb +80 -0
  32. data/lib/elasticsearch/api/actions/indices/downsample.rb +5 -2
  33. data/lib/elasticsearch/api/actions/indices/get_all_sample_configuration.rb +68 -0
  34. data/lib/elasticsearch/api/actions/indices/get_sample.rb +74 -0
  35. data/lib/elasticsearch/api/actions/indices/get_sample_configuration.rb +78 -0
  36. data/lib/elasticsearch/api/actions/indices/get_sample_stats.rb +74 -0
  37. data/lib/elasticsearch/api/actions/indices/put_sample_configuration.rb +82 -0
  38. data/lib/elasticsearch/api/actions/indices/remove_block.rb +1 -1
  39. data/lib/elasticsearch/api/actions/indices/resolve_index.rb +8 -10
  40. data/lib/elasticsearch/api/actions/indices/shrink.rb +0 -1
  41. data/lib/elasticsearch/api/actions/inference/get.rb +2 -5
  42. data/lib/elasticsearch/api/actions/inference/put.rb +6 -3
  43. data/lib/elasticsearch/api/actions/inference/put_alibabacloud.rb +1 -0
  44. data/lib/elasticsearch/api/actions/inference/put_amazonbedrock.rb +1 -0
  45. data/lib/elasticsearch/api/actions/inference/put_amazonsagemaker.rb +1 -0
  46. data/lib/elasticsearch/api/actions/inference/put_anthropic.rb +1 -0
  47. data/lib/elasticsearch/api/actions/inference/put_azureaistudio.rb +1 -0
  48. data/lib/elasticsearch/api/actions/inference/put_azureopenai.rb +1 -0
  49. data/lib/elasticsearch/api/actions/inference/put_cohere.rb +1 -0
  50. data/lib/elasticsearch/api/actions/inference/put_contextualai.rb +1 -0
  51. data/lib/elasticsearch/api/actions/inference/put_custom.rb +1 -0
  52. data/lib/elasticsearch/api/actions/inference/put_deepseek.rb +1 -0
  53. data/lib/elasticsearch/api/actions/inference/put_elasticsearch.rb +1 -0
  54. data/lib/elasticsearch/api/actions/inference/put_googleaistudio.rb +1 -0
  55. data/lib/elasticsearch/api/actions/inference/put_googlevertexai.rb +1 -0
  56. data/lib/elasticsearch/api/actions/inference/put_groq.rb +79 -0
  57. data/lib/elasticsearch/api/actions/inference/put_hugging_face.rb +1 -0
  58. data/lib/elasticsearch/api/actions/inference/put_jinaai.rb +1 -0
  59. data/lib/elasticsearch/api/actions/inference/put_mistral.rb +1 -0
  60. data/lib/elasticsearch/api/actions/inference/put_nvidia.rb +84 -0
  61. data/lib/elasticsearch/api/actions/inference/put_openai.rb +1 -0
  62. data/lib/elasticsearch/api/actions/inference/put_openshift_ai.rb +84 -0
  63. data/lib/elasticsearch/api/actions/inference/put_voyageai.rb +1 -0
  64. data/lib/elasticsearch/api/actions/inference/put_watsonx.rb +1 -0
  65. data/lib/elasticsearch/api/actions/inference/stream_completion.rb +1 -1
  66. data/lib/elasticsearch/api/actions/machine_learning/stop_datafeed.rb +1 -0
  67. data/lib/elasticsearch/api/actions/mget.rb +1 -1
  68. data/lib/elasticsearch/api/actions/migration/deprecations.rb +3 -6
  69. data/lib/elasticsearch/api/actions/msearch.rb +1 -1
  70. data/lib/elasticsearch/api/actions/mtermvectors.rb +1 -1
  71. data/lib/elasticsearch/api/actions/nodes/clear_repositories_metering_archive.rb +1 -0
  72. data/lib/elasticsearch/api/actions/nodes/usage.rb +1 -1
  73. data/lib/elasticsearch/api/actions/open_point_in_time.rb +1 -9
  74. data/lib/elasticsearch/api/actions/project/tags.rb +1 -2
  75. data/lib/elasticsearch/api/actions/reindex.rb +2 -1
  76. data/lib/elasticsearch/api/actions/search.rb +1 -9
  77. data/lib/elasticsearch/api/actions/search_shards.rb +1 -1
  78. data/lib/elasticsearch/api/actions/search_template.rb +2 -2
  79. data/lib/elasticsearch/api/actions/searchable_snapshots/cache_stats.rb +1 -0
  80. data/lib/elasticsearch/api/actions/security/clear_cached_privileges.rb +1 -1
  81. data/lib/elasticsearch/api/actions/snapshot/delete.rb +1 -1
  82. data/lib/elasticsearch/api/actions/snapshot/get.rb +1 -1
  83. data/lib/elasticsearch/api/actions/sql/query.rb +0 -8
  84. data/lib/elasticsearch/api/actions/streams/logs_disable.rb +0 -3
  85. data/lib/elasticsearch/api/actions/streams/logs_enable.rb +0 -3
  86. data/lib/elasticsearch/api/actions/streams/status.rb +0 -3
  87. data/lib/elasticsearch/api/actions/synonyms/put_synonym.rb +1 -0
  88. data/lib/elasticsearch/api/actions/terms_enum.rb +1 -1
  89. data/lib/elasticsearch/api/actions/termvectors.rb +1 -1
  90. data/lib/elasticsearch/api/actions/text_structure/find_field_structure.rb +1 -1
  91. data/lib/elasticsearch/api/actions/text_structure/find_message_structure.rb +1 -1
  92. data/lib/elasticsearch/api/actions/text_structure/find_structure.rb +1 -1
  93. data/lib/elasticsearch/api/actions/update.rb +1 -1
  94. data/lib/elasticsearch/api/actions/update_by_query.rb +2 -2
  95. data/lib/elasticsearch/api/utils.rb +0 -4
  96. data/lib/elasticsearch/api/version.rb +2 -2
  97. metadata +28 -1
@@ -30,7 +30,7 @@ module Elasticsearch
30
30
  # You can exclude vertices that have already been returned.
31
31
  #
32
32
  # @option arguments [String, Array] :index Name of the index. (*Required*)
33
- # @option arguments [String] :routing Custom value used to route operations to a specific shard.
33
+ # @option arguments [String, Array<String>] :routing Custom value used to route operations to a specific shard.
34
34
  # @option arguments [Time] :timeout Specifies the period of time to wait for a response from each shard.
35
35
  # If no response is received before the timeout expires, the request fails and returns an error.
36
36
  # Defaults to no timeout.
@@ -129,7 +129,7 @@ module Elasticsearch
129
129
  # @option arguments [String] :refresh If `true`, Elasticsearch refreshes the affected shards to make this operation visible to search.
130
130
  # If `wait_for`, it waits for a refresh to make this operation visible to search.
131
131
  # If `false`, it does nothing with refreshes. Server default: false.
132
- # @option arguments [String] :routing A custom value that is used to route operations to a specific shard.
132
+ # @option arguments [String, Array<String>] :routing A custom value that is used to route operations to a specific shard.
133
133
  # @option arguments [Time] :timeout The period the request waits for the following operations: automatic index creation, dynamic mapping updates, waiting for active shards.This parameter is useful for situations where the primary shard assigned to perform the operation might not be available when the operation runs.
134
134
  # Some reasons for this might be that the primary shard is currently recovering from a gateway or undergoing relocation.
135
135
  # By default, the operation will wait on the primary shard to become available for at least 1 minute before failing and responding with an error.
@@ -26,7 +26,7 @@ module Elasticsearch
26
26
  # Add an index block to an index.
27
27
  # Index blocks limit the operations allowed on an index by blocking specific operation types.
28
28
  #
29
- # @option arguments [String] :index A comma-separated list or wildcard expression of index names used to limit the request.
29
+ # @option arguments [String, Array] :index A comma-separated list or wildcard expression of index names used to limit the request.
30
30
  # By default, you must explicitly name the indices you are adding blocks to.
31
31
  # To allow the adding of blocks to indices with `_all`, `*`, or other wildcard expressions, change the `action.destructive_requires_name` setting to `false`.
32
32
  # You can update this setting in the `elasticsearch.yml` file or by using the cluster update settings API. (*Required*)
@@ -25,7 +25,7 @@ module Elasticsearch
25
25
  # Get data stream stats.
26
26
  # Get statistics for one or more data streams.
27
27
  #
28
- # @option arguments [String] :name Comma-separated list of data streams used to limit the request.
28
+ # @option arguments [String, Array] :name Comma-separated list of data streams used to limit the request.
29
29
  # Wildcard expressions (`*`) are supported.
30
30
  # To target all data streams in a cluster, omit this parameter or use `*`.
31
31
  # @option arguments [String, Array<String>] :expand_wildcards Type of data stream that wildcard patterns can match.
@@ -0,0 +1,80 @@
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 Indices
24
+ module Actions
25
+ # Delete sampling configuration.
26
+ # Delete the sampling configuration for the specified index.
27
+ # This functionality is in technical preview and may be changed or removed in a future
28
+ # release. Elastic will apply best effort to fix any issues, but features in technical
29
+ # preview are not subject to the support SLA of official GA features.
30
+ #
31
+ # @option arguments [String] :index The name of the index. (*Required*)
32
+ # @option arguments [Time] :master_timeout Period to wait for a connection to the master node. If no response is
33
+ # received before the timeout expires, the request fails and returns an
34
+ # error. Server default: 30s.
35
+ # @option arguments [Time] :timeout Period to wait for a response.
36
+ # If no response is received before the timeout expires, the request fails and returns an error. Server default: 30s.
37
+ # @option arguments [Boolean] :error_trace When set to `true` Elasticsearch will include the full stack trace of errors
38
+ # when they occur.
39
+ # @option arguments [String, Array<String>] :filter_path Comma-separated list of filters in dot notation which reduce the response
40
+ # returned by Elasticsearch.
41
+ # @option arguments [Boolean] :human When set to `true` will return statistics in a format suitable for humans.
42
+ # For example `"exists_time": "1h"` for humans and
43
+ # `"exists_time_in_millis": 3600000` for computers. When disabled the human
44
+ # readable values will be omitted. This makes sense for responses being consumed
45
+ # only by machines.
46
+ # @option arguments [Boolean] :pretty If set to `true` the returned JSON will be "pretty-formatted". Only use
47
+ # this option for debugging only.
48
+ # @option arguments [Hash] :headers Custom HTTP headers
49
+ #
50
+ # @see https://www.elastic.co/docs/api/doc/elasticsearch#TODO
51
+ #
52
+ def delete_sample_configuration(arguments = {})
53
+ request_opts = { endpoint: arguments[:endpoint] || 'indices.delete_sample_configuration' }
54
+
55
+ defined_params = [:index].each_with_object({}) do |variable, set_variables|
56
+ set_variables[variable] = arguments[variable] if arguments.key?(variable)
57
+ end
58
+ request_opts[:defined_params] = defined_params unless defined_params.empty?
59
+
60
+ raise ArgumentError, "Required argument 'index' missing" unless arguments[:index]
61
+
62
+ arguments = arguments.clone
63
+ headers = arguments.delete(:headers) || {}
64
+
65
+ body = nil
66
+
67
+ _index = arguments.delete(:index)
68
+
69
+ method = Elasticsearch::API::HTTP_DELETE
70
+ path = "#{Utils.listify(_index)}/_sample/config"
71
+ params = Utils.process_params(arguments)
72
+
73
+ Elasticsearch::API::Response.new(
74
+ perform_request(method, path, params, body, headers, request_opts)
75
+ )
76
+ end
77
+ end
78
+ end
79
+ end
80
+ end
@@ -23,12 +23,15 @@ module Elasticsearch
23
23
  module Indices
24
24
  module Actions
25
25
  # Downsample an index.
26
- # Aggregate a time series (TSDS) index and store pre-computed statistical summaries (`min`, `max`, `sum`, `value_count` and `avg`) for each metric field grouped by a configured time interval.
26
+ # Downsamples a time series (TSDS) index and reduces its size by keeping the last value or by pre-aggregating metrics:
27
+ # - When running in `aggregate` mode, it pre-calculates and stores statistical summaries (`min`, `max`, `sum`, `value_count` and `avg`)
28
+ # for each metric field grouped by a configured time interval and their dimensions.
29
+ # - When running in `last_value` mode, it keeps the last value for each metric in the configured interval and their dimensions.
27
30
  # For example, a TSDS index that contains metrics sampled every 10 seconds can be downsampled to an hourly index.
28
31
  # All documents within an hour interval are summarized and stored as a single document in the downsample index.
29
32
  # NOTE: Only indices in a time series data stream are supported.
30
33
  # Neither field nor document level security can be defined on the source index.
31
- # The source index must be read only (`index.blocks.write: true`).
34
+ # The source index must be read-only (`index.blocks.write: true`).
32
35
  # This functionality is in technical preview and may be changed or removed in a future
33
36
  # release. Elastic will apply best effort to fix any issues, but features in technical
34
37
  # preview are not subject to the support SLA of official GA features.
@@ -0,0 +1,68 @@
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 Indices
24
+ module Actions
25
+ # Get all sampling configurations.
26
+ # Get the sampling configurations for all indices.
27
+ # This functionality is in technical preview and may be changed or removed in a future
28
+ # release. Elastic will apply best effort to fix any issues, but features in technical
29
+ # preview are not subject to the support SLA of official GA features.
30
+ #
31
+ # @option arguments [Time] :master_timeout Period to wait for a connection to the master node. If no response is
32
+ # received before the timeout expires, the request fails and returns an
33
+ # error. Server default: 30s.
34
+ # @option arguments [Boolean] :error_trace When set to `true` Elasticsearch will include the full stack trace of errors
35
+ # when they occur.
36
+ # @option arguments [String, Array<String>] :filter_path Comma-separated list of filters in dot notation which reduce the response
37
+ # returned by Elasticsearch.
38
+ # @option arguments [Boolean] :human When set to `true` will return statistics in a format suitable for humans.
39
+ # For example `"exists_time": "1h"` for humans and
40
+ # `"exists_time_in_millis": 3600000` for computers. When disabled the human
41
+ # readable values will be omitted. This makes sense for responses being consumed
42
+ # only by machines.
43
+ # @option arguments [Boolean] :pretty If set to `true` the returned JSON will be "pretty-formatted". Only use
44
+ # this option for debugging only.
45
+ # @option arguments [Hash] :headers Custom HTTP headers
46
+ #
47
+ # @see https://www.elastic.co/docs/api/doc/elasticsearch#TODO
48
+ #
49
+ def get_all_sample_configuration(arguments = {})
50
+ request_opts = { endpoint: arguments[:endpoint] || 'indices.get_all_sample_configuration' }
51
+
52
+ arguments = arguments.clone
53
+ headers = arguments.delete(:headers) || {}
54
+
55
+ body = nil
56
+
57
+ method = Elasticsearch::API::HTTP_GET
58
+ path = '_sample/config'
59
+ params = Utils.process_params(arguments)
60
+
61
+ Elasticsearch::API::Response.new(
62
+ perform_request(method, path, params, body, headers, request_opts)
63
+ )
64
+ end
65
+ end
66
+ end
67
+ end
68
+ end
@@ -0,0 +1,74 @@
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 Indices
24
+ module Actions
25
+ # Request for a random sample of raw documents ingested into the given index or data stream.
26
+ # This functionality is in technical preview and may be changed or removed in a future
27
+ # release. Elastic will apply best effort to fix any issues, but features in technical
28
+ # preview are not subject to the support SLA of official GA features.
29
+ #
30
+ # @option arguments [String] :index Single index or data stream name. Wildcards are not supported. (*Required*)
31
+ # @option arguments [Boolean] :error_trace When set to `true` Elasticsearch will include the full stack trace of errors
32
+ # when they occur.
33
+ # @option arguments [String, Array<String>] :filter_path Comma-separated list of filters in dot notation which reduce the response
34
+ # returned by Elasticsearch.
35
+ # @option arguments [Boolean] :human When set to `true` will return statistics in a format suitable for humans.
36
+ # For example `"exists_time": "1h"` for humans and
37
+ # `"exists_time_in_millis": 3600000` for computers. When disabled the human
38
+ # readable values will be omitted. This makes sense for responses being consumed
39
+ # only by machines.
40
+ # @option arguments [Boolean] :pretty If set to `true` the returned JSON will be "pretty-formatted". Only use
41
+ # this option for debugging only.
42
+ # @option arguments [Hash] :headers Custom HTTP headers
43
+ #
44
+ # @see https://www.elastic.co/docs/api/doc/elasticsearch#TODO
45
+ #
46
+ def get_sample(arguments = {})
47
+ request_opts = { endpoint: arguments[:endpoint] || 'indices.get_sample' }
48
+
49
+ defined_params = [:index].each_with_object({}) do |variable, set_variables|
50
+ set_variables[variable] = arguments[variable] if arguments.key?(variable)
51
+ end
52
+ request_opts[:defined_params] = defined_params unless defined_params.empty?
53
+
54
+ raise ArgumentError, "Required argument 'index' missing" unless arguments[:index]
55
+
56
+ arguments = arguments.clone
57
+ headers = arguments.delete(:headers) || {}
58
+
59
+ body = nil
60
+
61
+ _index = arguments.delete(:index)
62
+
63
+ method = Elasticsearch::API::HTTP_GET
64
+ path = "#{Utils.listify(_index)}/_sample"
65
+ params = Utils.process_params(arguments)
66
+
67
+ Elasticsearch::API::Response.new(
68
+ perform_request(method, path, params, body, headers, request_opts)
69
+ )
70
+ end
71
+ end
72
+ end
73
+ end
74
+ end
@@ -0,0 +1,78 @@
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 Indices
24
+ module Actions
25
+ # Get sampling configuration.
26
+ # Get the sampling configuration for the specified index.
27
+ # This functionality is in technical preview and may be changed or removed in a future
28
+ # release. Elastic will apply best effort to fix any issues, but features in technical
29
+ # preview are not subject to the support SLA of official GA features.
30
+ #
31
+ # @option arguments [String] :index The name of the index. (*Required*)
32
+ # @option arguments [Time] :master_timeout Period to wait for a connection to the master node. If no response is
33
+ # received before the timeout expires, the request fails and returns an
34
+ # error. Server default: 30s.
35
+ # @option arguments [Boolean] :error_trace When set to `true` Elasticsearch will include the full stack trace of errors
36
+ # when they occur.
37
+ # @option arguments [String, Array<String>] :filter_path Comma-separated list of filters in dot notation which reduce the response
38
+ # returned by Elasticsearch.
39
+ # @option arguments [Boolean] :human When set to `true` will return statistics in a format suitable for humans.
40
+ # For example `"exists_time": "1h"` for humans and
41
+ # `"exists_time_in_millis": 3600000` for computers. When disabled the human
42
+ # readable values will be omitted. This makes sense for responses being consumed
43
+ # only by machines.
44
+ # @option arguments [Boolean] :pretty If set to `true` the returned JSON will be "pretty-formatted". Only use
45
+ # this option for debugging only.
46
+ # @option arguments [Hash] :headers Custom HTTP headers
47
+ #
48
+ # @see https://www.elastic.co/docs/api/doc/elasticsearch#TODO
49
+ #
50
+ def get_sample_configuration(arguments = {})
51
+ request_opts = { endpoint: arguments[:endpoint] || 'indices.get_sample_configuration' }
52
+
53
+ defined_params = [:index].each_with_object({}) do |variable, set_variables|
54
+ set_variables[variable] = arguments[variable] if arguments.key?(variable)
55
+ end
56
+ request_opts[:defined_params] = defined_params unless defined_params.empty?
57
+
58
+ raise ArgumentError, "Required argument 'index' missing" unless arguments[:index]
59
+
60
+ arguments = arguments.clone
61
+ headers = arguments.delete(:headers) || {}
62
+
63
+ body = nil
64
+
65
+ _index = arguments.delete(:index)
66
+
67
+ method = Elasticsearch::API::HTTP_GET
68
+ path = "#{Utils.listify(_index)}/_sample/config"
69
+ params = Utils.process_params(arguments)
70
+
71
+ Elasticsearch::API::Response.new(
72
+ perform_request(method, path, params, body, headers, request_opts)
73
+ )
74
+ end
75
+ end
76
+ end
77
+ end
78
+ end
@@ -0,0 +1,74 @@
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 Indices
24
+ module Actions
25
+ # Request stats for a random sample of raw documents ingested into the given index or data stream.
26
+ # This functionality is in technical preview and may be changed or removed in a future
27
+ # release. Elastic will apply best effort to fix any issues, but features in technical
28
+ # preview are not subject to the support SLA of official GA features.
29
+ #
30
+ # @option arguments [String] :index Single index or data stream name. Wildcards are not supported. (*Required*)
31
+ # @option arguments [Boolean] :error_trace When set to `true` Elasticsearch will include the full stack trace of errors
32
+ # when they occur.
33
+ # @option arguments [String, Array<String>] :filter_path Comma-separated list of filters in dot notation which reduce the response
34
+ # returned by Elasticsearch.
35
+ # @option arguments [Boolean] :human When set to `true` will return statistics in a format suitable for humans.
36
+ # For example `"exists_time": "1h"` for humans and
37
+ # `"exists_time_in_millis": 3600000` for computers. When disabled the human
38
+ # readable values will be omitted. This makes sense for responses being consumed
39
+ # only by machines.
40
+ # @option arguments [Boolean] :pretty If set to `true` the returned JSON will be "pretty-formatted". Only use
41
+ # this option for debugging only.
42
+ # @option arguments [Hash] :headers Custom HTTP headers
43
+ #
44
+ # @see https://www.elastic.co/docs/api/doc/elasticsearch#TODO
45
+ #
46
+ def get_sample_stats(arguments = {})
47
+ request_opts = { endpoint: arguments[:endpoint] || 'indices.get_sample_stats' }
48
+
49
+ defined_params = [:index].each_with_object({}) do |variable, set_variables|
50
+ set_variables[variable] = arguments[variable] if arguments.key?(variable)
51
+ end
52
+ request_opts[:defined_params] = defined_params unless defined_params.empty?
53
+
54
+ raise ArgumentError, "Required argument 'index' missing" unless arguments[:index]
55
+
56
+ arguments = arguments.clone
57
+ headers = arguments.delete(:headers) || {}
58
+
59
+ body = nil
60
+
61
+ _index = arguments.delete(:index)
62
+
63
+ method = Elasticsearch::API::HTTP_GET
64
+ path = "#{Utils.listify(_index)}/_sample/stats"
65
+ params = Utils.process_params(arguments)
66
+
67
+ Elasticsearch::API::Response.new(
68
+ perform_request(method, path, params, body, headers, request_opts)
69
+ )
70
+ end
71
+ end
72
+ end
73
+ end
74
+ end
@@ -0,0 +1,82 @@
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 Indices
24
+ module Actions
25
+ # Create or update sampling configuration.
26
+ # Create or update the sampling configuration for the specified index.
27
+ # This functionality is in technical preview and may be changed or removed in a future
28
+ # release. Elastic will apply best effort to fix any issues, but features in technical
29
+ # preview are not subject to the support SLA of official GA features.
30
+ #
31
+ # @option arguments [String] :index The name of the index or data stream. (*Required*)
32
+ # @option arguments [Time] :master_timeout Period to wait for a connection to the master node. If no response is
33
+ # received before the timeout expires, the request fails and returns an
34
+ # error. Server default: 30s.
35
+ # @option arguments [Time] :timeout Period to wait for a response.
36
+ # If no response is received before the timeout expires, the request fails and returns an error. Server default: 30s.
37
+ # @option arguments [Boolean] :error_trace When set to `true` Elasticsearch will include the full stack trace of errors
38
+ # when they occur.
39
+ # @option arguments [String, Array<String>] :filter_path Comma-separated list of filters in dot notation which reduce the response
40
+ # returned by Elasticsearch.
41
+ # @option arguments [Boolean] :human When set to `true` will return statistics in a format suitable for humans.
42
+ # For example `"exists_time": "1h"` for humans and
43
+ # `"exists_time_in_millis": 3600000` for computers. When disabled the human
44
+ # readable values will be omitted. This makes sense for responses being consumed
45
+ # only by machines.
46
+ # @option arguments [Boolean] :pretty If set to `true` the returned JSON will be "pretty-formatted". Only use
47
+ # this option for debugging only.
48
+ # @option arguments [Hash] :headers Custom HTTP headers
49
+ # @option arguments [Hash] :body request body
50
+ #
51
+ # @see https://www.elastic.co/docs/api/doc/elasticsearch#TODO
52
+ #
53
+ def put_sample_configuration(arguments = {})
54
+ request_opts = { endpoint: arguments[:endpoint] || 'indices.put_sample_configuration' }
55
+
56
+ defined_params = [:index].each_with_object({}) do |variable, set_variables|
57
+ set_variables[variable] = arguments[variable] if arguments.key?(variable)
58
+ end
59
+ request_opts[:defined_params] = defined_params unless defined_params.empty?
60
+
61
+ raise ArgumentError, "Required argument 'body' missing" unless arguments[:body]
62
+ raise ArgumentError, "Required argument 'index' missing" unless arguments[:index]
63
+
64
+ arguments = arguments.clone
65
+ headers = arguments.delete(:headers) || {}
66
+
67
+ body = arguments.delete(:body)
68
+
69
+ _index = arguments.delete(:index)
70
+
71
+ method = Elasticsearch::API::HTTP_PUT
72
+ path = "#{Utils.listify(_index)}/_sample/config"
73
+ params = Utils.process_params(arguments)
74
+
75
+ Elasticsearch::API::Response.new(
76
+ perform_request(method, path, params, body, headers, request_opts)
77
+ )
78
+ end
79
+ end
80
+ end
81
+ end
82
+ end
@@ -26,7 +26,7 @@ module Elasticsearch
26
26
  # Remove an index block from an index.
27
27
  # Index blocks limit the operations allowed on an index by blocking specific operation types.
28
28
  #
29
- # @option arguments [String] :index A comma-separated list or wildcard expression of index names used to limit the request.
29
+ # @option arguments [String, Array] :index A comma-separated list or wildcard expression of index names used to limit the request.
30
30
  # By default, you must explicitly name the indices you are removing blocks from.
31
31
  # To allow the removal of blocks from indices with `_all`, `*`, or other wildcard expressions, change the `action.destructive_requires_name` setting to `false`.
32
32
  # You can update this setting in the `elasticsearch.yml` file or by using the cluster update settings API. (*Required*)
@@ -36,14 +36,6 @@ module Elasticsearch
36
36
  # This behavior applies even if the request targets other open indices.
37
37
  # For example, a request targeting `foo*,bar*` returns an error if an index starts with `foo` but no index starts with `bar`. Server default: true.
38
38
  # @option arguments [String, Array<String>] :mode Filter indices by index mode - standard, lookup, time_series, etc. Comma-separated list of IndexMode. Empty means no filter.
39
- # @option arguments [String] :project_routing Specifies a subset of projects to target using project
40
- # metadata tags in a subset of Lucene query syntax.
41
- # Allowed Lucene queries: the _alias tag and a single value (possibly wildcarded).
42
- # Examples:
43
- # _alias:my-project
44
- # _alias:_origin
45
- # _alias:*pr*
46
- # Supported in serverless only.
47
39
  # @option arguments [Boolean] :error_trace When set to `true` Elasticsearch will include the full stack trace of errors
48
40
  # when they occur.
49
41
  # @option arguments [String, Array<String>] :filter_path Comma-separated list of filters in dot notation which reduce the response
@@ -56,6 +48,7 @@ module Elasticsearch
56
48
  # @option arguments [Boolean] :pretty If set to `true` the returned JSON will be "pretty-formatted". Only use
57
49
  # this option for debugging only.
58
50
  # @option arguments [Hash] :headers Custom HTTP headers
51
+ # @option arguments [Hash] :body request body
59
52
  #
60
53
  # @see https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-indices-resolve-index
61
54
  #
@@ -72,11 +65,16 @@ module Elasticsearch
72
65
  arguments = arguments.clone
73
66
  headers = arguments.delete(:headers) || {}
74
67
 
75
- body = nil
68
+ body = arguments.delete(:body)
76
69
 
77
70
  _name = arguments.delete(:name)
78
71
 
79
- method = Elasticsearch::API::HTTP_GET
72
+ method = if body
73
+ Elasticsearch::API::HTTP_POST
74
+ else
75
+ Elasticsearch::API::HTTP_GET
76
+ end
77
+
80
78
  path = "_resolve/index/#{Utils.listify(_name)}"
81
79
  params = Utils.process_params(arguments)
82
80
 
@@ -34,7 +34,6 @@ module Elasticsearch
34
34
  # For example an index with 8 primary shards can be shrunk into 4, 2 or 1 primary shards or an index with 15 primary shards can be shrunk into 5, 3 or 1.
35
35
  # If the number of shards in the index is a prime number it can only be shrunk into a single primary shard
36
36
  # Before shrinking, a (primary or replica) copy of every shard in the index must be present on the same node.
37
- # IMPORTANT: If the source index already has one primary shard, configuring the shrink operation with 'index.number_of_shards: 1' will cause the request to fail. An index with one primary shard cannot be shrunk further.
38
37
  # The current write index on a data stream cannot be shrunk. In order to shrink the current write index, the data stream must first be rolled over so that a new write index is created and then the previous write index can be shrunk.
39
38
  # A shrink operation:
40
39
  # * Creates a new target index with the same definition as the source index, but with a smaller number of primary shards.
@@ -25,9 +25,8 @@ module Elasticsearch
25
25
  # Get an inference endpoint.
26
26
  # This API requires the `monitor_inference` cluster privilege (the built-in `inference_admin` and `inference_user` roles grant this privilege).
27
27
  #
28
- # @option arguments [String] :task_type The task type of the endpoint to return
29
- # @option arguments [String] :inference_id The inference Id of the endpoint to return. Using `_all` or `*` will return all endpoints with the specified
30
- # `task_type` if one is specified, or all endpoints for all task types if no `task_type` is specified
28
+ # @option arguments [String] :task_type The task type
29
+ # @option arguments [String] :inference_id The inference Id
31
30
  # @option arguments [Boolean] :error_trace When set to `true` Elasticsearch will include the full stack trace of errors
32
31
  # when they occur.
33
32
  # @option arguments [String, Array<String>] :filter_path Comma-separated list of filters in dot notation which reduce the response
@@ -63,8 +62,6 @@ module Elasticsearch
63
62
  method = Elasticsearch::API::HTTP_GET
64
63
  path = if _task_type && _inference_id
65
64
  "_inference/#{Utils.listify(_task_type)}/#{Utils.listify(_inference_id)}"
66
- elsif _task_type
67
- "_inference/#{Utils.listify(_task_type)}/_all"
68
65
  elsif _inference_id
69
66
  "_inference/#{Utils.listify(_inference_id)}"
70
67
  else
@@ -32,21 +32,24 @@ module Elasticsearch
32
32
  # * Amazon Bedrock (`completion`, `text_embedding`)
33
33
  # * Amazon SageMaker (`chat_completion`, `completion`, `rerank`, `sparse_embedding`, `text_embedding`)
34
34
  # * Anthropic (`completion`)
35
- # * Azure AI Studio (`completion`, 'rerank', `text_embedding`)
36
- # * Azure OpenAI (`completion`, `text_embedding`)
35
+ # * Azure AI Studio (`completion`, `rerank`, `text_embedding`)
36
+ # * Azure OpenAI (`chat_completion`, `completion`, `text_embedding`)
37
37
  # * Cohere (`completion`, `rerank`, `text_embedding`)
38
38
  # * DeepSeek (`chat_completion`, `completion`)
39
39
  # * Elasticsearch (`rerank`, `sparse_embedding`, `text_embedding` - this service is for built-in models and models uploaded through Eland)
40
40
  # * ELSER (`sparse_embedding`)
41
41
  # * Google AI Studio (`completion`, `text_embedding`)
42
42
  # * Google Vertex AI (`chat_completion`, `completion`, `rerank`, `text_embedding`)
43
+ # * Groq (`chat_completion`)
43
44
  # * Hugging Face (`chat_completion`, `completion`, `rerank`, `text_embedding`)
44
45
  # * JinaAI (`rerank`, `text_embedding`)
45
46
  # * Llama (`chat_completion`, `completion`, `text_embedding`)
46
47
  # * Mistral (`chat_completion`, `completion`, `text_embedding`)
48
+ # * Nvidia (`chat_completion`, `completion`, `text_embedding`, `rerank`)
47
49
  # * OpenAI (`chat_completion`, `completion`, `text_embedding`)
50
+ # * OpenShift AI (`chat_completion`, `completion`, `rerank`, `text_embedding`)
48
51
  # * VoyageAI (`rerank`, `text_embedding`)
49
- # * Watsonx (`chat_completion`, `completion`, `rerank`, `text_embedding`)
52
+ # * Watsonx inference integration (`text_embedding`)
50
53
  #
51
54
  # @option arguments [String] :task_type The task type. Refer to the integration list in the API description for the available task types.
52
55
  # @option arguments [String] :inference_id The inference Id (*Required*)
@@ -54,6 +54,7 @@ module Elasticsearch
54
54
 
55
55
  raise ArgumentError, "Required argument 'body' missing" unless arguments[:body]
56
56
  raise ArgumentError, "Required argument 'task_type' missing" unless arguments[:task_type]
57
+
57
58
  unless arguments[:alibabacloud_inference_id]
58
59
  raise ArgumentError,
59
60
  "Required argument 'alibabacloud_inference_id' missing"