elasticsearch-api 9.1.1 → 9.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/elasticsearch/api/actions/async_search/submit.rb +12 -4
- data/lib/elasticsearch/api/actions/bulk.rb +2 -3
- data/lib/elasticsearch/api/actions/cat/aliases.rb +10 -1
- data/lib/elasticsearch/api/actions/cat/allocation.rb +10 -2
- data/lib/elasticsearch/api/actions/cat/component_templates.rb +10 -1
- data/lib/elasticsearch/api/actions/cat/count.rb +18 -1
- data/lib/elasticsearch/api/actions/cat/fielddata.rb +10 -2
- data/lib/elasticsearch/api/actions/cat/health.rb +10 -2
- data/lib/elasticsearch/api/actions/cat/indices.rb +10 -3
- data/lib/elasticsearch/api/actions/cat/master.rb +10 -1
- data/lib/elasticsearch/api/actions/cat/ml_data_frame_analytics.rb +11 -3
- data/lib/elasticsearch/api/actions/cat/ml_datafeeds.rb +9 -1
- data/lib/elasticsearch/api/actions/cat/ml_jobs.rb +9 -2
- data/lib/elasticsearch/api/actions/cat/ml_trained_models.rb +11 -4
- data/lib/elasticsearch/api/actions/cat/nodeattrs.rb +10 -1
- data/lib/elasticsearch/api/actions/cat/nodes.rb +10 -3
- data/lib/elasticsearch/api/actions/cat/pending_tasks.rb +10 -2
- data/lib/elasticsearch/api/actions/cat/plugins.rb +10 -1
- data/lib/elasticsearch/api/actions/cat/recovery.rb +9 -2
- data/lib/elasticsearch/api/actions/cat/repositories.rb +9 -0
- data/lib/elasticsearch/api/actions/cat/segments.rb +9 -1
- data/lib/elasticsearch/api/actions/cat/shards.rb +9 -2
- data/lib/elasticsearch/api/actions/cat/snapshots.rb +9 -1
- data/lib/elasticsearch/api/actions/cat/tasks.rb +10 -2
- data/lib/elasticsearch/api/actions/cat/templates.rb +10 -1
- data/lib/elasticsearch/api/actions/cat/thread_pool.rb +9 -1
- data/lib/elasticsearch/api/actions/cat/transforms.rb +9 -1
- data/lib/elasticsearch/api/actions/close_point_in_time.rb +2 -0
- data/lib/elasticsearch/api/actions/cluster/allocation_explain.rb +5 -0
- data/lib/elasticsearch/api/actions/cluster/get_settings.rb +6 -1
- data/lib/elasticsearch/api/actions/cluster/state.rb +1 -1
- data/lib/elasticsearch/api/actions/connector/delete.rb +1 -1
- data/lib/elasticsearch/api/actions/connector/list.rb +2 -2
- data/lib/elasticsearch/api/actions/connector/sync_job_list.rb +2 -2
- data/lib/elasticsearch/api/actions/count.rb +10 -2
- data/lib/elasticsearch/api/actions/cross_cluster_replication/follow.rb +1 -1
- data/lib/elasticsearch/api/actions/dangling_indices/delete_dangling_index.rb +1 -1
- data/lib/elasticsearch/api/actions/dangling_indices/import_dangling_index.rb +1 -1
- data/lib/elasticsearch/api/actions/delete_by_query.rb +2 -2
- data/lib/elasticsearch/api/actions/eql/get.rb +1 -1
- data/lib/elasticsearch/api/actions/eql/search.rb +8 -0
- data/lib/elasticsearch/api/actions/esql/async_query.rb +1 -1
- data/lib/elasticsearch/api/actions/esql/get_query.rb +1 -1
- data/lib/elasticsearch/api/actions/esql/list_queries.rb +1 -1
- data/lib/elasticsearch/api/actions/esql/query.rb +1 -1
- data/lib/elasticsearch/api/actions/explain.rb +2 -2
- data/lib/elasticsearch/api/actions/field_caps.rb +8 -0
- data/lib/elasticsearch/api/actions/fleet/msearch.rb +1 -3
- data/lib/elasticsearch/api/actions/fleet/search.rb +2 -6
- data/lib/elasticsearch/api/actions/get.rb +1 -0
- data/lib/elasticsearch/api/actions/get_script.rb +1 -1
- data/lib/elasticsearch/api/actions/graph/explore.rb +2 -6
- data/lib/elasticsearch/api/actions/index_lifecycle_management/move_to_step.rb +1 -0
- data/lib/elasticsearch/api/actions/index_lifecycle_management/put_lifecycle.rb +1 -0
- data/lib/elasticsearch/api/actions/indices/analyze.rb +3 -6
- data/lib/elasticsearch/api/actions/indices/create_from.rb +0 -1
- data/lib/elasticsearch/api/actions/indices/delete_data_lifecycle.rb +1 -1
- data/lib/elasticsearch/api/actions/indices/delete_data_stream_options.rb +2 -2
- data/lib/elasticsearch/api/actions/indices/disk_usage.rb +1 -0
- data/lib/elasticsearch/api/actions/indices/explain_data_lifecycle.rb +1 -1
- data/lib/elasticsearch/api/actions/indices/forcemerge.rb +1 -1
- data/lib/elasticsearch/api/actions/indices/get_data_stream_mappings.rb +75 -0
- data/lib/elasticsearch/api/actions/indices/get_data_stream_options.rb +1 -1
- data/lib/elasticsearch/api/actions/indices/put_data_lifecycle.rb +1 -0
- data/lib/elasticsearch/api/actions/indices/put_data_stream_mappings.rb +84 -0
- data/lib/elasticsearch/api/actions/indices/put_data_stream_options.rb +2 -1
- data/lib/elasticsearch/api/actions/indices/put_index_template.rb +1 -1
- data/lib/elasticsearch/api/actions/indices/put_mapping.rb +1 -1
- data/lib/elasticsearch/api/actions/indices/put_template.rb +1 -1
- data/lib/elasticsearch/api/actions/indices/refresh.rb +1 -0
- data/lib/elasticsearch/api/actions/indices/resolve_index.rb +9 -0
- data/lib/elasticsearch/api/actions/indices/rollover.rb +1 -1
- data/lib/elasticsearch/api/actions/indices/shrink.rb +1 -0
- data/lib/elasticsearch/api/actions/indices/simulate_index_template.rb +2 -1
- data/lib/elasticsearch/api/actions/indices/simulate_template.rb +1 -1
- data/lib/elasticsearch/api/actions/indices/split.rb +1 -0
- data/lib/elasticsearch/api/actions/indices/stats.rb +1 -1
- data/lib/elasticsearch/api/actions/indices/validate_query.rb +1 -1
- data/lib/elasticsearch/api/actions/inference/completion.rb +1 -0
- data/lib/elasticsearch/api/actions/inference/inference.rb +1 -0
- data/lib/elasticsearch/api/actions/inference/put.rb +7 -5
- data/lib/elasticsearch/api/actions/inference/put_ai21.rb +79 -0
- data/lib/elasticsearch/api/actions/inference/put_alibabacloud.rb +1 -0
- data/lib/elasticsearch/api/actions/inference/put_amazonbedrock.rb +1 -0
- data/lib/elasticsearch/api/actions/inference/put_amazonsagemaker.rb +1 -0
- data/lib/elasticsearch/api/actions/inference/put_anthropic.rb +1 -0
- data/lib/elasticsearch/api/actions/inference/put_azureaistudio.rb +1 -0
- data/lib/elasticsearch/api/actions/inference/put_azureopenai.rb +1 -0
- data/lib/elasticsearch/api/actions/inference/put_cohere.rb +1 -0
- data/lib/elasticsearch/api/actions/inference/put_contextualai.rb +84 -0
- data/lib/elasticsearch/api/actions/inference/put_custom.rb +1 -0
- data/lib/elasticsearch/api/actions/inference/put_deepseek.rb +1 -0
- data/lib/elasticsearch/api/actions/inference/put_elasticsearch.rb +1 -0
- data/lib/elasticsearch/api/actions/inference/put_elser.rb +1 -0
- data/lib/elasticsearch/api/actions/inference/put_googleaistudio.rb +1 -0
- data/lib/elasticsearch/api/actions/inference/put_googlevertexai.rb +1 -0
- data/lib/elasticsearch/api/actions/inference/put_hugging_face.rb +1 -0
- data/lib/elasticsearch/api/actions/inference/put_jinaai.rb +1 -0
- data/lib/elasticsearch/api/actions/inference/put_llama.rb +79 -0
- data/lib/elasticsearch/api/actions/inference/put_mistral.rb +1 -0
- data/lib/elasticsearch/api/actions/inference/put_openai.rb +1 -0
- data/lib/elasticsearch/api/actions/inference/put_voyageai.rb +1 -0
- data/lib/elasticsearch/api/actions/inference/put_watsonx.rb +1 -0
- data/lib/elasticsearch/api/actions/inference/rerank.rb +1 -0
- data/lib/elasticsearch/api/actions/inference/sparse_embedding.rb +1 -0
- data/lib/elasticsearch/api/actions/inference/stream_completion.rb +1 -0
- data/lib/elasticsearch/api/actions/inference/text_embedding.rb +1 -0
- data/lib/elasticsearch/api/actions/license/get.rb +3 -1
- data/lib/elasticsearch/api/actions/logstash/put_pipeline.rb +2 -1
- data/lib/elasticsearch/api/actions/machine_learning/get_overall_buckets.rb +1 -1
- data/lib/elasticsearch/api/actions/msearch.rb +8 -3
- data/lib/elasticsearch/api/actions/msearch_template.rb +9 -3
- data/lib/elasticsearch/api/actions/nodes/stats.rb +1 -1
- data/lib/elasticsearch/api/actions/open_point_in_time.rb +8 -0
- data/lib/elasticsearch/api/actions/project/tags.rb +65 -0
- data/lib/elasticsearch/api/actions/query_rules/list_rulesets.rb +1 -1
- data/lib/elasticsearch/api/actions/reindex.rb +6 -1
- data/lib/elasticsearch/api/actions/render_search_template.rb +3 -6
- data/lib/elasticsearch/api/actions/scripts_painless_execute.rb +3 -6
- data/lib/elasticsearch/api/actions/search.rb +11 -2
- data/lib/elasticsearch/api/actions/search_mvt.rb +9 -1
- data/lib/elasticsearch/api/actions/search_template.rb +8 -0
- data/lib/elasticsearch/api/actions/searchable_snapshots/stats.rb +1 -1
- data/lib/elasticsearch/api/actions/security/get_settings.rb +1 -1
- data/lib/elasticsearch/api/actions/security/get_stats.rb +62 -0
- data/lib/elasticsearch/api/actions/security/update_settings.rb +1 -1
- data/lib/elasticsearch/api/actions/simulate/ingest.rb +4 -0
- data/lib/elasticsearch/api/actions/snapshot/get_repository.rb +1 -1
- data/lib/elasticsearch/api/actions/snapshot/repository_analyze.rb +17 -10
- data/lib/elasticsearch/api/actions/snapshot/status.rb +5 -0
- data/lib/elasticsearch/api/actions/snapshot_lifecycle_management/put_lifecycle.rb +1 -0
- data/lib/elasticsearch/api/actions/sql/get_async.rb +1 -1
- data/lib/elasticsearch/api/actions/sql/query.rb +8 -0
- data/lib/elasticsearch/api/actions/streams/logs_disable.rb +23 -3
- data/lib/elasticsearch/api/actions/streams/logs_enable.rb +26 -3
- data/lib/elasticsearch/api/actions/streams/status.rb +20 -3
- data/lib/elasticsearch/api/actions/tasks/list.rb +1 -1
- data/lib/elasticsearch/api/actions/terms_enum.rb +2 -6
- data/lib/elasticsearch/api/actions/text_structure/find_structure.rb +1 -3
- data/lib/elasticsearch/api/actions/transform/get_node_stats.rb +1 -1
- data/lib/elasticsearch/api/actions/transform/set_upgrade_mode.rb +77 -0
- data/lib/elasticsearch/api/actions/update_by_query.rb +2 -2
- data/lib/elasticsearch/api/actions/watcher/get_settings.rb +1 -1
- data/lib/elasticsearch/api/actions/watcher/put_watch.rb +1 -0
- data/lib/elasticsearch/api/actions/watcher/update_settings.rb +1 -1
- data/lib/elasticsearch/api/utils.rb +15 -0
- data/lib/elasticsearch/api/version.rb +2 -2
- data/lib/elasticsearch/api.rb +1 -0
- metadata +10 -2
| @@ -27,7 +27,7 @@ module Elasticsearch | |
| 27 27 | 
             
                    #
         | 
| 28 28 | 
             
                    # @option arguments [String, Array<String>] :name A comma-separated list of data streams of which the data stream options will be deleted; use `*` to get all data streams (*Required*)
         | 
| 29 29 | 
             
                    # @option arguments [String, Array<String>] :expand_wildcards Whether wildcard expressions should get expanded to open or closed indices (default: open)
         | 
| 30 | 
            -
                    # @option arguments [Time] :master_timeout Specify timeout for connection to master
         | 
| 30 | 
            +
                    # @option arguments [Time] :master_timeout Specify timeout for connection to master Server default: 30s.
         | 
| 31 31 | 
             
                    # @option arguments [Time] :timeout Explicit timestamp for the document
         | 
| 32 32 | 
             
                    # @option arguments [Boolean] :error_trace When set to `true` Elasticsearch will include the full stack trace of errors
         | 
| 33 33 | 
             
                    #  when they occur.
         | 
| @@ -42,7 +42,7 @@ module Elasticsearch | |
| 42 42 | 
             
                    #  this option for debugging only.
         | 
| 43 43 | 
             
                    # @option arguments [Hash] :headers Custom HTTP headers
         | 
| 44 44 | 
             
                    #
         | 
| 45 | 
            -
                    # @see https://www.elastic.co/ | 
| 45 | 
            +
                    # @see https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-indices-delete-data-stream-options
         | 
| 46 46 | 
             
                    #
         | 
| 47 47 | 
             
                    def delete_data_stream_options(arguments = {})
         | 
| 48 48 | 
             
                      request_opts = { endpoint: arguments[:endpoint] || 'indices.delete_data_stream_options' }
         | 
| @@ -29,6 +29,7 @@ module Elasticsearch | |
| 29 29 | 
             
                    # NOTE: The total size of fields of the analyzed shards of the index in the response is usually smaller than the index `store_size` value because some small metadata files are ignored and some parts of data files might not be scanned by the API.
         | 
| 30 30 | 
             
                    # Since stored fields are stored together in a compressed format, the sizes of stored fields are also estimates and can be inaccurate.
         | 
| 31 31 | 
             
                    # The stored size of the `_id` field is likely underestimated while the `_source` field is overestimated.
         | 
| 32 | 
            +
                    # For usage examples see the External documentation or refer to {https://www.elastic.co/docs/reference/elasticsearch/rest-apis/index-disk-usage Analyze the index disk usage example} for an example.
         | 
| 32 33 | 
             
                    # This functionality is Experimental and may be changed or removed
         | 
| 33 34 | 
             
                    # completely in a future release. Elastic will take a best effort approach
         | 
| 34 35 | 
             
                    # to fix any issues, but experimental features are not subject to the
         | 
| @@ -27,7 +27,7 @@ module Elasticsearch | |
| 27 27 | 
             
                    #
         | 
| 28 28 | 
             
                    # @option arguments [String, Array] :index The name of the index to explain (*Required*)
         | 
| 29 29 | 
             
                    # @option arguments [Boolean] :include_defaults indicates if the API should return the default values the system uses for the index's lifecycle
         | 
| 30 | 
            -
                    # @option arguments [Time] :master_timeout Specify timeout for connection to master
         | 
| 30 | 
            +
                    # @option arguments [Time] :master_timeout Specify timeout for connection to master Server default: 30s.
         | 
| 31 31 | 
             
                    # @option arguments [Boolean] :error_trace When set to `true` Elasticsearch will include the full stack trace of errors
         | 
| 32 32 | 
             
                    #  when they occur.
         | 
| 33 33 | 
             
                    # @option arguments [String, Array<String>] :filter_path Comma-separated list of filters in dot notation which reduce the response
         | 
| @@ -70,7 +70,7 @@ module Elasticsearch | |
| 70 70 | 
             
                    # @option arguments [Boolean] :ignore_unavailable Whether specified concrete indices should be ignored when unavailable (missing or closed)
         | 
| 71 71 | 
             
                    # @option arguments [Integer] :max_num_segments The number of segments the index should be merged into (default: dynamic)
         | 
| 72 72 | 
             
                    # @option arguments [Boolean] :only_expunge_deletes Specify whether the operation should only expunge deleted documents
         | 
| 73 | 
            -
                    # @option arguments [Boolean] :wait_for_completion Should the request wait until the force merge is completed.
         | 
| 73 | 
            +
                    # @option arguments [Boolean] :wait_for_completion Should the request wait until the force merge is completed. Server default: true.
         | 
| 74 74 | 
             
                    # @option arguments [Boolean] :error_trace When set to `true` Elasticsearch will include the full stack trace of errors
         | 
| 75 75 | 
             
                    #  when they occur.
         | 
| 76 76 | 
             
                    # @option arguments [String, Array<String>] :filter_path Comma-separated list of filters in dot notation which reduce the response
         | 
| @@ -0,0 +1,75 @@ | |
| 1 | 
            +
            # Licensed to Elasticsearch B.V. under one or more contributor
         | 
| 2 | 
            +
            # license agreements. See the NOTICE file distributed with
         | 
| 3 | 
            +
            # this work for additional information regarding copyright
         | 
| 4 | 
            +
            # ownership. Elasticsearch B.V. licenses this file to you under
         | 
| 5 | 
            +
            # the Apache License, Version 2.0 (the "License"); you may
         | 
| 6 | 
            +
            # not use this file except in compliance with the License.
         | 
| 7 | 
            +
            # You may obtain a copy of the License at
         | 
| 8 | 
            +
            #
         | 
| 9 | 
            +
            #   http://www.apache.org/licenses/LICENSE-2.0
         | 
| 10 | 
            +
            #
         | 
| 11 | 
            +
            # Unless required by applicable law or agreed to in writing,
         | 
| 12 | 
            +
            # software distributed under the License is distributed on an
         | 
| 13 | 
            +
            # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
         | 
| 14 | 
            +
            # KIND, either express or implied.  See the License for the
         | 
| 15 | 
            +
            # specific language governing permissions and limitations
         | 
| 16 | 
            +
            # under the License.
         | 
| 17 | 
            +
            #
         | 
| 18 | 
            +
            # This code was automatically generated from the Elasticsearch Specification
         | 
| 19 | 
            +
            # See https://github.com/elastic/elasticsearch-specification
         | 
| 20 | 
            +
            # See Elasticsearch::ES_SPECIFICATION_COMMIT for commit hash.
         | 
| 21 | 
            +
            module Elasticsearch
         | 
| 22 | 
            +
              module API
         | 
| 23 | 
            +
                module Indices
         | 
| 24 | 
            +
                  module Actions
         | 
| 25 | 
            +
                    # Get data stream mappings.
         | 
| 26 | 
            +
                    # Get mapping information for one or more data streams.
         | 
| 27 | 
            +
                    #
         | 
| 28 | 
            +
                    # @option arguments [String, Array] :name A comma-separated list of data streams or data stream patterns. Supports wildcards (`*`). (*Required*)
         | 
| 29 | 
            +
                    # @option arguments [Time] :master_timeout The period to wait for a connection to the master node. If no response is
         | 
| 30 | 
            +
                    #  received before the timeout expires, the request fails and returns an
         | 
| 31 | 
            +
                    #  error. Server default: 30s.
         | 
| 32 | 
            +
                    # @option arguments [Boolean] :error_trace When set to `true` Elasticsearch will include the full stack trace of errors
         | 
| 33 | 
            +
                    #  when they occur.
         | 
| 34 | 
            +
                    # @option arguments [String, Array<String>] :filter_path Comma-separated list of filters in dot notation which reduce the response
         | 
| 35 | 
            +
                    #  returned by Elasticsearch.
         | 
| 36 | 
            +
                    # @option arguments [Boolean] :human When set to `true` will return statistics in a format suitable for humans.
         | 
| 37 | 
            +
                    #  For example `"exists_time": "1h"` for humans and
         | 
| 38 | 
            +
                    #  `"exists_time_in_millis": 3600000` for computers. When disabled the human
         | 
| 39 | 
            +
                    #  readable values will be omitted. This makes sense for responses being consumed
         | 
| 40 | 
            +
                    #  only by machines.
         | 
| 41 | 
            +
                    # @option arguments [Boolean] :pretty If set to `true` the returned JSON will be "pretty-formatted". Only use
         | 
| 42 | 
            +
                    #  this option for debugging only.
         | 
| 43 | 
            +
                    # @option arguments [Hash] :headers Custom HTTP headers
         | 
| 44 | 
            +
                    #
         | 
| 45 | 
            +
                    # @see https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-indices-get-data-stream-mappings
         | 
| 46 | 
            +
                    #
         | 
| 47 | 
            +
                    def get_data_stream_mappings(arguments = {})
         | 
| 48 | 
            +
                      request_opts = { endpoint: arguments[:endpoint] || 'indices.get_data_stream_mappings' }
         | 
| 49 | 
            +
             | 
| 50 | 
            +
                      defined_params = [:name].each_with_object({}) do |variable, set_variables|
         | 
| 51 | 
            +
                        set_variables[variable] = arguments[variable] if arguments.key?(variable)
         | 
| 52 | 
            +
                      end
         | 
| 53 | 
            +
                      request_opts[:defined_params] = defined_params unless defined_params.empty?
         | 
| 54 | 
            +
             | 
| 55 | 
            +
                      raise ArgumentError, "Required argument 'name' missing" unless arguments[:name]
         | 
| 56 | 
            +
             | 
| 57 | 
            +
                      arguments = arguments.clone
         | 
| 58 | 
            +
                      headers = arguments.delete(:headers) || {}
         | 
| 59 | 
            +
             | 
| 60 | 
            +
                      body = nil
         | 
| 61 | 
            +
             | 
| 62 | 
            +
                      _name = arguments.delete(:name)
         | 
| 63 | 
            +
             | 
| 64 | 
            +
                      method = Elasticsearch::API::HTTP_GET
         | 
| 65 | 
            +
                      path   = "_data_stream/#{Utils.listify(_name)}/_mappings"
         | 
| 66 | 
            +
                      params = Utils.process_params(arguments)
         | 
| 67 | 
            +
             | 
| 68 | 
            +
                      Elasticsearch::API::Response.new(
         | 
| 69 | 
            +
                        perform_request(method, path, params, body, headers, request_opts)
         | 
| 70 | 
            +
                      )
         | 
| 71 | 
            +
                    end
         | 
| 72 | 
            +
                  end
         | 
| 73 | 
            +
                end
         | 
| 74 | 
            +
              end
         | 
| 75 | 
            +
            end
         | 
| @@ -44,7 +44,7 @@ module Elasticsearch | |
| 44 44 | 
             
                    #  this option for debugging only.
         | 
| 45 45 | 
             
                    # @option arguments [Hash] :headers Custom HTTP headers
         | 
| 46 46 | 
             
                    #
         | 
| 47 | 
            -
                    # @see https://www.elastic.co/ | 
| 47 | 
            +
                    # @see https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-indices-get-data-stream-options
         | 
| 48 48 | 
             
                    #
         | 
| 49 49 | 
             
                    def get_data_stream_options(arguments = {})
         | 
| 50 50 | 
             
                      request_opts = { endpoint: arguments[:endpoint] || 'indices.get_data_stream_options' }
         | 
| @@ -59,6 +59,7 @@ module Elasticsearch | |
| 59 59 | 
             
                      end
         | 
| 60 60 | 
             
                      request_opts[:defined_params] = defined_params unless defined_params.empty?
         | 
| 61 61 |  | 
| 62 | 
            +
                      raise ArgumentError, "Required argument 'body' missing" unless arguments[:body]
         | 
| 62 63 | 
             
                      raise ArgumentError, "Required argument 'name' missing" unless arguments[:name]
         | 
| 63 64 |  | 
| 64 65 | 
             
                      arguments = arguments.clone
         | 
| @@ -0,0 +1,84 @@ | |
| 1 | 
            +
            # Licensed to Elasticsearch B.V. under one or more contributor
         | 
| 2 | 
            +
            # license agreements. See the NOTICE file distributed with
         | 
| 3 | 
            +
            # this work for additional information regarding copyright
         | 
| 4 | 
            +
            # ownership. Elasticsearch B.V. licenses this file to you under
         | 
| 5 | 
            +
            # the Apache License, Version 2.0 (the "License"); you may
         | 
| 6 | 
            +
            # not use this file except in compliance with the License.
         | 
| 7 | 
            +
            # You may obtain a copy of the License at
         | 
| 8 | 
            +
            #
         | 
| 9 | 
            +
            #   http://www.apache.org/licenses/LICENSE-2.0
         | 
| 10 | 
            +
            #
         | 
| 11 | 
            +
            # Unless required by applicable law or agreed to in writing,
         | 
| 12 | 
            +
            # software distributed under the License is distributed on an
         | 
| 13 | 
            +
            # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
         | 
| 14 | 
            +
            # KIND, either express or implied.  See the License for the
         | 
| 15 | 
            +
            # specific language governing permissions and limitations
         | 
| 16 | 
            +
            # under the License.
         | 
| 17 | 
            +
            #
         | 
| 18 | 
            +
            # This code was automatically generated from the Elasticsearch Specification
         | 
| 19 | 
            +
            # See https://github.com/elastic/elasticsearch-specification
         | 
| 20 | 
            +
            # See Elasticsearch::ES_SPECIFICATION_COMMIT for commit hash.
         | 
| 21 | 
            +
            module Elasticsearch
         | 
| 22 | 
            +
              module API
         | 
| 23 | 
            +
                module Indices
         | 
| 24 | 
            +
                  module Actions
         | 
| 25 | 
            +
                    # Update data stream mappings.
         | 
| 26 | 
            +
                    # This API can be used to override mappings on specific data streams. These overrides will take precedence over what
         | 
| 27 | 
            +
                    # is specified in the template that the data stream matches. The mapping change is only applied to new write indices
         | 
| 28 | 
            +
                    # that are created during rollover after this API is called. No indices are changed by this API.
         | 
| 29 | 
            +
                    #
         | 
| 30 | 
            +
                    # @option arguments [String, Array] :name A comma-separated list of data streams or data stream patterns. (*Required*)
         | 
| 31 | 
            +
                    # @option arguments [Boolean] :dry_run If `true`, the request does not actually change the mappings on any data streams. Instead, it
         | 
| 32 | 
            +
                    #  simulates changing the settings and reports back to the user what would have happened had these settings
         | 
| 33 | 
            +
                    #  actually been applied.
         | 
| 34 | 
            +
                    # @option arguments [Time] :master_timeout The period to wait for a connection to the master node. If no response is
         | 
| 35 | 
            +
                    #  received before the timeout expires, the request fails and returns an
         | 
| 36 | 
            +
                    #  error. Server default: 30s.
         | 
| 37 | 
            +
                    # @option arguments [Time] :timeout The period to wait for a response. If no response is received before the
         | 
| 38 | 
            +
                    #   timeout expires, the request fails and returns an error. Server default: 30s.
         | 
| 39 | 
            +
                    # @option arguments [Boolean] :error_trace When set to `true` Elasticsearch will include the full stack trace of errors
         | 
| 40 | 
            +
                    #  when they occur.
         | 
| 41 | 
            +
                    # @option arguments [String, Array<String>] :filter_path Comma-separated list of filters in dot notation which reduce the response
         | 
| 42 | 
            +
                    #  returned by Elasticsearch.
         | 
| 43 | 
            +
                    # @option arguments [Boolean] :human When set to `true` will return statistics in a format suitable for humans.
         | 
| 44 | 
            +
                    #  For example `"exists_time": "1h"` for humans and
         | 
| 45 | 
            +
                    #  `"exists_time_in_millis": 3600000` for computers. When disabled the human
         | 
| 46 | 
            +
                    #  readable values will be omitted. This makes sense for responses being consumed
         | 
| 47 | 
            +
                    #  only by machines.
         | 
| 48 | 
            +
                    # @option arguments [Boolean] :pretty If set to `true` the returned JSON will be "pretty-formatted". Only use
         | 
| 49 | 
            +
                    #  this option for debugging only.
         | 
| 50 | 
            +
                    # @option arguments [Hash] :headers Custom HTTP headers
         | 
| 51 | 
            +
                    # @option arguments [Hash] :body mappings
         | 
| 52 | 
            +
                    #
         | 
| 53 | 
            +
                    # @see https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-indices-put-data-stream-mappings
         | 
| 54 | 
            +
                    #
         | 
| 55 | 
            +
                    def put_data_stream_mappings(arguments = {})
         | 
| 56 | 
            +
                      request_opts = { endpoint: arguments[:endpoint] || 'indices.put_data_stream_mappings' }
         | 
| 57 | 
            +
             | 
| 58 | 
            +
                      defined_params = [:name].each_with_object({}) do |variable, set_variables|
         | 
| 59 | 
            +
                        set_variables[variable] = arguments[variable] if arguments.key?(variable)
         | 
| 60 | 
            +
                      end
         | 
| 61 | 
            +
                      request_opts[:defined_params] = defined_params unless defined_params.empty?
         | 
| 62 | 
            +
             | 
| 63 | 
            +
                      raise ArgumentError, "Required argument 'body' missing" unless arguments[:body]
         | 
| 64 | 
            +
                      raise ArgumentError, "Required argument 'name' missing" unless arguments[:name]
         | 
| 65 | 
            +
             | 
| 66 | 
            +
                      arguments = arguments.clone
         | 
| 67 | 
            +
                      headers = arguments.delete(:headers) || {}
         | 
| 68 | 
            +
             | 
| 69 | 
            +
                      body = arguments.delete(:body)
         | 
| 70 | 
            +
             | 
| 71 | 
            +
                      _name = arguments.delete(:name)
         | 
| 72 | 
            +
             | 
| 73 | 
            +
                      method = Elasticsearch::API::HTTP_PUT
         | 
| 74 | 
            +
                      path   = "_data_stream/#{Utils.listify(_name)}/_mappings"
         | 
| 75 | 
            +
                      params = Utils.process_params(arguments)
         | 
| 76 | 
            +
             | 
| 77 | 
            +
                      Elasticsearch::API::Response.new(
         | 
| 78 | 
            +
                        perform_request(method, path, params, body, headers, request_opts)
         | 
| 79 | 
            +
                      )
         | 
| 80 | 
            +
                    end
         | 
| 81 | 
            +
                  end
         | 
| 82 | 
            +
                end
         | 
| 83 | 
            +
              end
         | 
| 84 | 
            +
            end
         | 
| @@ -49,7 +49,7 @@ module Elasticsearch | |
| 49 49 | 
             
                    # @option arguments [Hash] :headers Custom HTTP headers
         | 
| 50 50 | 
             
                    # @option arguments [Hash] :body request body
         | 
| 51 51 | 
             
                    #
         | 
| 52 | 
            -
                    # @see https://www.elastic.co/ | 
| 52 | 
            +
                    # @see https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-indices-put-data-stream-options
         | 
| 53 53 | 
             
                    #
         | 
| 54 54 | 
             
                    def put_data_stream_options(arguments = {})
         | 
| 55 55 | 
             
                      request_opts = { endpoint: arguments[:endpoint] || 'indices.put_data_stream_options' }
         | 
| @@ -59,6 +59,7 @@ module Elasticsearch | |
| 59 59 | 
             
                      end
         | 
| 60 60 | 
             
                      request_opts[:defined_params] = defined_params unless defined_params.empty?
         | 
| 61 61 |  | 
| 62 | 
            +
                      raise ArgumentError, "Required argument 'body' missing" unless arguments[:body]
         | 
| 62 63 | 
             
                      raise ArgumentError, "Required argument 'name' missing" unless arguments[:name]
         | 
| 63 64 |  | 
| 64 65 | 
             
                      arguments = arguments.clone
         | 
| @@ -48,7 +48,7 @@ module Elasticsearch | |
| 48 48 | 
             
                    # @option arguments [Boolean] :create If `true`, this request cannot replace or update existing index templates.
         | 
| 49 49 | 
             
                    # @option arguments [Time] :master_timeout Period to wait for a connection to the master node.
         | 
| 50 50 | 
             
                    #  If no response is received before the timeout expires, the request fails and returns an error. Server default: 30s.
         | 
| 51 | 
            -
                    # @option arguments [String] :cause User defined reason for creating/updating the index template
         | 
| 51 | 
            +
                    # @option arguments [String] :cause User defined reason for creating/updating the index template Server default: api.
         | 
| 52 52 | 
             
                    # @option arguments [Boolean] :error_trace When set to `true` Elasticsearch will include the full stack trace of errors
         | 
| 53 53 | 
             
                    #  when they occur.
         | 
| 54 54 | 
             
                    # @option arguments [String, Array<String>] :filter_path Comma-separated list of filters in dot notation which reduce the response
         | 
| @@ -32,7 +32,7 @@ module Elasticsearch | |
| 32 32 | 
             
                    # - Update supported mapping parameters
         | 
| 33 33 | 
             
                    # - Change a field's mapping using reindexing
         | 
| 34 34 | 
             
                    # - Rename a field using a field alias
         | 
| 35 | 
            -
                    # Learn how to use the update mapping API with practical examples in the {https://www.elastic.co/docs | 
| 35 | 
            +
                    # Learn how to use the update mapping API with practical examples in the {https://www.elastic.co/docs/manage-data/data-store/mapping/update-mappings-examples Update mapping API examples} guide.
         | 
| 36 36 | 
             
                    #
         | 
| 37 37 | 
             
                    # @option arguments [String, Array] :index A comma-separated list of index names the mapping should be added to (supports wildcards); use `_all` or omit to add the mapping on all indices. (*Required*)
         | 
| 38 38 | 
             
                    # @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.
         | 
| @@ -45,7 +45,7 @@ module Elasticsearch | |
| 45 45 | 
             
                    # @option arguments [Integer] :order Order in which Elasticsearch applies this template if index
         | 
| 46 46 | 
             
                    #  matches multiple templates.Templates with lower 'order' values are merged first. Templates with higher
         | 
| 47 47 | 
             
                    #  'order' values are merged later, overriding templates with lower values.
         | 
| 48 | 
            -
                    # @option arguments [String] :cause User defined reason for creating/updating the index template
         | 
| 48 | 
            +
                    # @option arguments [String] :cause User defined reason for creating/updating the index template Server default: .
         | 
| 49 49 | 
             
                    # @option arguments [Boolean] :error_trace When set to `true` Elasticsearch will include the full stack trace of errors
         | 
| 50 50 | 
             
                    #  when they occur.
         | 
| 51 51 | 
             
                    # @option arguments [String, Array<String>] :filter_path Comma-separated list of filters in dot notation which reduce the response
         | 
| @@ -27,6 +27,7 @@ module Elasticsearch | |
| 27 27 | 
             
                    # For data streams, the API runs the refresh operation on the stream’s backing indices.
         | 
| 28 28 | 
             
                    # By default, Elasticsearch periodically refreshes indices every second, but only on indices that have received one search request or more in the last 30 seconds.
         | 
| 29 29 | 
             
                    # You can change this default interval with the `index.refresh_interval` setting.
         | 
| 30 | 
            +
                    # In Elastic Cloud Serverless, the default refresh interval is 5 seconds across all indices.
         | 
| 30 31 | 
             
                    # Refresh requests are synchronous and do not return a response until the refresh operation completes.
         | 
| 31 32 | 
             
                    # Refreshes are resource-intensive.
         | 
| 32 33 | 
             
                    # To ensure good cluster performance, it's recommended to wait for Elasticsearch's periodic refresh rather than performing an explicit refresh when possible.
         | 
| @@ -35,6 +35,15 @@ module Elasticsearch | |
| 35 35 | 
             
                    # @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.
         | 
| 36 36 | 
             
                    #  This behavior applies even if the request targets other open indices.
         | 
| 37 37 | 
             
                    #  For example, a request targeting `foo*,bar*` returns an error if an index starts with `foo` but no index starts with `bar`. Server default: true.
         | 
| 38 | 
            +
                    # @option arguments [String, Array<String>] :mode Filter indices by index mode - standard, lookup, time_series, etc. Comma-separated list of IndexMode. Empty means no filter.
         | 
| 39 | 
            +
                    # @option arguments [String] :project_routing Specifies a subset of projects to target using project
         | 
| 40 | 
            +
                    #  metadata tags in a subset of Lucene query syntax.
         | 
| 41 | 
            +
                    #  Allowed Lucene queries: the _alias tag and a single value (possibly wildcarded).
         | 
| 42 | 
            +
                    #  Examples:
         | 
| 43 | 
            +
                    #   _alias:my-project
         | 
| 44 | 
            +
                    #   _alias:_origin
         | 
| 45 | 
            +
                    #   _alias:*pr*
         | 
| 46 | 
            +
                    #  Supported in serverless only.
         | 
| 38 47 | 
             
                    # @option arguments [Boolean] :error_trace When set to `true` Elasticsearch will include the full stack trace of errors
         | 
| 39 48 | 
             
                    #  when they occur.
         | 
| 40 49 | 
             
                    # @option arguments [String, Array<String>] :filter_path Comma-separated list of filters in dot notation which reduce the response
         | 
| @@ -23,7 +23,7 @@ module Elasticsearch | |
| 23 23 | 
             
                module Indices
         | 
| 24 24 | 
             
                  module Actions
         | 
| 25 25 | 
             
                    # Roll over to a new index.
         | 
| 26 | 
            -
                    # TIP:  | 
| 26 | 
            +
                    # TIP: We recommend using the index lifecycle rollover action to automate rollovers. However, Serverless does not support Index Lifecycle Management (ILM), so don't use this approach in the Serverless context.
         | 
| 27 27 | 
             
                    # The rollover API creates a new index for a data stream or index alias.
         | 
| 28 28 | 
             
                    # The API behavior depends on the rollover target.
         | 
| 29 29 | 
             
                    # **Roll over a data stream**
         | 
| @@ -78,6 +78,7 @@ module Elasticsearch | |
| 78 78 | 
             
                      end
         | 
| 79 79 | 
             
                      request_opts[:defined_params] = defined_params unless defined_params.empty?
         | 
| 80 80 |  | 
| 81 | 
            +
                      raise ArgumentError, "Required argument 'body' missing" unless arguments[:body]
         | 
| 81 82 | 
             
                      raise ArgumentError, "Required argument 'index' missing" unless arguments[:index]
         | 
| 82 83 | 
             
                      raise ArgumentError, "Required argument 'target' missing" unless arguments[:target]
         | 
| 83 84 |  | 
| @@ -42,6 +42,7 @@ module Elasticsearch | |
| 42 42 | 
             
                    # @option arguments [Boolean] :pretty If set to `true` the returned JSON will be "pretty-formatted". Only use
         | 
| 43 43 | 
             
                    #  this option for debugging only.
         | 
| 44 44 | 
             
                    # @option arguments [Hash] :headers Custom HTTP headers
         | 
| 45 | 
            +
                    # @option arguments [Hash] :body index_template
         | 
| 45 46 | 
             
                    #
         | 
| 46 47 | 
             
                    # @see https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-indices-simulate-index-template
         | 
| 47 48 | 
             
                    #
         | 
| @@ -58,7 +59,7 @@ module Elasticsearch | |
| 58 59 | 
             
                      arguments = arguments.clone
         | 
| 59 60 | 
             
                      headers = arguments.delete(:headers) || {}
         | 
| 60 61 |  | 
| 61 | 
            -
                      body =  | 
| 62 | 
            +
                      body = arguments.delete(:body)
         | 
| 62 63 |  | 
| 63 64 | 
             
                      _name = arguments.delete(:name)
         | 
| 64 65 |  | 
| @@ -28,7 +28,7 @@ module Elasticsearch | |
| 28 28 | 
             
                    # @option arguments [String] :name Name of the index template to simulate. To test a template configuration before you add it to the cluster, omit
         | 
| 29 29 | 
             
                    #  this parameter and specify the template configuration in the request body.
         | 
| 30 30 | 
             
                    # @option arguments [Boolean] :create If true, the template passed in the body is only used if no existing templates match the same index patterns. If false, the simulation uses the template with the highest priority. Note that the template is not permanently added or updated in either case; it is only used for the simulation.
         | 
| 31 | 
            -
                    # @option arguments [String] :cause User defined reason for dry-run creating the new template for simulation purposes
         | 
| 31 | 
            +
                    # @option arguments [String] :cause User defined reason for dry-run creating the new template for simulation purposes Server default: false.
         | 
| 32 32 | 
             
                    # @option arguments [Time] :master_timeout Period to wait for a connection to the master node. If no response is received before the timeout expires, the request fails and returns an error. Server default: 30s.
         | 
| 33 33 | 
             
                    # @option arguments [Boolean] :include_defaults If true, returns all relevant default configurations for the index template.
         | 
| 34 34 | 
             
                    # @option arguments [Boolean] :error_trace When set to `true` Elasticsearch will include the full stack trace of errors
         | 
| @@ -81,6 +81,7 @@ module Elasticsearch | |
| 81 81 | 
             
                      end
         | 
| 82 82 | 
             
                      request_opts[:defined_params] = defined_params unless defined_params.empty?
         | 
| 83 83 |  | 
| 84 | 
            +
                      raise ArgumentError, "Required argument 'body' missing" unless arguments[:body]
         | 
| 84 85 | 
             
                      raise ArgumentError, "Required argument 'index' missing" unless arguments[:index]
         | 
| 85 86 | 
             
                      raise ArgumentError, "Required argument 'target' missing" unless arguments[:target]
         | 
| 86 87 |  | 
| @@ -43,7 +43,7 @@ module Elasticsearch | |
| 43 43 | 
             
                    # @option arguments [String, Array<String>] :groups Comma-separated list of search groups to include in the search statistics.
         | 
| 44 44 | 
             
                    # @option arguments [Boolean] :include_segment_file_sizes If true, the call reports the aggregated disk usage of each one of the Lucene index files (only applies if segment stats are requested).
         | 
| 45 45 | 
             
                    # @option arguments [Boolean] :include_unloaded_segments If true, the response includes information from segments that are not loaded into memory.
         | 
| 46 | 
            -
                    # @option arguments [String] :level Indicates whether statistics are aggregated at the cluster,  | 
| 46 | 
            +
                    # @option arguments [String] :level Indicates whether statistics are aggregated at the cluster, indices, or shards level. Server default: indices.
         | 
| 47 47 | 
             
                    # @option arguments [Boolean] :error_trace When set to `true` Elasticsearch will include the full stack trace of errors
         | 
| 48 48 | 
             
                    #  when they occur.
         | 
| 49 49 | 
             
                    # @option arguments [String, Array<String>] :filter_path Comma-separated list of filters in dot notation which reduce the response
         | 
| @@ -34,7 +34,7 @@ module Elasticsearch | |
| 34 34 | 
             
                    # @option arguments [String] :analyzer Analyzer to use for the query string.
         | 
| 35 35 | 
             
                    #  This parameter can only be used when the `q` query string parameter is specified.
         | 
| 36 36 | 
             
                    # @option arguments [Boolean] :analyze_wildcard If `true`, wildcard and prefix queries are analyzed.
         | 
| 37 | 
            -
                    # @option arguments [String] :default_operator The default operator for query string query: ` | 
| 37 | 
            +
                    # @option arguments [String] :default_operator The default operator for query string query: `and` or `or`. Server default: or.
         | 
| 38 38 | 
             
                    # @option arguments [String] :df Field to use as default where no field prefix is given in the query string.
         | 
| 39 39 | 
             
                    #  This parameter can only be used when the `q` query string parameter is specified.
         | 
| 40 40 | 
             
                    # @option arguments [String, Array<String>] :expand_wildcards Type of index that wildcard patterns can match.
         | 
| @@ -50,6 +50,7 @@ module Elasticsearch | |
| 50 50 | 
             
                      end
         | 
| 51 51 | 
             
                      request_opts[:defined_params] = defined_params unless defined_params.empty?
         | 
| 52 52 |  | 
| 53 | 
            +
                      raise ArgumentError, "Required argument 'body' missing" unless arguments[:body]
         | 
| 53 54 | 
             
                      raise ArgumentError, "Required argument 'inference_id' missing" unless arguments[:inference_id]
         | 
| 54 55 |  | 
| 55 56 | 
             
                      arguments = arguments.clone
         | 
| @@ -55,6 +55,7 @@ module Elasticsearch | |
| 55 55 | 
             
                      end
         | 
| 56 56 | 
             
                      request_opts[:defined_params] = defined_params unless defined_params.empty?
         | 
| 57 57 |  | 
| 58 | 
            +
                      raise ArgumentError, "Required argument 'body' missing" unless arguments[:body]
         | 
| 58 59 | 
             
                      raise ArgumentError, "Required argument 'inference_id' missing" unless arguments[:inference_id]
         | 
| 59 60 |  | 
| 60 61 | 
             
                      arguments = arguments.clone
         | 
| @@ -27,24 +27,26 @@ module Elasticsearch | |
| 27 27 | 
             
                    # For built-in models and models uploaded through Eland, the inference APIs offer an alternative way to use and manage trained models.
         | 
| 28 28 | 
             
                    # However, if you do not plan to use the inference APIs to use these models or if you want to use non-NLP models, use the machine learning trained model APIs.
         | 
| 29 29 | 
             
                    # The following integrations are available through the inference API. You can find the available task types next to the integration name:
         | 
| 30 | 
            +
                    # * AI21 (`chat_completion`, `completion`)
         | 
| 30 31 | 
             
                    # * AlibabaCloud AI Search (`completion`, `rerank`, `sparse_embedding`, `text_embedding`)
         | 
| 31 32 | 
             
                    # * Amazon Bedrock (`completion`, `text_embedding`)
         | 
| 32 33 | 
             
                    # * Amazon SageMaker (`chat_completion`, `completion`, `rerank`, `sparse_embedding`, `text_embedding`)
         | 
| 33 34 | 
             
                    # * Anthropic (`completion`)
         | 
| 34 | 
            -
                    # * Azure AI Studio (`completion`, `text_embedding`)
         | 
| 35 | 
            +
                    # * Azure AI Studio (`completion`, 'rerank', `text_embedding`)
         | 
| 35 36 | 
             
                    # * Azure OpenAI (`completion`, `text_embedding`)
         | 
| 36 37 | 
             
                    # * Cohere (`completion`, `rerank`, `text_embedding`)
         | 
| 37 | 
            -
                    # * DeepSeek (` | 
| 38 | 
            +
                    # * DeepSeek (`chat_completion`, `completion`)
         | 
| 38 39 | 
             
                    # * Elasticsearch (`rerank`, `sparse_embedding`, `text_embedding` - this service is for built-in models and models uploaded through Eland)
         | 
| 39 40 | 
             
                    # * ELSER (`sparse_embedding`)
         | 
| 40 41 | 
             
                    # * Google AI Studio (`completion`, `text_embedding`)
         | 
| 41 | 
            -
                    # * Google Vertex AI (`rerank`, `text_embedding`)
         | 
| 42 | 
            +
                    # * Google Vertex AI (`chat_completion`, `completion`, `rerank`, `text_embedding`)
         | 
| 42 43 | 
             
                    # * Hugging Face (`chat_completion`, `completion`, `rerank`, `text_embedding`)
         | 
| 44 | 
            +
                    # * JinaAI (`rerank`, `text_embedding`)
         | 
| 45 | 
            +
                    # * Llama (`chat_completion`, `completion`, `text_embedding`)
         | 
| 43 46 | 
             
                    # * Mistral (`chat_completion`, `completion`, `text_embedding`)
         | 
| 44 47 | 
             
                    # * OpenAI (`chat_completion`, `completion`, `text_embedding`)
         | 
| 45 | 
            -
                    # * VoyageAI (` | 
| 48 | 
            +
                    # * VoyageAI (`rerank`, `text_embedding`)
         | 
| 46 49 | 
             
                    # * Watsonx inference integration (`text_embedding`)
         | 
| 47 | 
            -
                    # * JinaAI (`text_embedding`, `rerank`)
         | 
| 48 50 | 
             
                    #
         | 
| 49 51 | 
             
                    # @option arguments [String] :task_type The task type. Refer to the integration list in the API description for the available task types.
         | 
| 50 52 | 
             
                    # @option arguments [String] :inference_id The inference Id (*Required*)
         | 
| @@ -0,0 +1,79 @@ | |
| 1 | 
            +
            # Licensed to Elasticsearch B.V. under one or more contributor
         | 
| 2 | 
            +
            # license agreements. See the NOTICE file distributed with
         | 
| 3 | 
            +
            # this work for additional information regarding copyright
         | 
| 4 | 
            +
            # ownership. Elasticsearch B.V. licenses this file to you under
         | 
| 5 | 
            +
            # the Apache License, Version 2.0 (the "License"); you may
         | 
| 6 | 
            +
            # not use this file except in compliance with the License.
         | 
| 7 | 
            +
            # You may obtain a copy of the License at
         | 
| 8 | 
            +
            #
         | 
| 9 | 
            +
            #   http://www.apache.org/licenses/LICENSE-2.0
         | 
| 10 | 
            +
            #
         | 
| 11 | 
            +
            # Unless required by applicable law or agreed to in writing,
         | 
| 12 | 
            +
            # software distributed under the License is distributed on an
         | 
| 13 | 
            +
            # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
         | 
| 14 | 
            +
            # KIND, either express or implied.  See the License for the
         | 
| 15 | 
            +
            # specific language governing permissions and limitations
         | 
| 16 | 
            +
            # under the License.
         | 
| 17 | 
            +
            #
         | 
| 18 | 
            +
            # This code was automatically generated from the Elasticsearch Specification
         | 
| 19 | 
            +
            # See https://github.com/elastic/elasticsearch-specification
         | 
| 20 | 
            +
            # See Elasticsearch::ES_SPECIFICATION_COMMIT for commit hash.
         | 
| 21 | 
            +
            module Elasticsearch
         | 
| 22 | 
            +
              module API
         | 
| 23 | 
            +
                module Inference
         | 
| 24 | 
            +
                  module Actions
         | 
| 25 | 
            +
                    # Create a AI21 inference endpoint.
         | 
| 26 | 
            +
                    # Create an inference endpoint to perform an inference task with the `ai21` service.
         | 
| 27 | 
            +
                    #
         | 
| 28 | 
            +
                    # @option arguments [String] :task_type The type of the inference task that the model will perform. (*Required*)
         | 
| 29 | 
            +
                    # @option arguments [String] :ai21_inference_id The unique identifier of the inference endpoint. (*Required*)
         | 
| 30 | 
            +
                    # @option arguments [Time] :timeout Specifies the amount of time to wait for the inference endpoint to be created. Server default: 30s.
         | 
| 31 | 
            +
                    # @option arguments [Boolean] :error_trace When set to `true` Elasticsearch will include the full stack trace of errors
         | 
| 32 | 
            +
                    #  when they occur.
         | 
| 33 | 
            +
                    # @option arguments [String, Array<String>] :filter_path Comma-separated list of filters in dot notation which reduce the response
         | 
| 34 | 
            +
                    #  returned by Elasticsearch.
         | 
| 35 | 
            +
                    # @option arguments [Boolean] :human When set to `true` will return statistics in a format suitable for humans.
         | 
| 36 | 
            +
                    #  For example `"exists_time": "1h"` for humans and
         | 
| 37 | 
            +
                    #  `"exists_time_in_millis": 3600000` for computers. When disabled the human
         | 
| 38 | 
            +
                    #  readable values will be omitted. This makes sense for responses being consumed
         | 
| 39 | 
            +
                    #  only by machines.
         | 
| 40 | 
            +
                    # @option arguments [Boolean] :pretty If set to `true` the returned JSON will be "pretty-formatted". Only use
         | 
| 41 | 
            +
                    #  this option for debugging only.
         | 
| 42 | 
            +
                    # @option arguments [Hash] :headers Custom HTTP headers
         | 
| 43 | 
            +
                    # @option arguments [Hash] :body request body
         | 
| 44 | 
            +
                    #
         | 
| 45 | 
            +
                    # @see https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-inference-put-ai21
         | 
| 46 | 
            +
                    #
         | 
| 47 | 
            +
                    def put_ai21(arguments = {})
         | 
| 48 | 
            +
                      request_opts = { endpoint: arguments[:endpoint] || 'inference.put_ai21' }
         | 
| 49 | 
            +
             | 
| 50 | 
            +
                      defined_params = [:task_type, :ai21_inference_id].each_with_object({}) do |variable, set_variables|
         | 
| 51 | 
            +
                        set_variables[variable] = arguments[variable] if arguments.key?(variable)
         | 
| 52 | 
            +
                      end
         | 
| 53 | 
            +
                      request_opts[:defined_params] = defined_params unless defined_params.empty?
         | 
| 54 | 
            +
             | 
| 55 | 
            +
                      raise ArgumentError, "Required argument 'body' missing" unless arguments[:body]
         | 
| 56 | 
            +
                      raise ArgumentError, "Required argument 'task_type' missing" unless arguments[:task_type]
         | 
| 57 | 
            +
                      raise ArgumentError, "Required argument 'ai21_inference_id' missing" unless arguments[:ai21_inference_id]
         | 
| 58 | 
            +
             | 
| 59 | 
            +
                      arguments = arguments.clone
         | 
| 60 | 
            +
                      headers = arguments.delete(:headers) || {}
         | 
| 61 | 
            +
             | 
| 62 | 
            +
                      body = arguments.delete(:body)
         | 
| 63 | 
            +
             | 
| 64 | 
            +
                      _task_type = arguments.delete(:task_type)
         | 
| 65 | 
            +
             | 
| 66 | 
            +
                      _ai21_inference_id = arguments.delete(:ai21_inference_id)
         | 
| 67 | 
            +
             | 
| 68 | 
            +
                      method = Elasticsearch::API::HTTP_PUT
         | 
| 69 | 
            +
                      path   = "_inference/#{Utils.listify(_task_type)}/#{Utils.listify(_ai21_inference_id)}"
         | 
| 70 | 
            +
                      params = Utils.process_params(arguments)
         | 
| 71 | 
            +
             | 
| 72 | 
            +
                      Elasticsearch::API::Response.new(
         | 
| 73 | 
            +
                        perform_request(method, path, params, body, headers, request_opts)
         | 
| 74 | 
            +
                      )
         | 
| 75 | 
            +
                    end
         | 
| 76 | 
            +
                  end
         | 
| 77 | 
            +
                end
         | 
| 78 | 
            +
              end
         | 
| 79 | 
            +
            end
         | 
| @@ -52,6 +52,7 @@ module Elasticsearch | |
| 52 52 | 
             
                      end
         | 
| 53 53 | 
             
                      request_opts[:defined_params] = defined_params unless defined_params.empty?
         | 
| 54 54 |  | 
| 55 | 
            +
                      raise ArgumentError, "Required argument 'body' missing" unless arguments[:body]
         | 
| 55 56 | 
             
                      raise ArgumentError, "Required argument 'task_type' missing" unless arguments[:task_type]
         | 
| 56 57 |  | 
| 57 58 | 
             
                      unless arguments[:alibabacloud_inference_id]
         | 
| @@ -52,6 +52,7 @@ module Elasticsearch | |
| 52 52 | 
             
                      end
         | 
| 53 53 | 
             
                      request_opts[:defined_params] = defined_params unless defined_params.empty?
         | 
| 54 54 |  | 
| 55 | 
            +
                      raise ArgumentError, "Required argument 'body' missing" unless arguments[:body]
         | 
| 55 56 | 
             
                      raise ArgumentError, "Required argument 'task_type' missing" unless arguments[:task_type]
         | 
| 56 57 |  | 
| 57 58 | 
             
                      unless arguments[:amazonbedrock_inference_id]
         | 
| @@ -52,6 +52,7 @@ module Elasticsearch | |
| 52 52 | 
             
                      end
         | 
| 53 53 | 
             
                      request_opts[:defined_params] = defined_params unless defined_params.empty?
         | 
| 54 54 |  | 
| 55 | 
            +
                      raise ArgumentError, "Required argument 'body' missing" unless arguments[:body]
         | 
| 55 56 | 
             
                      raise ArgumentError, "Required argument 'task_type' missing" unless arguments[:task_type]
         | 
| 56 57 |  | 
| 57 58 | 
             
                      unless arguments[:amazonsagemaker_inference_id]
         | 
| @@ -53,6 +53,7 @@ module Elasticsearch | |
| 53 53 | 
             
                      end
         | 
| 54 54 | 
             
                      request_opts[:defined_params] = defined_params unless defined_params.empty?
         | 
| 55 55 |  | 
| 56 | 
            +
                      raise ArgumentError, "Required argument 'body' missing" unless arguments[:body]
         | 
| 56 57 | 
             
                      raise ArgumentError, "Required argument 'task_type' missing" unless arguments[:task_type]
         | 
| 57 58 |  | 
| 58 59 | 
             
                      unless arguments[:anthropic_inference_id]
         | 
| @@ -52,6 +52,7 @@ module Elasticsearch | |
| 52 52 | 
             
                      end
         | 
| 53 53 | 
             
                      request_opts[:defined_params] = defined_params unless defined_params.empty?
         | 
| 54 54 |  | 
| 55 | 
            +
                      raise ArgumentError, "Required argument 'body' missing" unless arguments[:body]
         | 
| 55 56 | 
             
                      raise ArgumentError, "Required argument 'task_type' missing" unless arguments[:task_type]
         | 
| 56 57 |  | 
| 57 58 | 
             
                      unless arguments[:azureaistudio_inference_id]
         | 
| @@ -57,6 +57,7 @@ module Elasticsearch | |
| 57 57 | 
             
                      end
         | 
| 58 58 | 
             
                      request_opts[:defined_params] = defined_params unless defined_params.empty?
         | 
| 59 59 |  | 
| 60 | 
            +
                      raise ArgumentError, "Required argument 'body' missing" unless arguments[:body]
         | 
| 60 61 | 
             
                      raise ArgumentError, "Required argument 'task_type' missing" unless arguments[:task_type]
         | 
| 61 62 |  | 
| 62 63 | 
             
                      unless arguments[:azureopenai_inference_id]
         | 
| @@ -52,6 +52,7 @@ module Elasticsearch | |
| 52 52 | 
             
                      end
         | 
| 53 53 | 
             
                      request_opts[:defined_params] = defined_params unless defined_params.empty?
         | 
| 54 54 |  | 
| 55 | 
            +
                      raise ArgumentError, "Required argument 'body' missing" unless arguments[:body]
         | 
| 55 56 | 
             
                      raise ArgumentError, "Required argument 'task_type' missing" unless arguments[:task_type]
         | 
| 56 57 |  | 
| 57 58 | 
             
                      unless arguments[:cohere_inference_id]
         |