elasticsearch-serverless 0.6.0 → 0.7.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 (249) hide show
  1. checksums.yaml +4 -4
  2. data/lib/elasticsearch-serverless/api/async_search/delete.rb +3 -4
  3. data/lib/elasticsearch-serverless/api/async_search/get.rb +4 -5
  4. data/lib/elasticsearch-serverless/api/async_search/status.rb +7 -6
  5. data/lib/elasticsearch-serverless/api/async_search/submit.rb +5 -7
  6. data/lib/elasticsearch-serverless/api/bulk.rb +109 -22
  7. data/lib/elasticsearch-serverless/api/cat/aliases.rb +17 -14
  8. data/lib/elasticsearch-serverless/api/cat/component_templates.rb +14 -13
  9. data/lib/elasticsearch-serverless/api/cat/count.rb +13 -14
  10. data/lib/elasticsearch-serverless/api/cat/help.rb +5 -15
  11. data/lib/elasticsearch-serverless/api/cat/indices.rb +10 -11
  12. data/lib/elasticsearch-serverless/api/cat/ml_data_frame_analytics.rb +7 -13
  13. data/lib/elasticsearch-serverless/api/cat/ml_datafeeds.rb +6 -12
  14. data/lib/elasticsearch-serverless/api/cat/ml_jobs.rb +6 -12
  15. data/lib/elasticsearch-serverless/api/cat/ml_trained_models.rb +7 -12
  16. data/lib/elasticsearch-serverless/api/cat/transforms.rb +6 -12
  17. data/lib/elasticsearch-serverless/api/clear_scroll.rb +7 -6
  18. data/lib/elasticsearch-serverless/api/close_point_in_time.rb +3 -3
  19. data/lib/elasticsearch-serverless/api/cluster/delete_component_template.rb +3 -5
  20. data/lib/elasticsearch-serverless/api/cluster/exists_component_template.rb +4 -5
  21. data/lib/elasticsearch-serverless/api/cluster/get_component_template.rb +5 -6
  22. data/lib/elasticsearch-serverless/api/cluster/info.rb +3 -4
  23. data/lib/elasticsearch-serverless/api/cluster/put_component_template.rb +6 -5
  24. data/lib/elasticsearch-serverless/api/connector/check_in.rb +3 -4
  25. data/lib/elasticsearch-serverless/api/connector/delete.rb +4 -4
  26. data/lib/elasticsearch-serverless/api/connector/get.rb +5 -5
  27. data/lib/elasticsearch-serverless/api/connector/list.rb +4 -3
  28. data/lib/elasticsearch-serverless/api/connector/post.rb +3 -3
  29. data/lib/elasticsearch-serverless/api/connector/put.rb +4 -5
  30. data/lib/elasticsearch-serverless/api/connector/sync_job_cancel.rb +7 -6
  31. data/lib/elasticsearch-serverless/api/connector/sync_job_delete.rb +7 -6
  32. data/lib/elasticsearch-serverless/api/connector/sync_job_get.rb +7 -6
  33. data/lib/elasticsearch-serverless/api/connector/sync_job_list.rb +3 -3
  34. data/lib/elasticsearch-serverless/api/connector/sync_job_post.rb +3 -3
  35. data/lib/elasticsearch-serverless/api/connector/update_active_filtering.rb +3 -4
  36. data/lib/elasticsearch-serverless/api/connector/update_api_key_id.rb +3 -4
  37. data/lib/elasticsearch-serverless/api/connector/update_configuration.rb +3 -4
  38. data/lib/elasticsearch-serverless/api/connector/update_error.rb +3 -4
  39. data/lib/elasticsearch-serverless/api/connector/update_filtering.rb +3 -4
  40. data/lib/elasticsearch-serverless/api/connector/update_filtering_validation.rb +2 -3
  41. data/lib/elasticsearch-serverless/api/connector/update_index_name.rb +3 -4
  42. data/lib/elasticsearch-serverless/api/connector/update_name.rb +3 -4
  43. data/lib/elasticsearch-serverless/api/connector/update_native.rb +2 -3
  44. data/lib/elasticsearch-serverless/api/connector/update_pipeline.rb +3 -4
  45. data/lib/elasticsearch-serverless/api/connector/update_scheduling.rb +3 -4
  46. data/lib/elasticsearch-serverless/api/connector/update_service_type.rb +3 -4
  47. data/lib/elasticsearch-serverless/api/connector/update_status.rb +3 -4
  48. data/lib/elasticsearch-serverless/api/count.rb +36 -25
  49. data/lib/elasticsearch-serverless/api/create.rb +77 -22
  50. data/lib/elasticsearch-serverless/api/delete.rb +44 -18
  51. data/lib/elasticsearch-serverless/api/delete_by_query.rb +91 -29
  52. data/lib/elasticsearch-serverless/api/delete_script.rb +10 -9
  53. data/lib/elasticsearch-serverless/api/enrich/delete_policy.rb +5 -5
  54. data/lib/elasticsearch-serverless/api/enrich/execute_policy.rb +6 -5
  55. data/lib/elasticsearch-serverless/api/enrich/get_policy.rb +6 -6
  56. data/lib/elasticsearch-serverless/api/enrich/put_policy.rb +5 -5
  57. data/lib/elasticsearch-serverless/api/eql/delete.rb +5 -5
  58. data/lib/elasticsearch-serverless/api/eql/get.rb +5 -5
  59. data/lib/elasticsearch-serverless/api/eql/get_status.rb +5 -5
  60. data/lib/elasticsearch-serverless/api/eql/search.rb +9 -5
  61. data/lib/elasticsearch-serverless/api/exists.rb +38 -19
  62. data/lib/elasticsearch-serverless/api/exists_source.rb +23 -18
  63. data/lib/elasticsearch-serverless/api/explain.rb +25 -16
  64. data/lib/elasticsearch-serverless/api/field_caps.rb +11 -10
  65. data/lib/elasticsearch-serverless/api/get.rb +71 -21
  66. data/lib/elasticsearch-serverless/api/get_script.rb +7 -6
  67. data/lib/elasticsearch-serverless/api/get_source.rb +25 -15
  68. data/lib/elasticsearch-serverless/api/graph/explore.rb +9 -5
  69. data/lib/elasticsearch-serverless/api/index.rb +110 -21
  70. data/lib/elasticsearch-serverless/api/indices/add_block.rb +23 -12
  71. data/lib/elasticsearch-serverless/api/indices/analyze.rb +9 -6
  72. data/lib/elasticsearch-serverless/api/indices/create.rb +19 -6
  73. data/lib/elasticsearch-serverless/api/indices/create_data_stream.rb +3 -5
  74. data/lib/elasticsearch-serverless/api/indices/delete.rb +11 -8
  75. data/lib/elasticsearch-serverless/api/indices/delete_alias.rb +4 -7
  76. data/lib/elasticsearch-serverless/api/indices/delete_data_stream.rb +3 -4
  77. data/lib/elasticsearch-serverless/api/indices/delete_index_template.rb +3 -4
  78. data/lib/elasticsearch-serverless/api/indices/exists.rb +7 -8
  79. data/lib/elasticsearch-serverless/api/indices/exists_alias.rb +8 -7
  80. data/lib/elasticsearch-serverless/api/indices/exists_index_template.rb +6 -6
  81. data/lib/elasticsearch-serverless/api/indices/explain_data_lifecycle.rb +4 -5
  82. data/lib/elasticsearch-serverless/api/indices/get.rb +5 -6
  83. data/lib/elasticsearch-serverless/api/indices/get_alias.rb +6 -5
  84. data/lib/elasticsearch-serverless/api/indices/get_data_lifecycle.rb +4 -5
  85. data/lib/elasticsearch-serverless/api/indices/get_data_stream.rb +5 -6
  86. data/lib/elasticsearch-serverless/api/indices/get_index_template.rb +5 -6
  87. data/lib/elasticsearch-serverless/api/indices/get_mapping.rb +4 -6
  88. data/lib/elasticsearch-serverless/api/indices/get_settings.rb +6 -7
  89. data/lib/elasticsearch-serverless/api/indices/migrate_to_data_stream.rb +3 -4
  90. data/lib/elasticsearch-serverless/api/indices/modify_data_stream.rb +3 -3
  91. data/lib/elasticsearch-serverless/api/indices/put_alias.rb +4 -7
  92. data/lib/elasticsearch-serverless/api/indices/put_data_lifecycle.rb +4 -6
  93. data/lib/elasticsearch-serverless/api/indices/put_index_template.rb +22 -4
  94. data/lib/elasticsearch-serverless/api/indices/put_mapping.rb +21 -6
  95. data/lib/elasticsearch-serverless/api/indices/put_settings.rb +17 -7
  96. data/lib/elasticsearch-serverless/api/indices/refresh.rb +11 -5
  97. data/lib/elasticsearch-serverless/api/indices/resolve_index.rb +5 -5
  98. data/lib/elasticsearch-serverless/api/indices/rollover.rb +28 -5
  99. data/lib/elasticsearch-serverless/api/indices/simulate_index_template.rb +4 -5
  100. data/lib/elasticsearch-serverless/api/indices/simulate_template.rb +5 -6
  101. data/lib/elasticsearch-serverless/api/indices/update_aliases.rb +3 -3
  102. data/lib/elasticsearch-serverless/api/indices/validate_query.rb +4 -5
  103. data/lib/elasticsearch-serverless/api/inference/chat_completion_unified.rb +62 -0
  104. data/lib/elasticsearch-serverless/api/inference/completion.rb +62 -0
  105. data/lib/elasticsearch-serverless/api/inference/delete.rb +6 -7
  106. data/lib/elasticsearch-serverless/api/inference/get.rb +4 -5
  107. data/lib/elasticsearch-serverless/api/inference/put.rb +12 -5
  108. data/lib/elasticsearch-serverless/api/inference/put_watsonx.rb +78 -0
  109. data/lib/elasticsearch-serverless/api/inference/rerank.rb +62 -0
  110. data/lib/elasticsearch-serverless/api/inference/sparse_embedding.rb +62 -0
  111. data/lib/elasticsearch-serverless/api/inference/text_embedding.rb +62 -0
  112. data/lib/elasticsearch-serverless/api/info.rb +4 -4
  113. data/lib/elasticsearch-serverless/api/ingest/delete_pipeline.rb +5 -5
  114. data/lib/elasticsearch-serverless/api/ingest/get_pipeline.rb +6 -6
  115. data/lib/elasticsearch-serverless/api/ingest/processor_grok.rb +5 -4
  116. data/lib/elasticsearch-serverless/api/ingest/put_pipeline.rb +3 -4
  117. data/lib/elasticsearch-serverless/api/ingest/simulate.rb +9 -8
  118. data/lib/elasticsearch-serverless/api/license/get.rb +4 -5
  119. data/lib/elasticsearch-serverless/api/logstash/delete_pipeline.rb +7 -6
  120. data/lib/elasticsearch-serverless/api/logstash/get_pipeline.rb +7 -7
  121. data/lib/elasticsearch-serverless/api/logstash/put_pipeline.rb +7 -6
  122. data/lib/elasticsearch-serverless/api/machine_learning/close_job.rb +3 -4
  123. data/lib/elasticsearch-serverless/api/machine_learning/delete_calendar.rb +4 -5
  124. data/lib/elasticsearch-serverless/api/machine_learning/delete_calendar_event.rb +3 -4
  125. data/lib/elasticsearch-serverless/api/machine_learning/delete_calendar_job.rb +3 -4
  126. data/lib/elasticsearch-serverless/api/machine_learning/delete_data_frame_analytics.rb +3 -4
  127. data/lib/elasticsearch-serverless/api/machine_learning/delete_datafeed.rb +3 -4
  128. data/lib/elasticsearch-serverless/api/machine_learning/delete_filter.rb +3 -4
  129. data/lib/elasticsearch-serverless/api/machine_learning/delete_job.rb +3 -4
  130. data/lib/elasticsearch-serverless/api/machine_learning/delete_trained_model.rb +4 -4
  131. data/lib/elasticsearch-serverless/api/machine_learning/delete_trained_model_alias.rb +3 -4
  132. data/lib/elasticsearch-serverless/api/machine_learning/estimate_model_memory.rb +5 -5
  133. data/lib/elasticsearch-serverless/api/machine_learning/evaluate_data_frame.rb +3 -3
  134. data/lib/elasticsearch-serverless/api/machine_learning/flush_job.rb +3 -4
  135. data/lib/elasticsearch-serverless/api/machine_learning/get_calendar_events.rb +3 -4
  136. data/lib/elasticsearch-serverless/api/machine_learning/get_calendars.rb +4 -5
  137. data/lib/elasticsearch-serverless/api/machine_learning/get_data_frame_analytics.rb +4 -5
  138. data/lib/elasticsearch-serverless/api/machine_learning/get_data_frame_analytics_stats.rb +4 -5
  139. data/lib/elasticsearch-serverless/api/machine_learning/get_datafeed_stats.rb +4 -5
  140. data/lib/elasticsearch-serverless/api/machine_learning/get_datafeeds.rb +4 -5
  141. data/lib/elasticsearch-serverless/api/machine_learning/get_filters.rb +4 -5
  142. data/lib/elasticsearch-serverless/api/machine_learning/get_job_stats.rb +4 -5
  143. data/lib/elasticsearch-serverless/api/machine_learning/get_jobs.rb +4 -5
  144. data/lib/elasticsearch-serverless/api/machine_learning/get_overall_buckets.rb +3 -4
  145. data/lib/elasticsearch-serverless/api/machine_learning/get_trained_models.rb +4 -5
  146. data/lib/elasticsearch-serverless/api/machine_learning/get_trained_models_stats.rb +4 -5
  147. data/lib/elasticsearch-serverless/api/machine_learning/infer_trained_model.rb +3 -9
  148. data/lib/elasticsearch-serverless/api/machine_learning/open_job.rb +3 -4
  149. data/lib/elasticsearch-serverless/api/machine_learning/post_calendar_events.rb +3 -4
  150. data/lib/elasticsearch-serverless/api/machine_learning/preview_data_frame_analytics.rb +5 -6
  151. data/lib/elasticsearch-serverless/api/machine_learning/preview_datafeed.rb +4 -5
  152. data/lib/elasticsearch-serverless/api/machine_learning/put_calendar.rb +3 -4
  153. data/lib/elasticsearch-serverless/api/machine_learning/put_calendar_job.rb +3 -4
  154. data/lib/elasticsearch-serverless/api/machine_learning/put_data_frame_analytics.rb +6 -4
  155. data/lib/elasticsearch-serverless/api/machine_learning/put_datafeed.rb +6 -6
  156. data/lib/elasticsearch-serverless/api/machine_learning/put_filter.rb +3 -4
  157. data/lib/elasticsearch-serverless/api/machine_learning/put_job.rb +16 -5
  158. data/lib/elasticsearch-serverless/api/machine_learning/put_trained_model.rb +3 -4
  159. data/lib/elasticsearch-serverless/api/machine_learning/put_trained_model_alias.rb +3 -4
  160. data/lib/elasticsearch-serverless/api/machine_learning/put_trained_model_definition_part.rb +3 -4
  161. data/lib/elasticsearch-serverless/api/machine_learning/put_trained_model_vocabulary.rb +3 -4
  162. data/lib/elasticsearch-serverless/api/machine_learning/reset_job.rb +3 -4
  163. data/lib/elasticsearch-serverless/api/machine_learning/start_data_frame_analytics.rb +3 -4
  164. data/lib/elasticsearch-serverless/api/machine_learning/start_datafeed.rb +3 -4
  165. data/lib/elasticsearch-serverless/api/machine_learning/start_trained_model_deployment.rb +7 -6
  166. data/lib/elasticsearch-serverless/api/machine_learning/stop_data_frame_analytics.rb +3 -4
  167. data/lib/elasticsearch-serverless/api/machine_learning/stop_datafeed.rb +3 -4
  168. data/lib/elasticsearch-serverless/api/machine_learning/stop_trained_model_deployment.rb +3 -4
  169. data/lib/elasticsearch-serverless/api/machine_learning/update_data_frame_analytics.rb +3 -4
  170. data/lib/elasticsearch-serverless/api/machine_learning/update_datafeed.rb +3 -4
  171. data/lib/elasticsearch-serverless/api/machine_learning/update_filter.rb +3 -4
  172. data/lib/elasticsearch-serverless/api/machine_learning/update_job.rb +3 -4
  173. data/lib/elasticsearch-serverless/api/machine_learning/update_trained_model_deployment.rb +3 -4
  174. data/lib/elasticsearch-serverless/api/mget.rb +12 -5
  175. data/lib/elasticsearch-serverless/api/msearch.rb +16 -17
  176. data/lib/elasticsearch-serverless/api/msearch_template.rb +22 -15
  177. data/lib/elasticsearch-serverless/api/mtermvectors.rb +15 -12
  178. data/lib/elasticsearch-serverless/api/open_point_in_time.rb +29 -12
  179. data/lib/elasticsearch-serverless/api/ping.rb +8 -10
  180. data/lib/elasticsearch-serverless/api/put_script.rb +12 -11
  181. data/lib/elasticsearch-serverless/api/query_rules/delete_rule.rb +6 -5
  182. data/lib/elasticsearch-serverless/api/query_rules/delete_ruleset.rb +6 -5
  183. data/lib/elasticsearch-serverless/api/query_rules/get_rule.rb +5 -5
  184. data/lib/elasticsearch-serverless/api/query_rules/get_ruleset.rb +5 -5
  185. data/lib/elasticsearch-serverless/api/query_rules/list_rulesets.rb +7 -6
  186. data/lib/elasticsearch-serverless/api/query_rules/put_rule.rb +11 -7
  187. data/lib/elasticsearch-serverless/api/query_rules/put_ruleset.rb +11 -6
  188. data/lib/elasticsearch-serverless/api/query_rules/test.rb +5 -5
  189. data/lib/elasticsearch-serverless/api/rank_eval.rb +6 -6
  190. data/lib/elasticsearch-serverless/api/reindex.rb +146 -9
  191. data/lib/elasticsearch-serverless/api/render_search_template.rb +5 -6
  192. data/lib/elasticsearch-serverless/api/response.rb +1 -1
  193. data/lib/elasticsearch-serverless/api/scripts_painless_execute.rb +7 -3
  194. data/lib/elasticsearch-serverless/api/scroll.rb +4 -4
  195. data/lib/elasticsearch-serverless/api/search.rb +77 -69
  196. data/lib/elasticsearch-serverless/api/search_application/delete.rb +4 -5
  197. data/lib/elasticsearch-serverless/api/search_application/delete_behavioral_analytics.rb +3 -4
  198. data/lib/elasticsearch-serverless/api/search_application/get.rb +3 -4
  199. data/lib/elasticsearch-serverless/api/search_application/get_behavioral_analytics.rb +4 -5
  200. data/lib/elasticsearch-serverless/api/search_application/list.rb +5 -4
  201. data/lib/elasticsearch-serverless/api/search_application/put.rb +3 -4
  202. data/lib/elasticsearch-serverless/api/search_application/put_behavioral_analytics.rb +3 -4
  203. data/lib/elasticsearch-serverless/api/search_application/search.rb +3 -4
  204. data/lib/elasticsearch-serverless/api/search_mvt.rb +131 -9
  205. data/lib/elasticsearch-serverless/api/search_template.rb +12 -12
  206. data/lib/elasticsearch-serverless/api/security/authenticate.rb +3 -3
  207. data/lib/elasticsearch-serverless/api/security/create_api_key.rb +7 -3
  208. data/lib/elasticsearch-serverless/api/security/delete_role.rb +6 -5
  209. data/lib/elasticsearch-serverless/api/security/get_api_key.rb +3 -3
  210. data/lib/elasticsearch-serverless/api/security/get_builtin_privileges.rb +3 -3
  211. data/lib/elasticsearch-serverless/api/security/get_role.rb +11 -8
  212. data/lib/elasticsearch-serverless/api/security/has_privileges.rb +6 -5
  213. data/lib/elasticsearch-serverless/api/security/invalidate_api_key.rb +8 -6
  214. data/lib/elasticsearch-serverless/api/security/put_role.rb +3 -4
  215. data/lib/elasticsearch-serverless/api/security/query_api_keys.rb +12 -6
  216. data/lib/elasticsearch-serverless/api/security/query_role.rb +61 -0
  217. data/lib/elasticsearch-serverless/api/security/update_api_key.rb +74 -0
  218. data/lib/elasticsearch-serverless/api/sql/clear_cursor.rb +4 -4
  219. data/lib/elasticsearch-serverless/api/sql/delete_async.rb +10 -6
  220. data/lib/elasticsearch-serverless/api/sql/get_async.rb +16 -13
  221. data/lib/elasticsearch-serverless/api/sql/get_async_status.rb +6 -6
  222. data/lib/elasticsearch-serverless/api/sql/query.rb +8 -5
  223. data/lib/elasticsearch-serverless/api/sql/translate.rb +6 -4
  224. data/lib/elasticsearch-serverless/api/synonyms/delete_synonym.rb +17 -6
  225. data/lib/elasticsearch-serverless/api/synonyms/delete_synonym_rule.rb +7 -7
  226. data/lib/elasticsearch-serverless/api/synonyms/get_synonym.rb +7 -8
  227. data/lib/elasticsearch-serverless/api/synonyms/get_synonym_rule.rb +7 -7
  228. data/lib/elasticsearch-serverless/api/synonyms/get_synonyms_sets.rb +7 -6
  229. data/lib/elasticsearch-serverless/api/synonyms/put_synonym.rb +9 -6
  230. data/lib/elasticsearch-serverless/api/synonyms/put_synonym_rule.rb +9 -7
  231. data/lib/elasticsearch-serverless/api/tasks/get.rb +9 -7
  232. data/lib/elasticsearch-serverless/api/terms_enum.rb +7 -9
  233. data/lib/elasticsearch-serverless/api/termvectors.rb +39 -16
  234. data/lib/elasticsearch-serverless/api/transform/delete_transform.rb +3 -5
  235. data/lib/elasticsearch-serverless/api/transform/get_transform.rb +5 -6
  236. data/lib/elasticsearch-serverless/api/transform/get_transform_stats.rb +4 -5
  237. data/lib/elasticsearch-serverless/api/transform/preview_transform.rb +4 -5
  238. data/lib/elasticsearch-serverless/api/transform/put_transform.rb +3 -4
  239. data/lib/elasticsearch-serverless/api/transform/reset_transform.rb +4 -5
  240. data/lib/elasticsearch-serverless/api/transform/schedule_now_transform.rb +7 -8
  241. data/lib/elasticsearch-serverless/api/transform/start_transform.rb +3 -5
  242. data/lib/elasticsearch-serverless/api/transform/stop_transform.rb +3 -4
  243. data/lib/elasticsearch-serverless/api/transform/update_transform.rb +3 -4
  244. data/lib/elasticsearch-serverless/api/update.rb +36 -24
  245. data/lib/elasticsearch-serverless/api/update_by_query.rb +102 -31
  246. data/lib/elasticsearch-serverless/api.rb +22 -25
  247. data/lib/elasticsearch-serverless/version.rb +1 -1
  248. data/lib/elasticsearch-serverless.rb +7 -0
  249. metadata +18 -7
@@ -23,39 +23,39 @@ module ElasticsearchServerless
23
23
  module Actions
24
24
  # Run a search with a search template.
25
25
  #
26
- # @option arguments [String, Array] :index Comma-separated list of data streams, indices,
27
- # and aliases to search. Supports wildcards (*).
26
+ # @option arguments [String, Array] :index A comma-separated list of data streams, indices, and aliases to search.
27
+ # It supports wildcards (+*+).
28
28
  # @option arguments [Boolean] :allow_no_indices If +false+, the request returns an error if any wildcard expression, index alias, or +_all+ value targets only missing or closed indices.
29
29
  # This behavior applies even if the request targets other open indices.
30
30
  # 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.
31
31
  # @option arguments [Boolean] :ccs_minimize_roundtrips If +true+, network round-trips are minimized for cross-cluster search requests.
32
- # @option arguments [String, Array<String>] :expand_wildcards Type of index that wildcard patterns can match.
32
+ # @option arguments [String, Array<String>] :expand_wildcards The type of index that wildcard patterns can match.
33
33
  # If the request can target data streams, this argument determines whether wildcard expressions match hidden data streams.
34
34
  # Supports comma-separated values, such as +open,hidden+.
35
35
  # Valid values are: +all+, +open+, +closed+, +hidden+, +none+.
36
36
  # @option arguments [Boolean] :explain If +true+, the response includes additional details about score computation as part of a hit.
37
37
  # @option arguments [Boolean] :ignore_throttled If +true+, specified concrete, expanded, or aliased indices are not included in the response when throttled. Server default: true.
38
38
  # @option arguments [Boolean] :ignore_unavailable If +false+, the request returns an error if it targets a missing or closed index.
39
- # @option arguments [String] :preference Specifies the node or shard the operation should be performed on.
40
- # Random by default.
39
+ # @option arguments [String] :preference The node or shard the operation should be performed on.
40
+ # It is random by default.
41
41
  # @option arguments [Boolean] :profile If +true+, the query execution is profiled.
42
- # @option arguments [String] :routing Custom value used to route operations to a specific shard.
42
+ # @option arguments [String] :routing A custom value used to route operations to a specific shard.
43
43
  # @option arguments [Time] :scroll Specifies how long a consistent view of the index
44
44
  # should be maintained for scrolled search.
45
45
  # @option arguments [String] :search_type The type of the search operation.
46
- # @option arguments [Boolean] :rest_total_hits_as_int If true, hits.total are rendered as an integer in the response.
46
+ # @option arguments [Boolean] :rest_total_hits_as_int If +true+, +hits.total+ is rendered as an integer in the response.
47
+ # If +false+, it is rendered as an object.
47
48
  # @option arguments [Boolean] :typed_keys If +true+, the response prefixes aggregation and suggester names with their respective types.
48
49
  # @option arguments [Hash] :headers Custom HTTP headers
49
50
  # @option arguments [Hash] :body request body
50
51
  #
51
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/current/search-template.html
52
+ # @see https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-search-template
52
53
  #
53
54
  def search_template(arguments = {})
54
- request_opts = { endpoint: arguments[:endpoint] || "search_template" }
55
+ request_opts = { endpoint: arguments[:endpoint] || 'search_template' }
55
56
 
56
- defined_params = [:index].inject({}) do |set_variables, variable|
57
+ defined_params = [:index].each_with_object({}) do |variable, set_variables|
57
58
  set_variables[variable] = arguments[variable] if arguments.key?(variable)
58
- set_variables
59
59
  end
60
60
  request_opts[:defined_params] = defined_params unless defined_params.empty?
61
61
 
@@ -72,7 +72,7 @@ module ElasticsearchServerless
72
72
  path = if _index
73
73
  "#{Utils.listify(_index)}/_search/template"
74
74
  else
75
- "_search/template"
75
+ '_search/template'
76
76
  end
77
77
  params = Utils.process_params(arguments)
78
78
 
@@ -30,10 +30,10 @@ module ElasticsearchServerless
30
30
  #
31
31
  # @option arguments [Hash] :headers Custom HTTP headers
32
32
  #
33
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-authenticate.html
33
+ # @see https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-security-authenticate
34
34
  #
35
35
  def authenticate(arguments = {})
36
- request_opts = { endpoint: arguments[:endpoint] || "security.authenticate" }
36
+ request_opts = { endpoint: arguments[:endpoint] || 'security.authenticate' }
37
37
 
38
38
  arguments = arguments.clone
39
39
  headers = arguments.delete(:headers) || {}
@@ -41,7 +41,7 @@ module ElasticsearchServerless
41
41
  body = nil
42
42
 
43
43
  method = ElasticsearchServerless::API::HTTP_GET
44
- path = "_security/_authenticate"
44
+ path = '_security/_authenticate'
45
45
  params = {}
46
46
 
47
47
  ElasticsearchServerless::API::Response.new(
@@ -24,18 +24,22 @@ module ElasticsearchServerless
24
24
  module Actions
25
25
  # Create an API key.
26
26
  # Create an API key for access without requiring basic authentication.
27
+ # IMPORTANT: If the credential that is used to authenticate this request is an API key, the derived API key cannot have any privileges.
28
+ # If you specify privileges, the API returns an error.
27
29
  # A successful request returns a JSON structure that contains the API key, its unique id, and its name.
28
30
  # If applicable, it also returns expiration information for the API key in milliseconds.
29
31
  # NOTE: By default, API keys never expire. You can specify expiration information when you create the API keys.
32
+ # The API keys are created by the Elasticsearch API key service, which is automatically enabled.
33
+ # To configure or turn off the API key service, refer to API key service setting documentation.
30
34
  #
31
35
  # @option arguments [String] :refresh If +true+ (the default) then refresh the affected shards to make this operation visible to search, if +wait_for+ then wait for a refresh to make this operation visible to search, if +false+ then do nothing with refreshes.
32
36
  # @option arguments [Hash] :headers Custom HTTP headers
33
37
  # @option arguments [Hash] :body request body
34
38
  #
35
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-create-api-key.html
39
+ # @see https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-security-create-api-key
36
40
  #
37
41
  def create_api_key(arguments = {})
38
- request_opts = { endpoint: arguments[:endpoint] || "security.create_api_key" }
42
+ request_opts = { endpoint: arguments[:endpoint] || 'security.create_api_key' }
39
43
 
40
44
  raise ArgumentError, "Required argument 'body' missing" unless arguments[:body]
41
45
 
@@ -45,7 +49,7 @@ module ElasticsearchServerless
45
49
  body = arguments.delete(:body)
46
50
 
47
51
  method = ElasticsearchServerless::API::HTTP_PUT
48
- path = "_security/api_key"
52
+ path = '_security/api_key'
49
53
  params = Utils.process_params(arguments)
50
54
 
51
55
  ElasticsearchServerless::API::Response.new(
@@ -24,19 +24,20 @@ module ElasticsearchServerless
24
24
  module Actions
25
25
  # Delete roles.
26
26
  # Delete roles in the native realm.
27
+ # The role management APIs are generally the preferred way to manage roles, rather than using file-based role management.
28
+ # The delete roles API cannot remove roles that are defined in roles files.
27
29
  #
28
- # @option arguments [String] :name Role name (*Required*)
30
+ # @option arguments [String] :name The name of the role. (*Required*)
29
31
  # @option arguments [String] :refresh If +true+ (the default) then refresh the affected shards to make this operation visible to search, if +wait_for+ then wait for a refresh to make this operation visible to search, if +false+ then do nothing with refreshes.
30
32
  # @option arguments [Hash] :headers Custom HTTP headers
31
33
  #
32
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-delete-role.html
34
+ # @see https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-security-delete-role
33
35
  #
34
36
  def delete_role(arguments = {})
35
- request_opts = { endpoint: arguments[:endpoint] || "security.delete_role" }
37
+ request_opts = { endpoint: arguments[:endpoint] || 'security.delete_role' }
36
38
 
37
- defined_params = [:name].inject({}) do |set_variables, variable|
39
+ defined_params = [:name].each_with_object({}) do |variable, set_variables|
38
40
  set_variables[variable] = arguments[variable] if arguments.key?(variable)
39
- set_variables
40
41
  end
41
42
  request_opts[:defined_params] = defined_params unless defined_params.empty?
42
43
 
@@ -46,10 +46,10 @@ module ElasticsearchServerless
46
46
  # @option arguments [Boolean] :with_profile_uid Determines whether to also retrieve the profile uid, for the API key owner principal, if it exists.
47
47
  # @option arguments [Hash] :headers Custom HTTP headers
48
48
  #
49
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-get-api-key.html
49
+ # @see https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-security-get-api-key
50
50
  #
51
51
  def get_api_key(arguments = {})
52
- request_opts = { endpoint: arguments[:endpoint] || "security.get_api_key" }
52
+ request_opts = { endpoint: arguments[:endpoint] || 'security.get_api_key' }
53
53
 
54
54
  arguments = arguments.clone
55
55
  headers = arguments.delete(:headers) || {}
@@ -57,7 +57,7 @@ module ElasticsearchServerless
57
57
  body = nil
58
58
 
59
59
  method = ElasticsearchServerless::API::HTTP_GET
60
- path = "_security/api_key"
60
+ path = '_security/api_key'
61
61
  params = Utils.process_params(arguments)
62
62
 
63
63
  ElasticsearchServerless::API::Response.new(
@@ -27,10 +27,10 @@ module ElasticsearchServerless
27
27
  #
28
28
  # @option arguments [Hash] :headers Custom HTTP headers
29
29
  #
30
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-get-builtin-privileges.html
30
+ # @see https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-security-get-builtin-privileges
31
31
  #
32
32
  def get_builtin_privileges(arguments = {})
33
- request_opts = { endpoint: arguments[:endpoint] || "security.get_builtin_privileges" }
33
+ request_opts = { endpoint: arguments[:endpoint] || 'security.get_builtin_privileges' }
34
34
 
35
35
  arguments = arguments.clone
36
36
  headers = arguments.delete(:headers) || {}
@@ -38,7 +38,7 @@ module ElasticsearchServerless
38
38
  body = nil
39
39
 
40
40
  method = ElasticsearchServerless::API::HTTP_GET
41
- path = "_security/privilege/_builtin"
41
+ path = '_security/privilege/_builtin'
42
42
  params = {}
43
43
 
44
44
  ElasticsearchServerless::API::Response.new(
@@ -24,18 +24,21 @@ module ElasticsearchServerless
24
24
  module Actions
25
25
  # Get roles.
26
26
  # Get roles in the native realm.
27
+ # The role management APIs are generally the preferred way to manage roles, rather than using file-based role management.
28
+ # The get roles API cannot retrieve roles that are defined in roles files.
27
29
  #
28
- # @option arguments [String, Array<String>] :name The name of the role. You can specify multiple roles as a comma-separated list. If you do not specify this parameter, the API returns information about all roles.
30
+ # @option arguments [String, Array<String>] :name The name of the role.
31
+ # You can specify multiple roles as a comma-separated list.
32
+ # If you do not specify this parameter, the API returns information about all roles.
29
33
  # @option arguments [Hash] :headers Custom HTTP headers
30
34
  #
31
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-get-role.html
35
+ # @see https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-security-get-role
32
36
  #
33
37
  def get_role(arguments = {})
34
- request_opts = { endpoint: arguments[:endpoint] || "security.get_role" }
38
+ request_opts = { endpoint: arguments[:endpoint] || 'security.get_role' }
35
39
 
36
- defined_params = [:name].inject({}) do |set_variables, variable|
40
+ defined_params = [:name].each_with_object({}) do |variable, set_variables|
37
41
  set_variables[variable] = arguments[variable] if arguments.key?(variable)
38
- set_variables
39
42
  end
40
43
  request_opts[:defined_params] = defined_params unless defined_params.empty?
41
44
 
@@ -50,16 +53,16 @@ module ElasticsearchServerless
50
53
  path = if _name
51
54
  "_security/role/#{Utils.listify(_name)}"
52
55
  else
53
- "_security/role"
56
+ '_security/role'
54
57
  end
55
58
  params = Utils.process_params(arguments)
56
59
 
57
60
  if Array(arguments[:ignore]).include?(404)
58
- Utils.rescue_from_not_found {
61
+ Utils.rescue_from_not_found do
59
62
  ElasticsearchServerless::API::Response.new(
60
63
  perform_request(method, path, params, body, headers, request_opts)
61
64
  )
62
- }
65
+ end
63
66
  else
64
67
  ElasticsearchServerless::API::Response.new(
65
68
  perform_request(method, path, params, body, headers, request_opts)
@@ -24,19 +24,20 @@ module ElasticsearchServerless
24
24
  module Actions
25
25
  # Check user privileges.
26
26
  # Determine whether the specified user has a specified list of privileges.
27
+ # All users can use this API, but only to determine their own privileges.
28
+ # To check the privileges of other users, you must use the run as feature.
27
29
  #
28
30
  # @option arguments [String] :user Username
29
31
  # @option arguments [Hash] :headers Custom HTTP headers
30
32
  # @option arguments [Hash] :body request body
31
33
  #
32
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-has-privileges.html
34
+ # @see https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-security-has-privileges
33
35
  #
34
36
  def has_privileges(arguments = {})
35
- request_opts = { endpoint: arguments[:endpoint] || "security.has_privileges" }
37
+ request_opts = { endpoint: arguments[:endpoint] || 'security.has_privileges' }
36
38
 
37
- defined_params = [:user].inject({}) do |set_variables, variable|
39
+ defined_params = [:user].each_with_object({}) do |variable, set_variables|
38
40
  set_variables[variable] = arguments[variable] if arguments.key?(variable)
39
- set_variables
40
41
  end
41
42
  request_opts[:defined_params] = defined_params unless defined_params.empty?
42
43
 
@@ -53,7 +54,7 @@ module ElasticsearchServerless
53
54
  path = if _user
54
55
  "_security/user/#{Utils.listify(_user)}/_has_privileges"
55
56
  else
56
- "_security/user/_has_privileges"
57
+ '_security/user/_has_privileges'
57
58
  end
58
59
  params = {}
59
60
 
@@ -25,20 +25,22 @@ module ElasticsearchServerless
25
25
  # Invalidate API keys.
26
26
  # This API invalidates API keys created by the create API key or grant API key APIs.
27
27
  # Invalidated API keys fail authentication, but they can still be viewed using the get API key information and query API key information APIs, for at least the configured retention period, until they are automatically deleted.
28
- # The +manage_api_key+ privilege allows deleting any API keys.
29
- # The +manage_own_api_key+ only allows deleting API keys that are owned by the user.
28
+ # To use this API, you must have at least the +manage_security+, +manage_api_key+, or +manage_own_api_key+ cluster privileges.
29
+ # The +manage_security+ privilege allows deleting any API key, including both REST and cross cluster API keys.
30
+ # The +manage_api_key+ privilege allows deleting any REST API key, but not cross cluster API keys.
31
+ # The +manage_own_api_key+ only allows deleting REST API keys that are owned by the user.
30
32
  # In addition, with the +manage_own_api_key+ privilege, an invalidation request must be issued in one of the three formats:
31
33
  # - Set the parameter +owner=true+.
32
- # - Or, set both +username+ and +realm_name+ to match the users identity.
34
+ # - Or, set both +username+ and +realm_name+ to match the user's identity.
33
35
  # - Or, if the request is issued by an API key, that is to say an API key invalidates itself, specify its ID in the +ids+ field.
34
36
  #
35
37
  # @option arguments [Hash] :headers Custom HTTP headers
36
38
  # @option arguments [Hash] :body request body
37
39
  #
38
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-invalidate-api-key.html
40
+ # @see https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-security-invalidate-api-key
39
41
  #
40
42
  def invalidate_api_key(arguments = {})
41
- request_opts = { endpoint: arguments[:endpoint] || "security.invalidate_api_key" }
43
+ request_opts = { endpoint: arguments[:endpoint] || 'security.invalidate_api_key' }
42
44
 
43
45
  raise ArgumentError, "Required argument 'body' missing" unless arguments[:body]
44
46
 
@@ -48,7 +50,7 @@ module ElasticsearchServerless
48
50
  body = arguments.delete(:body)
49
51
 
50
52
  method = ElasticsearchServerless::API::HTTP_DELETE
51
- path = "_security/api_key"
53
+ path = '_security/api_key'
52
54
  params = {}
53
55
 
54
56
  ElasticsearchServerless::API::Response.new(
@@ -32,14 +32,13 @@ module ElasticsearchServerless
32
32
  # @option arguments [Hash] :headers Custom HTTP headers
33
33
  # @option arguments [Hash] :body request body
34
34
  #
35
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-put-role.html
35
+ # @see https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-security-put-role
36
36
  #
37
37
  def put_role(arguments = {})
38
- request_opts = { endpoint: arguments[:endpoint] || "security.put_role" }
38
+ request_opts = { endpoint: arguments[:endpoint] || 'security.put_role' }
39
39
 
40
- defined_params = [:name].inject({}) do |set_variables, variable|
40
+ defined_params = [:name].each_with_object({}) do |variable, set_variables|
41
41
  set_variables[variable] = arguments[variable] if arguments.key?(variable)
42
- set_variables
43
42
  end
44
43
  request_opts[:defined_params] = defined_params unless defined_params.empty?
45
44
 
@@ -23,19 +23,25 @@ module ElasticsearchServerless
23
23
  module Security
24
24
  module Actions
25
25
  # Find API keys with a query.
26
- # Get a paginated list of API keys and their information. You can optionally filter the results with a query.
26
+ # Get a paginated list of API keys and their information.
27
+ # You can optionally filter the results with a query.
28
+ # To use this API, you must have at least the +manage_own_api_key+ or the +read_security+ cluster privileges.
29
+ # If you have only the +manage_own_api_key+ privilege, this API returns only the API keys that you own.
30
+ # If you have the +read_security+, +manage_api_key+, or greater privileges (including +manage_security+), this API returns all API keys regardless of ownership.
27
31
  #
28
32
  # @option arguments [Boolean] :with_limited_by Return the snapshot of the owner user's role descriptors associated with the API key.
29
- # An API key's actual permission is the intersection of its assigned role descriptors and the owner user's role descriptors.
30
- # @option arguments [Boolean] :with_profile_uid Determines whether to also retrieve the profile uid, for the API key owner principal, if it exists.
33
+ # An API key's actual permission is the intersection of its assigned role descriptors and the owner user's role descriptors (effectively limited by it).
34
+ # An API key cannot retrieve any API key’s limited-by role descriptors (including itself) unless it has +manage_api_key+ or higher privileges.
35
+ # @option arguments [Boolean] :with_profile_uid Determines whether to also retrieve the profile UID for the API key owner principal.
36
+ # If it exists, the profile UID is returned under the +profile_uid+ response field for each API key.
31
37
  # @option arguments [Boolean] :typed_keys Determines whether aggregation names are prefixed by their respective types in the response.
32
38
  # @option arguments [Hash] :headers Custom HTTP headers
33
39
  # @option arguments [Hash] :body request body
34
40
  #
35
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-query-api-key.html
41
+ # @see https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-security-query-api-keys
36
42
  #
37
43
  def query_api_keys(arguments = {})
38
- request_opts = { endpoint: arguments[:endpoint] || "security.query_api_keys" }
44
+ request_opts = { endpoint: arguments[:endpoint] || 'security.query_api_keys' }
39
45
 
40
46
  arguments = arguments.clone
41
47
  headers = arguments.delete(:headers) || {}
@@ -48,7 +54,7 @@ module ElasticsearchServerless
48
54
  ElasticsearchServerless::API::HTTP_GET
49
55
  end
50
56
 
51
- path = "_security/_query/api_key"
57
+ path = '_security/_query/api_key'
52
58
  params = Utils.process_params(arguments)
53
59
 
54
60
  ElasticsearchServerless::API::Response.new(
@@ -0,0 +1,61 @@
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
+ # Auto generated from commit f284cc16f4d4b4289bc679aa1529bb504190fe80
19
+ # @see https://github.com/elastic/elasticsearch-specification
20
+ #
21
+ module ElasticsearchServerless
22
+ module API
23
+ module Security
24
+ module Actions
25
+ # Find roles with a query.
26
+ # Get roles in a paginated manner.
27
+ # The role management APIs are generally the preferred way to manage roles, rather than using file-based role management.
28
+ # The query roles API does not retrieve roles that are defined in roles files, nor built-in ones.
29
+ # You can optionally filter the results with a query.
30
+ # Also, the results can be paginated and sorted.
31
+ #
32
+ # @option arguments [Hash] :headers Custom HTTP headers
33
+ # @option arguments [Hash] :body request body
34
+ #
35
+ # @see https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-security-query-role
36
+ #
37
+ def query_role(arguments = {})
38
+ request_opts = { endpoint: arguments[:endpoint] || 'security.query_role' }
39
+
40
+ arguments = arguments.clone
41
+ headers = arguments.delete(:headers) || {}
42
+
43
+ body = arguments.delete(:body)
44
+
45
+ method = if body
46
+ ElasticsearchServerless::API::HTTP_POST
47
+ else
48
+ ElasticsearchServerless::API::HTTP_GET
49
+ end
50
+
51
+ path = '_security/_query/role'
52
+ params = {}
53
+
54
+ ElasticsearchServerless::API::Response.new(
55
+ perform_request(method, path, params, body, headers, request_opts)
56
+ )
57
+ end
58
+ end
59
+ end
60
+ end
61
+ 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
+ # Auto generated from commit f284cc16f4d4b4289bc679aa1529bb504190fe80
19
+ # @see https://github.com/elastic/elasticsearch-specification
20
+ #
21
+ module ElasticsearchServerless
22
+ module API
23
+ module Security
24
+ module Actions
25
+ # Update an API key.
26
+ # Update attributes of an existing API key.
27
+ # This API supports updates to an API key's access scope, expiration, and metadata.
28
+ # To use this API, you must have at least the +manage_own_api_key+ cluster privilege.
29
+ # Users can only update API keys that they created or that were granted to them.
30
+ # To update another user’s API key, use the +run_as+ feature to submit a request on behalf of another user.
31
+ # IMPORTANT: It's not possible to use an API key as the authentication credential for this API. The owner user’s credentials are required.
32
+ # Use this API to update API keys created by the create API key or grant API Key APIs.
33
+ # If you need to apply the same update to many API keys, you can use the bulk update API keys API to reduce overhead.
34
+ # It's not possible to update expired API keys or API keys that have been invalidated by the invalidate API key API.
35
+ # The access scope of an API key is derived from the +role_descriptors+ you specify in the request and a snapshot of the owner user's permissions at the time of the request.
36
+ # The snapshot of the owner's permissions is updated automatically on every call.
37
+ # IMPORTANT: If you don't specify +role_descriptors+ in the request, a call to this API might still change the API key's access scope.
38
+ # This change can occur if the owner user's permissions have changed since the API key was created or last modified.
39
+ #
40
+ # @option arguments [String] :id The ID of the API key to update. (*Required*)
41
+ # @option arguments [Hash] :headers Custom HTTP headers
42
+ # @option arguments [Hash] :body request body
43
+ #
44
+ # @see https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-security-update-api-key
45
+ #
46
+ def update_api_key(arguments = {})
47
+ request_opts = { endpoint: arguments[:endpoint] || 'security.update_api_key' }
48
+
49
+ defined_params = [:id].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 'id' missing" unless arguments[:id]
55
+
56
+ arguments = arguments.clone
57
+ headers = arguments.delete(:headers) || {}
58
+
59
+ body = arguments.delete(:body)
60
+
61
+ _id = arguments.delete(:id)
62
+
63
+ method = ElasticsearchServerless::API::HTTP_PUT
64
+ path = "_security/api_key/#{Utils.listify(_id)}"
65
+ params = {}
66
+
67
+ ElasticsearchServerless::API::Response.new(
68
+ perform_request(method, path, params, body, headers, request_opts)
69
+ )
70
+ end
71
+ end
72
+ end
73
+ end
74
+ end
@@ -22,15 +22,15 @@ module ElasticsearchServerless
22
22
  module API
23
23
  module SQL
24
24
  module Actions
25
- # Clears the SQL cursor
25
+ # Clear an SQL search cursor.
26
26
  #
27
27
  # @option arguments [Hash] :headers Custom HTTP headers
28
28
  # @option arguments [Hash] :body request body
29
29
  #
30
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/current/clear-sql-cursor-api.html
30
+ # @see https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-sql-clear-cursor
31
31
  #
32
32
  def clear_cursor(arguments = {})
33
- request_opts = { endpoint: arguments[:endpoint] || "sql.clear_cursor" }
33
+ request_opts = { endpoint: arguments[:endpoint] || 'sql.clear_cursor' }
34
34
 
35
35
  raise ArgumentError, "Required argument 'body' missing" unless arguments[:body]
36
36
 
@@ -40,7 +40,7 @@ module ElasticsearchServerless
40
40
  body = arguments.delete(:body)
41
41
 
42
42
  method = ElasticsearchServerless::API::HTTP_POST
43
- path = "_sql/close"
43
+ path = '_sql/close'
44
44
  params = {}
45
45
 
46
46
  ElasticsearchServerless::API::Response.new(
@@ -22,19 +22,23 @@ module ElasticsearchServerless
22
22
  module API
23
23
  module SQL
24
24
  module Actions
25
- # Deletes an async SQL search or a stored synchronous SQL search. If the search is still running, the API cancels it.
25
+ # Delete an async SQL search.
26
+ # Delete an async SQL search or a stored synchronous SQL search.
27
+ # If the search is still running, the API cancels it.
28
+ # If the Elasticsearch security features are enabled, only the following users can use this API to delete a search:
29
+ # * Users with the +cancel_task+ cluster privilege.
30
+ # * The user who first submitted the search.
26
31
  #
27
- # @option arguments [String] :id Identifier for the search. (*Required*)
32
+ # @option arguments [String] :id The identifier for the search. (*Required*)
28
33
  # @option arguments [Hash] :headers Custom HTTP headers
29
34
  #
30
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/master/delete-async-sql-search-api.html
35
+ # @see https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-sql-delete-async
31
36
  #
32
37
  def delete_async(arguments = {})
33
- request_opts = { endpoint: arguments[:endpoint] || "sql.delete_async" }
38
+ request_opts = { endpoint: arguments[:endpoint] || 'sql.delete_async' }
34
39
 
35
- defined_params = [:id].inject({}) do |set_variables, variable|
40
+ defined_params = [:id].each_with_object({}) do |variable, set_variables|
36
41
  set_variables[variable] = arguments[variable] if arguments.key?(variable)
37
- set_variables
38
42
  end
39
43
  request_opts[:defined_params] = defined_params unless defined_params.empty?
40
44
 
@@ -22,26 +22,29 @@ module ElasticsearchServerless
22
22
  module API
23
23
  module SQL
24
24
  module Actions
25
- # Returns the current status and available results for an async SQL search or stored synchronous SQL search
25
+ # Get async SQL search results.
26
+ # Get the current status and available results for an async SQL search or stored synchronous SQL search.
27
+ # If the Elasticsearch security features are enabled, only the user who first submitted the SQL search can retrieve the search using this API.
26
28
  #
27
- # @option arguments [String] :id Identifier for the search. (*Required*)
28
- # @option arguments [String] :delimiter Separator for CSV results. The API only supports this parameter for CSV responses. Server default: ,.
29
- # @option arguments [String] :format Format for the response. You must specify a format using this parameter or the
30
- # Accept HTTP header. If you specify both, the API uses this parameter.
31
- # @option arguments [Time] :keep_alive Retention period for the search and its results. Defaults
32
- # to the +keep_alive+ period for the original SQL search.
33
- # @option arguments [Time] :wait_for_completion_timeout Period to wait for complete results. Defaults to no timeout,
34
- # meaning the request waits for complete search results.
29
+ # @option arguments [String] :id The identifier for the search. (*Required*)
30
+ # @option arguments [String] :delimiter The separator for CSV results.
31
+ # The API supports this parameter only for CSV responses. Server default: ,.
32
+ # @option arguments [String] :format The format for the response.
33
+ # You must specify a format using this parameter or the +Accept+ HTTP header.
34
+ # If you specify both, the API uses this parameter.
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.
37
+ # @option arguments [Time] :wait_for_completion_timeout The period to wait for complete results.
38
+ # It defaults to no timeout, meaning the request waits for complete search results.
35
39
  # @option arguments [Hash] :headers Custom HTTP headers
36
40
  #
37
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/master/get-async-sql-search-api.html
41
+ # @see https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-sql-get-async
38
42
  #
39
43
  def get_async(arguments = {})
40
- request_opts = { endpoint: arguments[:endpoint] || "sql.get_async" }
44
+ request_opts = { endpoint: arguments[:endpoint] || 'sql.get_async' }
41
45
 
42
- defined_params = [:id].inject({}) do |set_variables, variable|
46
+ defined_params = [:id].each_with_object({}) do |variable, set_variables|
43
47
  set_variables[variable] = arguments[variable] if arguments.key?(variable)
44
- set_variables
45
48
  end
46
49
  request_opts[:defined_params] = defined_params unless defined_params.empty?
47
50