elasticsearch-serverless 0.2.0 → 0.3.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (242) hide show
  1. checksums.yaml +4 -4
  2. data/lib/elasticsearch-serverless/api/async_search/delete.rb +9 -1
  3. data/lib/elasticsearch-serverless/api/async_search/get.rb +17 -3
  4. data/lib/elasticsearch-serverless/api/async_search/status.rb +9 -1
  5. data/lib/elasticsearch-serverless/api/async_search/submit.rb +15 -4
  6. data/lib/elasticsearch-serverless/api/bulk.rb +17 -4
  7. data/lib/elasticsearch-serverless/api/cat/aliases.rb +22 -6
  8. data/lib/elasticsearch-serverless/api/cat/component_templates.rb +22 -6
  9. data/lib/elasticsearch-serverless/api/cat/count.rb +25 -8
  10. data/lib/elasticsearch-serverless/api/cat/help.rb +16 -6
  11. data/lib/elasticsearch-serverless/api/cat/indices.rb +31 -9
  12. data/lib/elasticsearch-serverless/api/cat/ml_data_frame_analytics.rb +24 -8
  13. data/lib/elasticsearch-serverless/api/cat/ml_datafeeds.rb +29 -8
  14. data/lib/elasticsearch-serverless/api/cat/ml_jobs.rb +29 -8
  15. data/lib/elasticsearch-serverless/api/cat/ml_trained_models.rb +25 -8
  16. data/lib/elasticsearch-serverless/api/cat/transforms.rb +27 -9
  17. data/lib/elasticsearch-serverless/api/clear_scroll.rb +12 -3
  18. data/lib/elasticsearch-serverless/api/close_point_in_time.rb +3 -1
  19. data/lib/elasticsearch-serverless/api/cluster/delete_component_template.rb +14 -3
  20. data/lib/elasticsearch-serverless/api/cluster/exists_component_template.rb +18 -5
  21. data/lib/elasticsearch-serverless/api/cluster/get_component_template.rb +16 -4
  22. data/lib/elasticsearch-serverless/api/cluster/info.rb +11 -2
  23. data/lib/elasticsearch-serverless/api/cluster/put_component_template.rb +17 -7
  24. data/lib/elasticsearch-serverless/api/connector/check_in.rb +9 -1
  25. data/lib/elasticsearch-serverless/api/connector/delete.rb +14 -6
  26. data/lib/elasticsearch-serverless/api/connector/get.rb +13 -5
  27. data/lib/elasticsearch-serverless/api/connector/list.rb +7 -5
  28. data/lib/elasticsearch-serverless/api/connector/post.rb +7 -5
  29. data/lib/elasticsearch-serverless/api/connector/put.rb +14 -6
  30. data/lib/elasticsearch-serverless/api/connector/sync_job_cancel.rb +13 -5
  31. data/lib/elasticsearch-serverless/api/connector/sync_job_delete.rb +13 -5
  32. data/lib/elasticsearch-serverless/api/connector/sync_job_get.rb +13 -5
  33. data/lib/elasticsearch-serverless/api/connector/sync_job_list.rb +8 -6
  34. data/lib/elasticsearch-serverless/api/connector/sync_job_post.rb +7 -5
  35. data/lib/elasticsearch-serverless/api/connector/update_active_filtering.rb +9 -1
  36. data/lib/elasticsearch-serverless/api/connector/update_api_key_id.rb +13 -5
  37. data/lib/elasticsearch-serverless/api/connector/update_configuration.rb +13 -5
  38. data/lib/elasticsearch-serverless/api/connector/update_error.rb +9 -1
  39. data/lib/elasticsearch-serverless/api/connector/update_filtering.rb +13 -5
  40. data/lib/elasticsearch-serverless/api/connector/update_filtering_validation.rb +9 -1
  41. data/lib/elasticsearch-serverless/api/connector/update_index_name.rb +13 -5
  42. data/lib/elasticsearch-serverless/api/connector/update_name.rb +13 -5
  43. data/lib/elasticsearch-serverless/api/connector/update_native.rb +13 -5
  44. data/lib/elasticsearch-serverless/api/connector/update_pipeline.rb +13 -5
  45. data/lib/elasticsearch-serverless/api/connector/update_scheduling.rb +13 -5
  46. data/lib/elasticsearch-serverless/api/connector/update_service_type.rb +13 -5
  47. data/lib/elasticsearch-serverless/api/connector/update_status.rb +9 -1
  48. data/lib/elasticsearch-serverless/api/count.rb +30 -10
  49. data/lib/elasticsearch-serverless/api/create.rb +21 -5
  50. data/lib/elasticsearch-serverless/api/delete.rb +17 -5
  51. data/lib/elasticsearch-serverless/api/delete_by_query.rb +38 -11
  52. data/lib/elasticsearch-serverless/api/delete_script.rb +14 -3
  53. data/lib/elasticsearch-serverless/api/enrich/delete_policy.rb +10 -1
  54. data/lib/elasticsearch-serverless/api/enrich/execute_policy.rb +9 -1
  55. data/lib/elasticsearch-serverless/api/enrich/get_policy.rb +12 -2
  56. data/lib/elasticsearch-serverless/api/enrich/put_policy.rb +10 -1
  57. data/lib/elasticsearch-serverless/api/enrich/stats.rb +4 -1
  58. data/lib/elasticsearch-serverless/api/eql/delete.rb +12 -2
  59. data/lib/elasticsearch-serverless/api/eql/get.rb +13 -3
  60. data/lib/elasticsearch-serverless/api/eql/get_status.rb +9 -1
  61. data/lib/elasticsearch-serverless/api/eql/search.rb +9 -1
  62. data/lib/elasticsearch-serverless/api/exists.rb +20 -6
  63. data/lib/elasticsearch-serverless/api/exists_source.rb +16 -4
  64. data/lib/elasticsearch-serverless/api/explain.rb +17 -5
  65. data/lib/elasticsearch-serverless/api/field_caps.rb +12 -2
  66. data/lib/elasticsearch-serverless/api/get.rb +18 -5
  67. data/lib/elasticsearch-serverless/api/get_script.rb +10 -1
  68. data/lib/elasticsearch-serverless/api/get_source.rb +10 -1
  69. data/lib/elasticsearch-serverless/api/graph/explore.rb +12 -2
  70. data/lib/elasticsearch-serverless/api/index.rb +25 -6
  71. data/lib/elasticsearch-serverless/api/indices/add_block.rb +11 -2
  72. data/lib/elasticsearch-serverless/api/indices/analyze.rb +12 -2
  73. data/lib/elasticsearch-serverless/api/indices/create.rb +16 -4
  74. data/lib/elasticsearch-serverless/api/indices/create_data_stream.rb +16 -2
  75. data/lib/elasticsearch-serverless/api/indices/data_streams_stats.rb +15 -3
  76. data/lib/elasticsearch-serverless/api/indices/delete.rb +25 -7
  77. data/lib/elasticsearch-serverless/api/indices/delete_alias.rb +18 -5
  78. data/lib/elasticsearch-serverless/api/indices/delete_data_lifecycle.rb +11 -2
  79. data/lib/elasticsearch-serverless/api/indices/delete_data_stream.rb +10 -1
  80. data/lib/elasticsearch-serverless/api/indices/delete_index_template.rb +9 -1
  81. data/lib/elasticsearch-serverless/api/indices/exists.rb +17 -4
  82. data/lib/elasticsearch-serverless/api/indices/exists_alias.rb +19 -5
  83. data/lib/elasticsearch-serverless/api/indices/exists_index_template.rb +9 -1
  84. data/lib/elasticsearch-serverless/api/indices/explain_data_lifecycle.rb +11 -2
  85. data/lib/elasticsearch-serverless/api/indices/get.rb +18 -4
  86. data/lib/elasticsearch-serverless/api/indices/get_alias.rb +23 -6
  87. data/lib/elasticsearch-serverless/api/indices/get_data_lifecycle.rb +16 -3
  88. data/lib/elasticsearch-serverless/api/indices/get_data_stream.rb +14 -3
  89. data/lib/elasticsearch-serverless/api/indices/get_index_template.rb +9 -1
  90. data/lib/elasticsearch-serverless/api/indices/get_mapping.rb +21 -5
  91. data/lib/elasticsearch-serverless/api/indices/get_settings.rb +26 -6
  92. data/lib/elasticsearch-serverless/api/indices/migrate_to_data_stream.rb +10 -1
  93. data/lib/elasticsearch-serverless/api/indices/modify_data_stream.rb +4 -1
  94. data/lib/elasticsearch-serverless/api/indices/put_alias.rb +20 -5
  95. data/lib/elasticsearch-serverless/api/indices/put_data_lifecycle.rb +22 -6
  96. data/lib/elasticsearch-serverless/api/indices/put_index_template.rb +11 -2
  97. data/lib/elasticsearch-serverless/api/indices/put_mapping.rb +20 -5
  98. data/lib/elasticsearch-serverless/api/indices/put_settings.rb +28 -7
  99. data/lib/elasticsearch-serverless/api/indices/put_template.rb +14 -3
  100. data/lib/elasticsearch-serverless/api/indices/refresh.rb +19 -4
  101. data/lib/elasticsearch-serverless/api/indices/resolve_index.rb +15 -3
  102. data/lib/elasticsearch-serverless/api/indices/rollover.rb +19 -5
  103. data/lib/elasticsearch-serverless/api/indices/simulate_index_template.rb +9 -1
  104. data/lib/elasticsearch-serverless/api/indices/simulate_template.rb +11 -2
  105. data/lib/elasticsearch-serverless/api/indices/update_aliases.rb +8 -3
  106. data/lib/elasticsearch-serverless/api/indices/validate_query.rb +24 -7
  107. data/lib/elasticsearch-serverless/api/inference/delete.rb +9 -1
  108. data/lib/elasticsearch-serverless/api/inference/get.rb +9 -1
  109. data/lib/elasticsearch-serverless/api/inference/inference.rb +9 -1
  110. data/lib/elasticsearch-serverless/api/inference/put.rb +9 -1
  111. data/lib/elasticsearch-serverless/api/info.rb +4 -1
  112. data/lib/elasticsearch-serverless/api/ingest/delete_pipeline.rb +15 -4
  113. data/lib/elasticsearch-serverless/api/ingest/get_pipeline.rb +14 -3
  114. data/lib/elasticsearch-serverless/api/ingest/processor_grok.rb +3 -1
  115. data/lib/elasticsearch-serverless/api/ingest/put_pipeline.rb +9 -1
  116. data/lib/elasticsearch-serverless/api/ingest/simulate.rb +11 -2
  117. data/lib/elasticsearch-serverless/api/license/get.rb +8 -4
  118. data/lib/elasticsearch-serverless/api/logstash/delete_pipeline.rb +9 -1
  119. data/lib/elasticsearch-serverless/api/logstash/get_pipeline.rb +9 -1
  120. data/lib/elasticsearch-serverless/api/logstash/put_pipeline.rb +9 -1
  121. data/lib/elasticsearch-serverless/api/machine_learning/close_job.rb +14 -4
  122. data/lib/elasticsearch-serverless/api/machine_learning/delete_calendar.rb +10 -1
  123. data/lib/elasticsearch-serverless/api/machine_learning/delete_calendar_event.rb +12 -3
  124. data/lib/elasticsearch-serverless/api/machine_learning/delete_calendar_job.rb +12 -3
  125. data/lib/elasticsearch-serverless/api/machine_learning/delete_data_frame_analytics.rb +10 -2
  126. data/lib/elasticsearch-serverless/api/machine_learning/delete_datafeed.rb +16 -4
  127. data/lib/elasticsearch-serverless/api/machine_learning/delete_filter.rb +10 -2
  128. data/lib/elasticsearch-serverless/api/machine_learning/delete_job.rb +17 -6
  129. data/lib/elasticsearch-serverless/api/machine_learning/delete_trained_model.rb +11 -3
  130. data/lib/elasticsearch-serverless/api/machine_learning/delete_trained_model_alias.rb +10 -2
  131. data/lib/elasticsearch-serverless/api/machine_learning/estimate_model_memory.rb +4 -1
  132. data/lib/elasticsearch-serverless/api/machine_learning/evaluate_data_frame.rb +4 -2
  133. data/lib/elasticsearch-serverless/api/machine_learning/flush_job.rb +19 -6
  134. data/lib/elasticsearch-serverless/api/machine_learning/get_calendar_events.rb +9 -1
  135. data/lib/elasticsearch-serverless/api/machine_learning/get_calendars.rb +9 -1
  136. data/lib/elasticsearch-serverless/api/machine_learning/get_data_frame_analytics.rb +24 -4
  137. data/lib/elasticsearch-serverless/api/machine_learning/get_data_frame_analytics_stats.rb +21 -3
  138. data/lib/elasticsearch-serverless/api/machine_learning/get_datafeed_stats.rb +20 -3
  139. data/lib/elasticsearch-serverless/api/machine_learning/get_datafeeds.rb +23 -4
  140. data/lib/elasticsearch-serverless/api/machine_learning/get_filters.rb +9 -1
  141. data/lib/elasticsearch-serverless/api/machine_learning/get_job_stats.rb +21 -3
  142. data/lib/elasticsearch-serverless/api/machine_learning/get_jobs.rb +23 -4
  143. data/lib/elasticsearch-serverless/api/machine_learning/get_overall_buckets.rb +30 -7
  144. data/lib/elasticsearch-serverless/api/machine_learning/get_trained_models.rb +28 -7
  145. data/lib/elasticsearch-serverless/api/machine_learning/get_trained_models_stats.rb +17 -3
  146. data/lib/elasticsearch-serverless/api/machine_learning/infer_trained_model.rb +9 -1
  147. data/lib/elasticsearch-serverless/api/machine_learning/open_job.rb +10 -2
  148. data/lib/elasticsearch-serverless/api/machine_learning/post_calendar_events.rb +9 -1
  149. data/lib/elasticsearch-serverless/api/machine_learning/preview_data_frame_analytics.rb +9 -1
  150. data/lib/elasticsearch-serverless/api/machine_learning/preview_datafeed.rb +13 -2
  151. data/lib/elasticsearch-serverless/api/machine_learning/put_calendar.rb +9 -1
  152. data/lib/elasticsearch-serverless/api/machine_learning/put_calendar_job.rb +9 -1
  153. data/lib/elasticsearch-serverless/api/machine_learning/put_data_frame_analytics.rb +12 -2
  154. data/lib/elasticsearch-serverless/api/machine_learning/put_datafeed.rb +17 -5
  155. data/lib/elasticsearch-serverless/api/machine_learning/put_filter.rb +9 -1
  156. data/lib/elasticsearch-serverless/api/machine_learning/put_job.rb +11 -2
  157. data/lib/elasticsearch-serverless/api/machine_learning/put_trained_model.rb +14 -3
  158. data/lib/elasticsearch-serverless/api/machine_learning/put_trained_model_alias.rb +12 -2
  159. data/lib/elasticsearch-serverless/api/machine_learning/put_trained_model_definition_part.rb +11 -2
  160. data/lib/elasticsearch-serverless/api/machine_learning/put_trained_model_vocabulary.rb +9 -1
  161. data/lib/elasticsearch-serverless/api/machine_learning/reset_job.rb +14 -3
  162. data/lib/elasticsearch-serverless/api/machine_learning/start_data_frame_analytics.rb +14 -3
  163. data/lib/elasticsearch-serverless/api/machine_learning/start_datafeed.rb +27 -8
  164. data/lib/elasticsearch-serverless/api/machine_learning/start_trained_model_deployment.rb +25 -5
  165. data/lib/elasticsearch-serverless/api/machine_learning/stop_data_frame_analytics.rb +23 -4
  166. data/lib/elasticsearch-serverless/api/machine_learning/stop_datafeed.rb +19 -3
  167. data/lib/elasticsearch-serverless/api/machine_learning/stop_trained_model_deployment.rb +15 -3
  168. data/lib/elasticsearch-serverless/api/machine_learning/update_data_frame_analytics.rb +12 -2
  169. data/lib/elasticsearch-serverless/api/machine_learning/update_datafeed.rb +21 -4
  170. data/lib/elasticsearch-serverless/api/machine_learning/update_filter.rb +9 -1
  171. data/lib/elasticsearch-serverless/api/machine_learning/update_job.rb +9 -1
  172. data/lib/elasticsearch-serverless/api/machine_learning/update_trained_model_deployment.rb +15 -2
  173. data/lib/elasticsearch-serverless/api/mget.rb +17 -4
  174. data/lib/elasticsearch-serverless/api/msearch.rb +15 -1
  175. data/lib/elasticsearch-serverless/api/msearch_template.rb +16 -4
  176. data/lib/elasticsearch-serverless/api/mtermvectors.rb +14 -8
  177. data/lib/elasticsearch-serverless/api/open_point_in_time.rb +14 -3
  178. data/lib/elasticsearch-serverless/api/ping.rb +4 -1
  179. data/lib/elasticsearch-serverless/api/put_script.rb +18 -5
  180. data/lib/elasticsearch-serverless/api/query_rules/delete_rule.rb +9 -1
  181. data/lib/elasticsearch-serverless/api/query_rules/delete_ruleset.rb +9 -1
  182. data/lib/elasticsearch-serverless/api/query_rules/get_rule.rb +9 -1
  183. data/lib/elasticsearch-serverless/api/query_rules/get_ruleset.rb +9 -1
  184. data/lib/elasticsearch-serverless/api/query_rules/list_rulesets.rb +3 -1
  185. data/lib/elasticsearch-serverless/api/query_rules/put_rule.rb +9 -1
  186. data/lib/elasticsearch-serverless/api/query_rules/put_ruleset.rb +9 -1
  187. data/lib/elasticsearch-serverless/api/rank_eval.rb +11 -2
  188. data/lib/elasticsearch-serverless/api/reindex.rb +11 -7
  189. data/lib/elasticsearch-serverless/api/render_search_template.rb +11 -2
  190. data/lib/elasticsearch-serverless/api/scripts_painless_execute.rb +4 -1
  191. data/lib/elasticsearch-serverless/api/scroll.rb +9 -1
  192. data/lib/elasticsearch-serverless/api/search.rb +107 -30
  193. data/lib/elasticsearch-serverless/api/search_application/delete.rb +9 -1
  194. data/lib/elasticsearch-serverless/api/search_application/delete_behavioral_analytics.rb +9 -1
  195. data/lib/elasticsearch-serverless/api/search_application/get.rb +9 -1
  196. data/lib/elasticsearch-serverless/api/search_application/get_behavioral_analytics.rb +9 -1
  197. data/lib/elasticsearch-serverless/api/search_application/list.rb +3 -1
  198. data/lib/elasticsearch-serverless/api/search_application/put.rb +9 -1
  199. data/lib/elasticsearch-serverless/api/search_application/put_behavioral_analytics.rb +9 -1
  200. data/lib/elasticsearch-serverless/api/search_application/search.rb +9 -1
  201. data/lib/elasticsearch-serverless/api/search_mvt.rb +27 -7
  202. data/lib/elasticsearch-serverless/api/search_template.rb +22 -6
  203. data/lib/elasticsearch-serverless/api/security/authenticate.rb +6 -2
  204. data/lib/elasticsearch-serverless/api/security/create_api_key.rb +4 -1
  205. data/lib/elasticsearch-serverless/api/security/get_api_key.rb +19 -7
  206. data/lib/elasticsearch-serverless/api/security/has_privileges.rb +10 -1
  207. data/lib/elasticsearch-serverless/api/security/invalidate_api_key.rb +4 -1
  208. data/lib/elasticsearch-serverless/api/security/query_api_keys.rb +7 -3
  209. data/lib/elasticsearch-serverless/api/security/update_api_key.rb +10 -1
  210. data/lib/elasticsearch-serverless/api/sql/clear_cursor.rb +3 -1
  211. data/lib/elasticsearch-serverless/api/sql/delete_async.rb +9 -1
  212. data/lib/elasticsearch-serverless/api/sql/get_async.rb +15 -4
  213. data/lib/elasticsearch-serverless/api/sql/get_async_status.rb +9 -1
  214. data/lib/elasticsearch-serverless/api/sql/query.rb +3 -1
  215. data/lib/elasticsearch-serverless/api/sql/translate.rb +3 -1
  216. data/lib/elasticsearch-serverless/api/synonyms/delete_synonym.rb +9 -1
  217. data/lib/elasticsearch-serverless/api/synonyms/delete_synonym_rule.rb +9 -1
  218. data/lib/elasticsearch-serverless/api/synonyms/get_synonym.rb +9 -1
  219. data/lib/elasticsearch-serverless/api/synonyms/get_synonym_rule.rb +9 -1
  220. data/lib/elasticsearch-serverless/api/synonyms/get_synonyms_sets.rb +3 -1
  221. data/lib/elasticsearch-serverless/api/synonyms/put_synonym.rb +9 -1
  222. data/lib/elasticsearch-serverless/api/synonyms/put_synonym_rule.rb +9 -1
  223. data/lib/elasticsearch-serverless/api/tasks/get.rb +13 -3
  224. data/lib/elasticsearch-serverless/api/terms_enum.rb +9 -1
  225. data/lib/elasticsearch-serverless/api/termvectors.rb +21 -9
  226. data/lib/elasticsearch-serverless/api/transform/delete_transform.rb +14 -3
  227. data/lib/elasticsearch-serverless/api/transform/get_transform.rb +23 -4
  228. data/lib/elasticsearch-serverless/api/transform/get_transform_stats.rb +20 -3
  229. data/lib/elasticsearch-serverless/api/transform/preview_transform.rb +15 -5
  230. data/lib/elasticsearch-serverless/api/transform/put_transform.rb +17 -7
  231. data/lib/elasticsearch-serverless/api/transform/reset_transform.rb +14 -3
  232. data/lib/elasticsearch-serverless/api/transform/schedule_now_transform.rb +11 -3
  233. data/lib/elasticsearch-serverless/api/transform/start_transform.rb +10 -3
  234. data/lib/elasticsearch-serverless/api/transform/stop_transform.rb +23 -6
  235. data/lib/elasticsearch-serverless/api/transform/update_transform.rb +15 -4
  236. data/lib/elasticsearch-serverless/api/update.rb +23 -7
  237. data/lib/elasticsearch-serverless/api/update_by_query.rb +36 -9
  238. data/lib/elasticsearch-serverless/api.rb +3 -2
  239. data/lib/elasticsearch-serverless/version.rb +1 -1
  240. data/lib/elasticsearch-serverless.rb +4 -3
  241. metadata +5 -76
  242. data/lib/elasticsearch-serverless/api/connector/last_sync.rb +0 -59
@@ -25,13 +25,26 @@ module ElasticsearchServerless
25
25
  # Starts a trained model deployment, which allocates the model to every machine learning node.
26
26
  #
27
27
  # @option arguments [String] :model_id The unique identifier of the trained model. Currently, only PyTorch models are supported. (*Required*)
28
- # @option arguments [Integer] :number_of_allocations The number of model allocations on each node where the model is deployed. All allocations on a node share the same copy of the model in memory but use a separate set of threads to evaluate the model. Increasing this value generally increases the throughput. If this setting is greater than the number of hardware threads it will automatically be changed to a value less than the number of hardware threads. Server default: 1.
28
+ # @option arguments [Integer] :number_of_allocations The number of model allocations on each node where the model is deployed.
29
+ # All allocations on a node share the same copy of the model in memory but use
30
+ # a separate set of threads to evaluate the model.
31
+ # Increasing this value generally increases the throughput.
32
+ # If this setting is greater than the number of hardware threads
33
+ # it will automatically be changed to a value less than the number of hardware threads. Server default: 1.
29
34
  # @option arguments [Hash] :headers Custom HTTP headers
30
35
  # @option arguments [Hash] :body request body
31
36
  #
32
37
  # @see https://www.elastic.co/guide/en/elasticsearch/reference/current/update-trained-model-deployment.html
33
38
  #
34
39
  def update_trained_model_deployment(arguments = {})
40
+ request_opts = { endpoint: arguments[:endpoint] || "ml.update_trained_model_deployment" }
41
+
42
+ defined_params = [:model_id].inject({}) do |set_variables, variable|
43
+ set_variables[variable] = arguments[variable] if arguments.key?(variable)
44
+ set_variables
45
+ end
46
+ request_opts[:defined_params] = defined_params unless defined_params.empty?
47
+
35
48
  raise ArgumentError, "Required argument 'model_id' missing" unless arguments[:model_id]
36
49
 
37
50
  arguments = arguments.clone
@@ -46,7 +59,7 @@ module ElasticsearchServerless
46
59
  params = Utils.process_params(arguments)
47
60
 
48
61
  ElasticsearchServerless::API::Response.new(
49
- perform_request(method, path, params, body, headers)
62
+ perform_request(method, path, params, body, headers, request_opts)
50
63
  )
51
64
  end
52
65
  end
@@ -24,14 +24,19 @@ module ElasticsearchServerless
24
24
  # Allows to get multiple documents in one request.
25
25
  #
26
26
  # @option arguments [String] :index Name of the index to retrieve documents from when +ids+ are specified, or when a document in the +docs+ array does not specify an index.
27
- # @option arguments [Boolean] :force_synthetic_source Should this request force synthetic _source? Use this to test if the mapping supports synthetic _source and to get a sense of the worst case performance. Fetches with this enabled will be slower the enabling synthetic source natively in the index.
27
+ # @option arguments [Boolean] :force_synthetic_source Should this request force synthetic _source?
28
+ # Use this to test if the mapping supports synthetic _source and to get a sense of the worst case performance.
29
+ # Fetches with this enabled will be slower the enabling synthetic source natively in the index.
28
30
  # @option arguments [String] :preference Specifies the node or shard the operation should be performed on. Random by default.
29
31
  # @option arguments [Boolean] :realtime If +true+, the request is real-time as opposed to near-real-time. Server default: true.
30
32
  # @option arguments [Boolean] :refresh If +true+, the request refreshes relevant shards before retrieving documents.
31
33
  # @option arguments [String] :routing Custom value used to route operations to a specific shard.
32
34
  # @option arguments [Boolean, String, Array<String>] :_source True or false to return the +_source+ field or not, or a list of fields to return.
33
- # @option arguments [String, Array<String>] :_source_excludes A comma-separated list of source fields to exclude from the response. You can also use this parameter to exclude fields from the subset specified in +_source_includes+ query parameter.
34
- # @option arguments [String, Array<String>] :_source_includes A comma-separated list of source fields to include in the response. If this parameter is specified, only these source fields are returned. You can exclude fields from this subset using the +_source_excludes+ query parameter. If the +_source+ parameter is +false+, this parameter is ignored.
35
+ # @option arguments [String, Array<String>] :_source_excludes A comma-separated list of source fields to exclude from the response.
36
+ # You can also use this parameter to exclude fields from the subset specified in +_source_includes+ query parameter.
37
+ # @option arguments [String, Array<String>] :_source_includes A comma-separated list of source fields to include in the response.
38
+ # If this parameter is specified, only these source fields are returned. You can exclude fields from this subset using the +_source_excludes+ query parameter.
39
+ # If the +_source+ parameter is +false+, this parameter is ignored.
35
40
  # @option arguments [String, Array<String>] :stored_fields If +true+, retrieves the document fields stored in the index rather than the document +_source+. Server default: false.
36
41
  # @option arguments [Hash] :headers Custom HTTP headers
37
42
  # @option arguments [Hash] :body request body
@@ -39,6 +44,14 @@ module ElasticsearchServerless
39
44
  # @see https://www.elastic.co/guide/en/elasticsearch/reference/master/docs-multi-get.html
40
45
  #
41
46
  def mget(arguments = {})
47
+ request_opts = { endpoint: arguments[:endpoint] || "mget" }
48
+
49
+ defined_params = [:index].inject({}) do |set_variables, variable|
50
+ set_variables[variable] = arguments[variable] if arguments.key?(variable)
51
+ set_variables
52
+ end
53
+ request_opts[:defined_params] = defined_params unless defined_params.empty?
54
+
42
55
  raise ArgumentError, "Required argument 'body' missing" unless arguments[:body]
43
56
 
44
57
  arguments = arguments.clone
@@ -57,7 +70,7 @@ module ElasticsearchServerless
57
70
  params = Utils.process_params(arguments)
58
71
 
59
72
  ElasticsearchServerless::API::Response.new(
60
- perform_request(method, path, params, body, headers)
73
+ perform_request(method, path, params, body, headers, request_opts)
61
74
  )
62
75
  end
63
76
  end
@@ -29,6 +29,12 @@ module ElasticsearchServerless
29
29
  # @option arguments [String, Array<String>] :expand_wildcards Type of index that wildcard expressions can match. If the request can target data streams, this argument determines whether wildcard expressions match hidden data streams.
30
30
  # @option arguments [Boolean] :ignore_throttled If true, concrete, expanded or aliased indices are ignored when frozen.
31
31
  # @option arguments [Boolean] :ignore_unavailable If true, missing or closed indices are not included in the response.
32
+ # @option arguments [Boolean] :include_named_queries_score Indicates whether hit.matched_queries should be rendered as a map that includes
33
+ # the name of the matched query associated with its score (true)
34
+ # or as an array containing the name of the matched queries (false)
35
+ # This functionality reruns each named query on every hit in a search response.
36
+ # Typically, this adds a small overhead to a request.
37
+ # However, using computationally expensive named queries on a large number of hits may add significant overhead.
32
38
  # @option arguments [Integer] :max_concurrent_searches Maximum number of concurrent searches the multi search API can execute.
33
39
  # @option arguments [Integer] :max_concurrent_shard_requests Maximum number of concurrent shard requests that each sub-search request executes per node. Server default: 5.
34
40
  # @option arguments [Integer] :pre_filter_shard_size Defines a threshold that enforces a pre-filter roundtrip to prefilter search shards based on query rewriting if the number of shards the search request expands to exceeds the threshold. This filter roundtrip can limit the number of shards significantly if for instance a shard can not match any documents based on its rewrite method i.e., if date filters are mandatory to match but the shard bounds and the query are disjoint.
@@ -42,6 +48,14 @@ module ElasticsearchServerless
42
48
  # @see https://www.elastic.co/guide/en/elasticsearch/reference/master/search-multi-search.html
43
49
  #
44
50
  def msearch(arguments = {})
51
+ request_opts = { endpoint: arguments[:endpoint] || "msearch" }
52
+
53
+ defined_params = [:index].inject({}) do |set_variables, variable|
54
+ set_variables[variable] = arguments[variable] if arguments.key?(variable)
55
+ set_variables
56
+ end
57
+ request_opts[:defined_params] = defined_params unless defined_params.empty?
58
+
45
59
  raise ArgumentError, "Required argument 'body' missing" unless arguments[:body]
46
60
 
47
61
  arguments = arguments.clone
@@ -83,7 +97,7 @@ module ElasticsearchServerless
83
97
 
84
98
  headers.merge!("Content-Type" => "application/x-ndjson")
85
99
  ElasticsearchServerless::API::Response.new(
86
- perform_request(method, path, params, payload, headers)
100
+ perform_request(method, path, params, payload, headers, request_opts)
87
101
  )
88
102
  end
89
103
  end
@@ -23,11 +23,15 @@ module ElasticsearchServerless
23
23
  module Actions
24
24
  # Runs multiple templated searches with a single request.
25
25
  #
26
- # @option arguments [String, Array] :index Comma-separated list of data streams, indices, and aliases to search. Supports wildcards (+*+). To search all data streams and indices, omit this parameter or use +*+.
26
+ # @option arguments [String, Array] :index Comma-separated list of data streams, indices, and aliases to search.
27
+ # Supports wildcards (+*+).
28
+ # To search all data streams and indices, omit this parameter or use +*+.
27
29
  # @option arguments [Boolean] :ccs_minimize_roundtrips If +true+, network round-trips are minimized for cross-cluster search requests. Server default: true.
28
30
  # @option arguments [Integer] :max_concurrent_searches Maximum number of concurrent searches the API can run.
29
- # @option arguments [String] :search_type The type of the search operation. Available options: +query_then_fetch+, +dfs_query_then_fetch+.
30
- # @option arguments [Boolean] :rest_total_hits_as_int If +true+, the response returns +hits.total+ as an integer. If +false+, it returns +hits.total+ as an object.
31
+ # @option arguments [String] :search_type The type of the search operation.
32
+ # Available options: +query_then_fetch+, +dfs_query_then_fetch+.
33
+ # @option arguments [Boolean] :rest_total_hits_as_int If +true+, the response returns +hits.total+ as an integer.
34
+ # If +false+, it returns +hits.total+ as an object.
31
35
  # @option arguments [Boolean] :typed_keys If +true+, the response prefixes aggregation and suggester names with their respective types.
32
36
  # @option arguments [Hash] :headers Custom HTTP headers
33
37
  # @option arguments [Hash] :body search_templates
@@ -35,6 +39,14 @@ module ElasticsearchServerless
35
39
  # @see https://www.elastic.co/guide/en/elasticsearch/reference/current/search-multi-search.html
36
40
  #
37
41
  def msearch_template(arguments = {})
42
+ request_opts = { endpoint: arguments[:endpoint] || "msearch_template" }
43
+
44
+ defined_params = [:index].inject({}) do |set_variables, variable|
45
+ set_variables[variable] = arguments[variable] if arguments.key?(variable)
46
+ set_variables
47
+ end
48
+ request_opts[:defined_params] = defined_params unless defined_params.empty?
49
+
38
50
  raise ArgumentError, "Required argument 'body' missing" unless arguments[:body]
39
51
 
40
52
  arguments = arguments.clone
@@ -64,7 +76,7 @@ module ElasticsearchServerless
64
76
 
65
77
  headers.merge!("Content-Type" => "application/x-ndjson")
66
78
  ElasticsearchServerless::API::Response.new(
67
- perform_request(method, path, params, payload, headers)
79
+ perform_request(method, path, params, payload, headers, request_opts)
68
80
  )
69
81
  end
70
82
  end
@@ -25,12 +25,14 @@ module ElasticsearchServerless
25
25
  #
26
26
  # @option arguments [String] :index Name of the index that contains the documents.
27
27
  # @option arguments [Array<String>] :ids A comma-separated list of documents ids. You must define ids as parameter or set "ids" or "docs" in the request body
28
- # @option arguments [String, Array<String>] :fields Comma-separated list or wildcard expressions of fields to include in the statistics. Used as the default list unless a specific field list is provided in the +completion_fields+ or +fielddata_fields+ parameters.
28
+ # @option arguments [String, Array<String>] :fields Comma-separated list or wildcard expressions of fields to include in the statistics.
29
+ # Used as the default list unless a specific field list is provided in the +completion_fields+ or +fielddata_fields+ parameters.
29
30
  # @option arguments [Boolean] :field_statistics If +true+, the response includes the document count, sum of document frequencies, and sum of total term frequencies. Server default: true.
30
31
  # @option arguments [Boolean] :offsets If +true+, the response includes term offsets. Server default: true.
31
32
  # @option arguments [Boolean] :payloads If +true+, the response includes term payloads. Server default: true.
32
33
  # @option arguments [Boolean] :positions If +true+, the response includes term positions. Server default: true.
33
- # @option arguments [String] :preference Specifies the node or shard the operation should be performed on. Random by default.
34
+ # @option arguments [String] :preference Specifies the node or shard the operation should be performed on.
35
+ # Random by default.
34
36
  # @option arguments [Boolean] :realtime If true, the request is real-time as opposed to near-real-time. Server default: true.
35
37
  # @option arguments [String] :routing Custom value used to route operations to a specific shard.
36
38
  # @option arguments [Boolean] :term_statistics If true, the response includes term frequency and document frequency.
@@ -42,14 +44,18 @@ module ElasticsearchServerless
42
44
  # @see https://www.elastic.co/guide/en/elasticsearch/reference/master/docs-multi-termvectors.html
43
45
  #
44
46
  def mtermvectors(arguments = {})
47
+ request_opts = { endpoint: arguments[:endpoint] || "mtermvectors" }
48
+
49
+ defined_params = [:index].inject({}) do |set_variables, variable|
50
+ set_variables[variable] = arguments[variable] if arguments.key?(variable)
51
+ set_variables
52
+ end
53
+ request_opts[:defined_params] = defined_params unless defined_params.empty?
54
+
45
55
  arguments = arguments.clone
46
56
  headers = arguments.delete(:headers) || {}
47
57
 
48
- body = if (ids = arguments.delete(:ids))
49
- { :ids => ids }
50
- else
51
- arguments.delete(:body)
52
- end
58
+ body = arguments.delete(:body)
53
59
 
54
60
  _index = arguments.delete(:index)
55
61
 
@@ -67,7 +73,7 @@ module ElasticsearchServerless
67
73
  params = Utils.process_params(arguments)
68
74
 
69
75
  ElasticsearchServerless::API::Response.new(
70
- perform_request(method, path, params, body, headers)
76
+ perform_request(method, path, params, body, headers, request_opts)
71
77
  )
72
78
  end
73
79
  end
@@ -31,14 +31,25 @@ module ElasticsearchServerless
31
31
  # @option arguments [String, Array] :index A comma-separated list of index names to open point in time; use +_all+ or empty string to perform the operation on all indices (*Required*)
32
32
  # @option arguments [Time] :keep_alive Extends the time to live of the corresponding point in time. (*Required*)
33
33
  # @option arguments [Boolean] :ignore_unavailable If +false+, the request returns an error if it targets a missing or closed index.
34
- # @option arguments [String] :preference Specifies the node or shard the operation should be performed on. Random by default.
34
+ # @option arguments [String] :preference Specifies the node or shard the operation should be performed on.
35
+ # Random by default.
35
36
  # @option arguments [String] :routing Custom value used to route operations to a specific shard.
36
- # @option arguments [String, Array<String>] :expand_wildcards Type of index that wildcard patterns can match. If the request can target data streams, this argument determines whether wildcard expressions match hidden data streams. Supports comma-separated values, such as +open,hidden+. Valid values are: +all+, +open+, +closed+, +hidden+, +none+. Server default: open.
37
+ # @option arguments [String, Array<String>] :expand_wildcards Type of index that wildcard patterns can match.
38
+ # If the request can target data streams, this argument determines whether wildcard expressions match hidden data streams.
39
+ # Supports comma-separated values, such as +open,hidden+. Valid values are: +all+, +open+, +closed+, +hidden+, +none+. Server default: open.
37
40
  # @option arguments [Hash] :headers Custom HTTP headers
38
41
  #
39
42
  # @see https://www.elastic.co/guide/en/elasticsearch/reference/current/point-in-time-api.html
40
43
  #
41
44
  def open_point_in_time(arguments = {})
45
+ request_opts = { endpoint: arguments[:endpoint] || "open_point_in_time" }
46
+
47
+ defined_params = [:index].inject({}) do |set_variables, variable|
48
+ set_variables[variable] = arguments[variable] if arguments.key?(variable)
49
+ set_variables
50
+ end
51
+ request_opts[:defined_params] = defined_params unless defined_params.empty?
52
+
42
53
  raise ArgumentError, "Required argument 'index' missing" unless arguments[:index]
43
54
 
44
55
  arguments = arguments.clone
@@ -53,7 +64,7 @@ module ElasticsearchServerless
53
64
  params = Utils.process_params(arguments)
54
65
 
55
66
  ElasticsearchServerless::API::Response.new(
56
- perform_request(method, path, params, body, headers)
67
+ perform_request(method, path, params, body, headers, request_opts)
57
68
  )
58
69
  end
59
70
  end
@@ -21,6 +21,7 @@
21
21
  module ElasticsearchServerless
22
22
  module API
23
23
  module Actions
24
+ # Ping the cluster.
24
25
  # Returns whether the cluster is running.
25
26
  #
26
27
  # @option arguments [Hash] :headers Custom HTTP headers
@@ -28,6 +29,8 @@ module ElasticsearchServerless
28
29
  # @see https://www.elastic.co/guide/en/elasticsearch/reference/current/index.html
29
30
  #
30
31
  def ping(arguments = {})
32
+ request_opts = { endpoint: arguments[:endpoint] || "ping" }
33
+
31
34
  arguments = arguments.clone
32
35
  headers = arguments.delete(:headers) || {}
33
36
 
@@ -38,7 +41,7 @@ module ElasticsearchServerless
38
41
  params = {}
39
42
 
40
43
  begin
41
- perform_request(method, path, params, body, headers).status == 200 ? true : false
44
+ perform_request(method, path, params, body, headers, request_opts).status == 200 ? true : false
42
45
  rescue Exception => e
43
46
  if e.class.to_s =~ /NotFound|ConnectionFailed/ || e.message =~ /Not *Found|404|ConnectionFailed/i
44
47
  false
@@ -21,18 +21,31 @@
21
21
  module ElasticsearchServerless
22
22
  module API
23
23
  module Actions
24
+ # Create or update a script or search template.
24
25
  # Creates or updates a stored script or search template.
25
26
  #
26
- # @option arguments [String] :id Identifier for the stored script or search template. Must be unique within the cluster. (*Required*)
27
- # @option arguments [String] :context Context in which the script or search template should run. To prevent errors, the API immediately compiles the script or template in this context.
28
- # @option arguments [Time] :master_timeout Period to wait for a connection to the master node. If no response is received before the timeout expires, the request fails and returns an error. Server default: 30s.
29
- # @option arguments [Time] :timeout Period to wait for a response. If no response is received before the timeout expires, the request fails and returns an error. Server default: 30s.
27
+ # @option arguments [String] :id Identifier for the stored script or search template.
28
+ # Must be unique within the cluster. (*Required*)
29
+ # @option arguments [String] :context Context in which the script or search template should run.
30
+ # To prevent errors, the API immediately compiles the script or template in this context.
31
+ # @option arguments [Time] :master_timeout Period to wait for a connection to the master node.
32
+ # If no response is received before the timeout expires, the request fails and returns an error. Server default: 30s.
33
+ # @option arguments [Time] :timeout Period to wait for a response.
34
+ # If no response is received before the timeout expires, the request fails and returns an error. Server default: 30s.
30
35
  # @option arguments [Hash] :headers Custom HTTP headers
31
36
  # @option arguments [Hash] :body request body
32
37
  #
33
38
  # @see https://www.elastic.co/guide/en/elasticsearch/reference/master/modules-scripting.html
34
39
  #
35
40
  def put_script(arguments = {})
41
+ request_opts = { endpoint: arguments[:endpoint] || "put_script" }
42
+
43
+ defined_params = [:id, :context].inject({}) do |set_variables, variable|
44
+ set_variables[variable] = arguments[variable] if arguments.key?(variable)
45
+ set_variables
46
+ end
47
+ request_opts[:defined_params] = defined_params unless defined_params.empty?
48
+
36
49
  raise ArgumentError, "Required argument 'body' missing" unless arguments[:body]
37
50
  raise ArgumentError, "Required argument 'id' missing" unless arguments[:id]
38
51
 
@@ -54,7 +67,7 @@ module ElasticsearchServerless
54
67
  params = Utils.process_params(arguments)
55
68
 
56
69
  ElasticsearchServerless::API::Response.new(
57
- perform_request(method, path, params, body, headers)
70
+ perform_request(method, path, params, body, headers, request_opts)
58
71
  )
59
72
  end
60
73
  end
@@ -31,6 +31,14 @@ module ElasticsearchServerless
31
31
  # @see https://www.elastic.co/guide/en/elasticsearch/reference/master/delete-query-rule.html
32
32
  #
33
33
  def delete_rule(arguments = {})
34
+ request_opts = { endpoint: arguments[:endpoint] || "query_rules.delete_rule" }
35
+
36
+ defined_params = [:ruleset_id, :rule_id].inject({}) do |set_variables, variable|
37
+ set_variables[variable] = arguments[variable] if arguments.key?(variable)
38
+ set_variables
39
+ end
40
+ request_opts[:defined_params] = defined_params unless defined_params.empty?
41
+
34
42
  raise ArgumentError, "Required argument 'ruleset_id' missing" unless arguments[:ruleset_id]
35
43
  raise ArgumentError, "Required argument 'rule_id' missing" unless arguments[:rule_id]
36
44
 
@@ -48,7 +56,7 @@ module ElasticsearchServerless
48
56
  params = {}
49
57
 
50
58
  ElasticsearchServerless::API::Response.new(
51
- perform_request(method, path, params, body, headers)
59
+ perform_request(method, path, params, body, headers, request_opts)
52
60
  )
53
61
  end
54
62
  end
@@ -30,6 +30,14 @@ module ElasticsearchServerless
30
30
  # @see https://www.elastic.co/guide/en/elasticsearch/reference/master/delete-query-ruleset.html
31
31
  #
32
32
  def delete_ruleset(arguments = {})
33
+ request_opts = { endpoint: arguments[:endpoint] || "query_rules.delete_ruleset" }
34
+
35
+ defined_params = [:ruleset_id].inject({}) do |set_variables, variable|
36
+ set_variables[variable] = arguments[variable] if arguments.key?(variable)
37
+ set_variables
38
+ end
39
+ request_opts[:defined_params] = defined_params unless defined_params.empty?
40
+
33
41
  raise ArgumentError, "Required argument 'ruleset_id' missing" unless arguments[:ruleset_id]
34
42
 
35
43
  arguments = arguments.clone
@@ -44,7 +52,7 @@ module ElasticsearchServerless
44
52
  params = {}
45
53
 
46
54
  ElasticsearchServerless::API::Response.new(
47
- perform_request(method, path, params, body, headers)
55
+ perform_request(method, path, params, body, headers, request_opts)
48
56
  )
49
57
  end
50
58
  end
@@ -31,6 +31,14 @@ module ElasticsearchServerless
31
31
  # @see https://www.elastic.co/guide/en/elasticsearch/reference/master/get-query-rule.html
32
32
  #
33
33
  def get_rule(arguments = {})
34
+ request_opts = { endpoint: arguments[:endpoint] || "query_rules.get_rule" }
35
+
36
+ defined_params = [:ruleset_id, :rule_id].inject({}) do |set_variables, variable|
37
+ set_variables[variable] = arguments[variable] if arguments.key?(variable)
38
+ set_variables
39
+ end
40
+ request_opts[:defined_params] = defined_params unless defined_params.empty?
41
+
34
42
  raise ArgumentError, "Required argument 'ruleset_id' missing" unless arguments[:ruleset_id]
35
43
  raise ArgumentError, "Required argument 'rule_id' missing" unless arguments[:rule_id]
36
44
 
@@ -48,7 +56,7 @@ module ElasticsearchServerless
48
56
  params = {}
49
57
 
50
58
  ElasticsearchServerless::API::Response.new(
51
- perform_request(method, path, params, body, headers)
59
+ perform_request(method, path, params, body, headers, request_opts)
52
60
  )
53
61
  end
54
62
  end
@@ -30,6 +30,14 @@ module ElasticsearchServerless
30
30
  # @see https://www.elastic.co/guide/en/elasticsearch/reference/master/get-query-ruleset.html
31
31
  #
32
32
  def get_ruleset(arguments = {})
33
+ request_opts = { endpoint: arguments[:endpoint] || "query_rules.get_ruleset" }
34
+
35
+ defined_params = [:ruleset_id].inject({}) do |set_variables, variable|
36
+ set_variables[variable] = arguments[variable] if arguments.key?(variable)
37
+ set_variables
38
+ end
39
+ request_opts[:defined_params] = defined_params unless defined_params.empty?
40
+
33
41
  raise ArgumentError, "Required argument 'ruleset_id' missing" unless arguments[:ruleset_id]
34
42
 
35
43
  arguments = arguments.clone
@@ -44,7 +52,7 @@ module ElasticsearchServerless
44
52
  params = {}
45
53
 
46
54
  ElasticsearchServerless::API::Response.new(
47
- perform_request(method, path, params, body, headers)
55
+ perform_request(method, path, params, body, headers, request_opts)
48
56
  )
49
57
  end
50
58
  end
@@ -31,6 +31,8 @@ module ElasticsearchServerless
31
31
  # @see https://www.elastic.co/guide/en/elasticsearch/reference/master/list-query-rulesets.html
32
32
  #
33
33
  def list_rulesets(arguments = {})
34
+ request_opts = { endpoint: arguments[:endpoint] || "query_rules.list_rulesets" }
35
+
34
36
  arguments = arguments.clone
35
37
  headers = arguments.delete(:headers) || {}
36
38
 
@@ -41,7 +43,7 @@ module ElasticsearchServerless
41
43
  params = Utils.process_params(arguments)
42
44
 
43
45
  ElasticsearchServerless::API::Response.new(
44
- perform_request(method, path, params, body, headers)
46
+ perform_request(method, path, params, body, headers, request_opts)
45
47
  )
46
48
  end
47
49
  end
@@ -32,6 +32,14 @@ module ElasticsearchServerless
32
32
  # @see https://www.elastic.co/guide/en/elasticsearch/reference/master/put-query-rule.html
33
33
  #
34
34
  def put_rule(arguments = {})
35
+ request_opts = { endpoint: arguments[:endpoint] || "query_rules.put_rule" }
36
+
37
+ defined_params = [:ruleset_id, :rule_id].inject({}) do |set_variables, variable|
38
+ set_variables[variable] = arguments[variable] if arguments.key?(variable)
39
+ set_variables
40
+ end
41
+ request_opts[:defined_params] = defined_params unless defined_params.empty?
42
+
35
43
  raise ArgumentError, "Required argument 'body' missing" unless arguments[:body]
36
44
  raise ArgumentError, "Required argument 'ruleset_id' missing" unless arguments[:ruleset_id]
37
45
  raise ArgumentError, "Required argument 'rule_id' missing" unless arguments[:rule_id]
@@ -50,7 +58,7 @@ module ElasticsearchServerless
50
58
  params = {}
51
59
 
52
60
  ElasticsearchServerless::API::Response.new(
53
- perform_request(method, path, params, body, headers)
61
+ perform_request(method, path, params, body, headers, request_opts)
54
62
  )
55
63
  end
56
64
  end
@@ -31,6 +31,14 @@ module ElasticsearchServerless
31
31
  # @see https://www.elastic.co/guide/en/elasticsearch/reference/master/put-query-ruleset.html
32
32
  #
33
33
  def put_ruleset(arguments = {})
34
+ request_opts = { endpoint: arguments[:endpoint] || "query_rules.put_ruleset" }
35
+
36
+ defined_params = [:ruleset_id].inject({}) do |set_variables, variable|
37
+ set_variables[variable] = arguments[variable] if arguments.key?(variable)
38
+ set_variables
39
+ end
40
+ request_opts[:defined_params] = defined_params unless defined_params.empty?
41
+
34
42
  raise ArgumentError, "Required argument 'body' missing" unless arguments[:body]
35
43
  raise ArgumentError, "Required argument 'ruleset_id' missing" unless arguments[:ruleset_id]
36
44
 
@@ -46,7 +54,7 @@ module ElasticsearchServerless
46
54
  params = {}
47
55
 
48
56
  ElasticsearchServerless::API::Response.new(
49
- perform_request(method, path, params, body, headers)
57
+ perform_request(method, path, params, body, headers, request_opts)
50
58
  )
51
59
  end
52
60
  end
@@ -23,7 +23,8 @@ module ElasticsearchServerless
23
23
  module Actions
24
24
  # Enables you to evaluate the quality of ranked search results over a set of typical search queries.
25
25
  #
26
- # @option arguments [String, Array] :index Comma-separated list of data streams, indices, and index aliases used to limit the request. Wildcard (+*+) expressions are supported. To target all data streams and indices in a cluster, omit this parameter or use +_all+ or +*+.
26
+ # @option arguments [String, Array] :index Comma-separated list of data streams, indices, and index aliases used to limit the request. Wildcard (+*+) expressions are supported.
27
+ # To target all data streams and indices in a cluster, omit this parameter or use +_all+ or +*+.
27
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. This behavior applies even if the request targets other open indices. 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.
28
29
  # @option arguments [String, Array<String>] :expand_wildcards Whether to expand wildcard expression to concrete indices that are open, closed or both.
29
30
  # @option arguments [Boolean] :ignore_unavailable If +true+, missing or closed indices are not included in the response.
@@ -34,6 +35,14 @@ module ElasticsearchServerless
34
35
  # @see https://www.elastic.co/guide/en/elasticsearch/reference/master/search-rank-eval.html
35
36
  #
36
37
  def rank_eval(arguments = {})
38
+ request_opts = { endpoint: arguments[:endpoint] || "rank_eval" }
39
+
40
+ defined_params = [:index].inject({}) do |set_variables, variable|
41
+ set_variables[variable] = arguments[variable] if arguments.key?(variable)
42
+ set_variables
43
+ end
44
+ request_opts[:defined_params] = defined_params unless defined_params.empty?
45
+
37
46
  raise ArgumentError, "Required argument 'body' missing" unless arguments[:body]
38
47
 
39
48
  arguments = arguments.clone
@@ -52,7 +61,7 @@ module ElasticsearchServerless
52
61
  params = Utils.process_params(arguments)
53
62
 
54
63
  ElasticsearchServerless::API::Response.new(
55
- perform_request(method, path, params, body, headers)
64
+ perform_request(method, path, params, body, headers, request_opts)
56
65
  )
57
66
  end
58
67
  end
@@ -21,16 +21,18 @@
21
21
  module ElasticsearchServerless
22
22
  module API
23
23
  module Actions
24
- # Allows to copy documents from one index to another, optionally filtering the source
25
- # documents by a query, changing the destination index settings, or fetching the
26
- # documents from a remote cluster.
24
+ # Reindex documents.
25
+ # Copies documents from a source to a destination. The source can be any existing index, alias, or data stream. The destination must differ from the source. For example, you cannot reindex a data stream into itself.
27
26
  #
28
27
  # @option arguments [Boolean] :refresh If +true+, the request refreshes affected shards to make this operation visible to search.
29
- # @option arguments [Float] :requests_per_second The throttle for this request in sub-requests per second. Defaults to no throttle. Server default: -1.
28
+ # @option arguments [Float] :requests_per_second The throttle for this request in sub-requests per second.
29
+ # Defaults to no throttle. Server default: -1.
30
30
  # @option arguments [Time] :scroll Specifies how long a consistent view of the index should be maintained for scrolled search.
31
- # @option arguments [Integer, String] :slices The number of slices this task should be divided into. Defaults to 1 slice, meaning the task isn’t sliced into subtasks. Server default: 1.
31
+ # @option arguments [Integer, String] :slices The number of slices this task should be divided into.
32
+ # Defaults to 1 slice, meaning the task isn’t sliced into subtasks. Server default: 1.
32
33
  # @option arguments [Time] :timeout Period each indexing waits for automatic index creation, dynamic mapping updates, and waiting for active shards. Server default: 1m.
33
- # @option arguments [Integer, String] :wait_for_active_shards The number of shard copies that must be active before proceeding with the operation. Set to +all+ or any positive integer up to the total number of shards in the index (+number_of_replicas+1+). Server default: 1.
34
+ # @option arguments [Integer, String] :wait_for_active_shards The number of shard copies that must be active before proceeding with the operation.
35
+ # Set to +all+ or any positive integer up to the total number of shards in the index (+number_of_replicas+1+). Server default: 1.
34
36
  # @option arguments [Boolean] :wait_for_completion If +true+, the request blocks until the operation is complete. Server default: true.
35
37
  # @option arguments [Boolean] :require_alias If +true+, the destination must be an index alias.
36
38
  # @option arguments [Hash] :headers Custom HTTP headers
@@ -39,6 +41,8 @@ module ElasticsearchServerless
39
41
  # @see https://www.elastic.co/guide/en/elasticsearch/reference/master/docs-reindex.html
40
42
  #
41
43
  def reindex(arguments = {})
44
+ request_opts = { endpoint: arguments[:endpoint] || "reindex" }
45
+
42
46
  raise ArgumentError, "Required argument 'body' missing" unless arguments[:body]
43
47
 
44
48
  arguments = arguments.clone
@@ -51,7 +55,7 @@ module ElasticsearchServerless
51
55
  params = Utils.process_params(arguments)
52
56
 
53
57
  ElasticsearchServerless::API::Response.new(
54
- perform_request(method, path, params, body, headers)
58
+ perform_request(method, path, params, body, headers, request_opts)
55
59
  )
56
60
  end
57
61
  end
@@ -23,13 +23,22 @@ module ElasticsearchServerless
23
23
  module Actions
24
24
  # Renders a search template as a search request body.
25
25
  #
26
- # @option arguments [String] :id ID of the search template to render. If no +source+ is specified, this or the +id+ request body parameter is required.
26
+ # @option arguments [String] :id ID of the search template to render.
27
+ # If no +source+ is specified, this or the +id+ request body parameter is required.
27
28
  # @option arguments [Hash] :headers Custom HTTP headers
28
29
  # @option arguments [Hash] :body request body
29
30
  #
30
31
  # @see https://www.elastic.co/guide/en/elasticsearch/reference/current/render-search-template-api.html
31
32
  #
32
33
  def render_search_template(arguments = {})
34
+ request_opts = { endpoint: arguments[:endpoint] || "render_search_template" }
35
+
36
+ defined_params = [:id].inject({}) do |set_variables, variable|
37
+ set_variables[variable] = arguments[variable] if arguments.key?(variable)
38
+ set_variables
39
+ end
40
+ request_opts[:defined_params] = defined_params unless defined_params.empty?
41
+
33
42
  arguments = arguments.clone
34
43
  headers = arguments.delete(:headers) || {}
35
44
 
@@ -51,7 +60,7 @@ module ElasticsearchServerless
51
60
  params = {}
52
61
 
53
62
  ElasticsearchServerless::API::Response.new(
54
- perform_request(method, path, params, body, headers)
63
+ perform_request(method, path, params, body, headers, request_opts)
55
64
  )
56
65
  end
57
66
  end
@@ -21,6 +21,7 @@
21
21
  module ElasticsearchServerless
22
22
  module API
23
23
  module Actions
24
+ # Run a script.
24
25
  # Runs a script and returns a result.
25
26
  # This functionality is Experimental and may be changed or removed
26
27
  # completely in a future release. Elastic will take a best effort approach
@@ -33,6 +34,8 @@ module ElasticsearchServerless
33
34
  # @see https://www.elastic.co/guide/en/elasticsearch/painless/master/painless-execute-api.html
34
35
  #
35
36
  def scripts_painless_execute(arguments = {})
37
+ request_opts = { endpoint: arguments[:endpoint] || "scripts_painless_execute" }
38
+
36
39
  arguments = arguments.clone
37
40
  headers = arguments.delete(:headers) || {}
38
41
 
@@ -48,7 +51,7 @@ module ElasticsearchServerless
48
51
  params = {}
49
52
 
50
53
  ElasticsearchServerless::API::Response.new(
51
- perform_request(method, path, params, body, headers)
54
+ perform_request(method, path, params, body, headers, request_opts)
52
55
  )
53
56
  end
54
57
  end