Module: OpenSearch::API::Actions
- Defined in:
- lib/opensearch/api/actions/get.rb,
lib/opensearch/api/actions/bulk.rb,
lib/opensearch/api/actions/info.rb,
lib/opensearch/api/actions/mget.rb,
lib/opensearch/api/actions/ping.rb,
lib/opensearch/api/actions/count.rb,
lib/opensearch/api/actions/index.rb,
lib/opensearch/api/actions/create.rb,
lib/opensearch/api/actions/delete.rb,
lib/opensearch/api/actions/exists.rb,
lib/opensearch/api/actions/scroll.rb,
lib/opensearch/api/actions/search.rb,
lib/opensearch/api/actions/update.rb,
lib/opensearch/api/actions/explain.rb,
lib/opensearch/api/actions/msearch.rb,
lib/opensearch/api/actions/reindex.rb,
lib/opensearch/api/actions/benchmark.rb,
lib/opensearch/api/actions/rank_eval.rb,
lib/opensearch/api/actions/create_pit.rb,
lib/opensearch/api/actions/delete_pit.rb,
lib/opensearch/api/actions/field_caps.rb,
lib/opensearch/api/actions/get_script.rb,
lib/opensearch/api/actions/get_source.rb,
lib/opensearch/api/actions/put_script.rb,
lib/opensearch/api/actions/termvectors.rb,
lib/opensearch/api/actions/clear_scroll.rb,
lib/opensearch/api/actions/get_all_pits.rb,
lib/opensearch/api/actions/mtermvectors.rb,
lib/opensearch/api/actions/delete_script.rb,
lib/opensearch/api/actions/exists_source.rb,
lib/opensearch/api/actions/search_shards.rb,
lib/opensearch/api/actions/abort_benchmark.rb,
lib/opensearch/api/actions/delete_all_pits.rb,
lib/opensearch/api/actions/delete_by_query.rb,
lib/opensearch/api/actions/params_registry.rb,
lib/opensearch/api/actions/search_template.rb,
lib/opensearch/api/actions/update_by_query.rb,
lib/opensearch/api/actions/msearch_template.rb,
lib/opensearch/api/actions/get_script_context.rb,
lib/opensearch/api/actions/reindex_rethrottle.rb,
lib/opensearch/api/actions/delete_by_rethrottle.rb,
lib/opensearch/api/actions/get_script_languages.rb,
lib/opensearch/api/actions/render_search_template.rb,
lib/opensearch/api/actions/scripts_painless_execute.rb,
lib/opensearch/api/actions/delete_by_query_rethrottle.rb,
lib/opensearch/api/actions/update_by_query_rethrottle.rb
Defined Under Namespace
Modules: ParamsRegistry
Instance Method Summary collapse
-
#abort_benchmark(arguments = {}) ⇒ Object
Abort a running benchmark.
-
#benchmark(arguments = {}) ⇒ Object
Run a single query, or a set of queries, and return statistics on their performance.
-
#bulk(arguments = {}) ⇒ Object
Allows to perform multiple index/update/delete operations in a single request.
-
#clear_scroll(arguments = {}) ⇒ Object
Explicitly clears the search context for a scroll.
-
#count(arguments = {}) ⇒ Object
Returns number of documents matching a query.
-
#create(arguments = {}) ⇒ Object
Creates a new document in the index.
-
#create_pit(arguments = {}) ⇒ Object
Creates a point in time.
-
#delete(arguments = {}) ⇒ Object
Removes a document from the index.
-
#delete_all_pits(arguments = {}) ⇒ Object
Deletes all PITs.
-
#delete_by_query(arguments = {}) ⇒ Object
Deletes documents matching the provided query.
-
#delete_by_query_rethrottle(arguments = {}) ⇒ Object
Changes the number of requests per second for a particular Delete By Query operation.
-
#delete_pit(arguments = {}) ⇒ Object
Deletes one or several PITs.
- #delete_script(arguments = {}) ⇒ Object
-
#exists(arguments = {}) ⇒ Object
(also: #exists?)
Returns information about whether a document exists in an index.
-
#exists_source(arguments = {}) ⇒ Object
(also: #exists_source?)
Returns information about whether a document source exists in an index.
-
#explain(arguments = {}) ⇒ Object
Returns information about why a specific matches (or doesn’t match) a query.
-
#field_caps(arguments = {}) ⇒ Object
Returns the information about the capabilities of fields among multiple indices.
-
#get(arguments = {}) ⇒ Object
Returns a document.
-
#get_all_pits(arguments = {}) ⇒ Object
Gets all PITs.
-
#get_script(arguments = {}) ⇒ Object
Returns a script.
-
#get_script_context(arguments = {}) ⇒ Object
Returns all script contexts.
-
#get_script_languages(arguments = {}) ⇒ Object
Returns available script types, languages and contexts This functionality is Experimental and may be changed or removed completely in a future release.
-
#get_source(arguments = {}) ⇒ Object
Returns the source of a document.
-
#index(arguments = {}) ⇒ Object
Creates or updates a document in an index.
-
#info(arguments = {}) ⇒ Object
Returns basic information about the cluster.
-
#mget(arguments = {}) ⇒ Object
Allows to get multiple documents in one request.
-
#msearch(arguments = {}) ⇒ Object
Allows to execute several search operations in one request.
-
#msearch_template(arguments = {}) ⇒ Object
Allows to execute several search template operations in one request.
-
#mtermvectors(arguments = {}) ⇒ Object
Returns multiple termvectors in one request.
-
#ping(arguments = {}) ⇒ Object
Returns whether the cluster is running.
-
#put_script(arguments = {}) ⇒ Object
Creates or updates a script.
-
#rank_eval(arguments = {}) ⇒ Object
Allows to evaluate the quality of ranked search results over a set of typical search queries This functionality is Experimental and may be changed or removed completely in a future release.
-
#reindex(arguments = {}) ⇒ Object
Allows to copy documents from one index to another, optionally filtering the source documents by a query, changing the destination index settings, or fetching the documents from a remote cluster.
-
#reindex_rethrottle(arguments = {}) ⇒ Object
Changes the number of requests per second for a particular Reindex operation.
-
#render_search_template(arguments = {}) ⇒ Object
Allows to use the Mustache language to pre-render a search definition.
-
#scripts_painless_execute(arguments = {}) ⇒ Object
Allows an arbitrary script to be executed and a result to be returned This functionality is Experimental and may be changed or removed completely in a future release.
-
#scroll(arguments = {}) ⇒ Object
Allows to retrieve a large numbers of results from a single search request.
-
#search(arguments = {}) ⇒ Object
Returns results matching a query.
-
#search_shards(arguments = {}) ⇒ Object
Returns information about the indices and shards that a search request would be executed against.
-
#search_template(arguments = {}) ⇒ Object
Allows to use the Mustache language to pre-render a search definition.
-
#termvector(arguments = {}) ⇒ Object
Deprecated: Use the plural version, #termvectors.
-
#termvectors(arguments = {}) ⇒ Object
Returns information and statistics about terms in the fields of a particular document.
-
#update(arguments = {}) ⇒ Object
Updates a document with a script or partial document.
-
#update_by_query(arguments = {}) ⇒ Object
Performs an update on every document in the index without changing the source, for example to pick up a mapping change.
-
#update_by_query_rethrottle(arguments = {}) ⇒ Object
Changes the number of requests per second for a particular Update By Query operation.
Instance Method Details
#abort_benchmark(arguments = {}) ⇒ Object
Abort a running benchmark
39 40 41 42 43 44 45 46 |
# File 'lib/opensearch/api/actions/abort_benchmark.rb', line 39 def abort_benchmark(arguments = {}) method = HTTP_POST path = "_bench/abort/#{arguments[:name]}" params = {} body = nil perform_request(method, path, params, body).body end |
#benchmark(arguments = {}) ⇒ Object
Run a single query, or a set of queries, and return statistics on their performance
73 74 75 76 77 78 79 80 |
# File 'lib/opensearch/api/actions/benchmark.rb', line 73 def benchmark(arguments = {}) method = HTTP_PUT path = "_bench" params = Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__) body = arguments[:body] perform_request(method, path, params, body).body end |
#bulk(arguments = {}) ⇒ Object
Allows to perform multiple index/update/delete operations in a single request.
or the conveniency “combined” format can be passed, refer to OpenSearch::API::Utils.__bulkify documentation.
47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 |
# File 'lib/opensearch/api/actions/bulk.rb', line 47 def bulk(arguments = {}) raise ArgumentError, "Required argument 'body' missing" unless arguments[:body] headers = arguments.delete(:headers) || {} arguments = arguments.clone _index = arguments.delete(:index) method = OpenSearch::API::HTTP_POST path = if _index "#{Utils.__listify(_index)}/_bulk" else "_bulk" end params = Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__) body = arguments[:body] if body.is_a? Array payload = OpenSearch::API::Utils.__bulkify(body) else payload = body end headers.merge!("Content-Type" => "application/x-ndjson") perform_request(method, path, params, payload, headers).body end |
#clear_scroll(arguments = {}) ⇒ Object
Explicitly clears the search context for a scroll.
*Deprecation notice*: A scroll id can be quite large and should be specified as part of the body Deprecated since version 7.0.0
42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 |
# File 'lib/opensearch/api/actions/clear_scroll.rb', line 42 def clear_scroll(arguments = {}) headers = arguments.delete(:headers) || {} arguments = arguments.clone _scroll_id = arguments.delete(:scroll_id) method = OpenSearch::API::HTTP_DELETE path = if _scroll_id "_search/scroll/#{Utils.__listify(_scroll_id)}" else "_search/scroll" end params = {} body = arguments[:body] perform_request(method, path, params, body, headers).body end |
#count(arguments = {}) ⇒ Object
Returns number of documents matching a query.
*Deprecation notice*: Specifying types in urls has been deprecated Deprecated since version 7.0.0
56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 |
# File 'lib/opensearch/api/actions/count.rb', line 56 def count(arguments = {}) headers = arguments.delete(:headers) || {} arguments = arguments.clone _index = arguments.delete(:index) method = OpenSearch::API::HTTP_POST path = if _index "#{Utils.__listify(_index)}/_count" else "_count" end params = Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__) body = arguments[:body] perform_request(method, path, params, body, headers).body end |
#create(arguments = {}) ⇒ Object
Creates a new document in the index.
Returns a 409 response when a document with a same ID already exists in the index.
*Deprecation notice*: Specifying types in urls has been deprecated Deprecated since version 7.0.0
51 52 53 54 55 56 57 |
# File 'lib/opensearch/api/actions/create.rb', line 51 def create(arguments = {}) if arguments[:id] index arguments.update op_type: 'create' else index arguments end end |
#create_pit(arguments = {}) ⇒ Object
Creates a point in time.
21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
# File 'lib/opensearch/api/actions/create_pit.rb', line 21 def create_pit(arguments = {}) raise ArgumentError, "Required argument 'index' missing" unless arguments[:index] raise ArgumentError, "Required argument 'keep_alive' missing" unless arguments[:keep_alive] arguments = arguments.clone _index = arguments.delete(:index) method = OpenSearch::API::HTTP_POST path = "#{Utils.__listify(_index)}/_search/point_in_time" params = Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__) body = nil perform_request(method, path, params, body).body end |
#delete(arguments = {}) ⇒ Object
Removes a document from the index.
*Deprecation notice*: Specifying types in urls has been deprecated Deprecated since version 7.0.0
50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 |
# File 'lib/opensearch/api/actions/delete.rb', line 50 def delete(arguments = {}) raise ArgumentError, "Required argument 'index' missing" unless arguments[:index] raise ArgumentError, "Required argument 'id' missing" unless arguments[:id] headers = arguments.delete(:headers) || {} arguments = arguments.clone _id = arguments.delete(:id) _index = arguments.delete(:index) method = OpenSearch::API::HTTP_DELETE path = "#{Utils.__listify(_index)}/_doc/#{Utils.__listify(_id)}" params = Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__) body = nil if Array(arguments[:ignore]).include?(404) Utils.__rescue_from_not_found { perform_request(method, path, params, body, headers).body } else perform_request(method, path, params, body, headers).body end end |
#delete_all_pits(arguments = {}) ⇒ Object
Deletes all PITs.
14 15 16 17 18 19 20 21 |
# File 'lib/opensearch/api/actions/delete_all_pits.rb', line 14 def delete_all_pits(arguments = {}) method = OpenSearch::API::HTTP_DELETE path = "_search/point_in_time/_all" params = Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__) body = nil perform_request(method, path, params, body).body end |
#delete_by_query(arguments = {}) ⇒ Object
Deletes documents matching the provided query.
*Deprecation notice*: Specifying types in urls has been deprecated Deprecated since version 7.0.0
75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 |
# File 'lib/opensearch/api/actions/delete_by_query.rb', line 75 def delete_by_query(arguments = {}) raise ArgumentError, "Required argument 'body' missing" unless arguments[:body] raise ArgumentError, "Required argument 'index' missing" unless arguments[:index] headers = arguments.delete(:headers) || {} arguments = arguments.clone _index = arguments.delete(:index) method = OpenSearch::API::HTTP_POST path = "#{Utils.__listify(_index)}/_delete_by_query" params = Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__) body = arguments[:body] perform_request(method, path, params, body, headers).body end |
#delete_by_query_rethrottle(arguments = {}) ⇒ Object
Changes the number of requests per second for a particular Delete By Query operation.
36 37 38 39 40 41 42 43 44 45 |
# File 'lib/opensearch/api/actions/delete_by_rethrottle.rb', line 36 def delete_by_query_rethrottle(arguments = {}) raise ArgumentError, "Required argument 'task_id' missing" unless arguments[:task_id] method = OpenSearch::API::HTTP_POST path = "_delete_by_query/#{arguments[:task_id]}/_rethrottle" params = OpenSearch::API::Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__) body = nil perform_request(method, path, params, body).body end |
#delete_pit(arguments = {}) ⇒ Object
Deletes one or several PITs.
16 17 18 19 20 21 22 23 24 25 |
# File 'lib/opensearch/api/actions/delete_pit.rb', line 16 def delete_pit(arguments = {}) raise ArgumentError, "Required argument 'body' missing" unless arguments[:body] method = OpenSearch::API::HTTP_DELETE path = "_search/point_in_time" params = Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__) body = arguments[:body] perform_request(method, path, params, body).body end |
#delete_script(arguments = {}) ⇒ Object
39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 |
# File 'lib/opensearch/api/actions/delete_script.rb', line 39 def delete_script(arguments = {}) raise ArgumentError, "Required argument 'id' missing" unless arguments[:id] headers = arguments.delete(:headers) || {} arguments = arguments.clone _id = arguments.delete(:id) method = OpenSearch::API::HTTP_DELETE path = "_scripts/#{Utils.__listify(_id)}" params = Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__) body = nil perform_request(method, path, params, body, headers).body end |
#exists(arguments = {}) ⇒ Object Also known as: exists?
Returns information about whether a document exists in an index.
*Deprecation notice*: Specifying types in urls has been deprecated Deprecated since version 7.0.0
52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 |
# File 'lib/opensearch/api/actions/exists.rb', line 52 def exists(arguments = {}) raise ArgumentError, "Required argument 'index' missing" unless arguments[:index] raise ArgumentError, "Required argument 'id' missing" unless arguments[:id] headers = arguments.delete(:headers) || {} arguments = arguments.clone _id = arguments.delete(:id) _index = arguments.delete(:index) method = OpenSearch::API::HTTP_HEAD path = "#{Utils.__listify(_index)}/_doc/#{Utils.__listify(_id)}" params = Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__) body = nil Utils.__rescue_from_not_found do perform_request(method, path, params, body, headers).status == 200 ? true : false end end |
#exists_source(arguments = {}) ⇒ Object Also known as: exists_source?
Returns information about whether a document source exists in an index.
*Deprecation notice*: Specifying types in urls has been deprecated Deprecated since version 7.0.0
51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 |
# File 'lib/opensearch/api/actions/exists_source.rb', line 51 def exists_source(arguments = {}) raise ArgumentError, "Required argument 'index' missing" unless arguments[:index] raise ArgumentError, "Required argument 'id' missing" unless arguments[:id] headers = arguments.delete(:headers) || {} arguments = arguments.clone _id = arguments.delete(:id) _index = arguments.delete(:index) method = OpenSearch::API::HTTP_HEAD path = "#{Utils.__listify(_index)}/_source/#{Utils.__listify(_id)}" params = Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__) body = nil perform_request(method, path, params, body, headers).body end |
#explain(arguments = {}) ⇒ Object
Returns information about why a specific matches (or doesn’t match) a query.
*Deprecation notice*: Specifying types in urls has been deprecated Deprecated since version 7.0.0
55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 |
# File 'lib/opensearch/api/actions/explain.rb', line 55 def explain(arguments = {}) raise ArgumentError, "Required argument 'index' missing" unless arguments[:index] raise ArgumentError, "Required argument 'id' missing" unless arguments[:id] headers = arguments.delete(:headers) || {} arguments = arguments.clone _id = arguments.delete(:id) _index = arguments.delete(:index) method = if arguments[:body] OpenSearch::API::HTTP_POST else OpenSearch::API::HTTP_GET end path = "#{Utils.__listify(_index)}/_explain/#{Utils.__listify(_id)}" params = Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__) body = arguments[:body] perform_request(method, path, params, body, headers).body end |
#field_caps(arguments = {}) ⇒ Object
Returns the information about the capabilities of fields among multiple indices.
42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 |
# File 'lib/opensearch/api/actions/field_caps.rb', line 42 def field_caps(arguments = {}) headers = arguments.delete(:headers) || {} arguments = arguments.clone _index = arguments.delete(:index) method = if arguments[:body] OpenSearch::API::HTTP_POST else OpenSearch::API::HTTP_GET end path = if _index "#{Utils.__listify(_index)}/_field_caps" else "_field_caps" end params = Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__) body = arguments[:body] perform_request(method, path, params, body, headers).body end |
#get(arguments = {}) ⇒ Object
Returns a document.
*Deprecation notice*: Specifying types in urls has been deprecated Deprecated since version 7.0.0
52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 |
# File 'lib/opensearch/api/actions/get.rb', line 52 def get(arguments = {}) raise ArgumentError, "Required argument 'index' missing" unless arguments[:index] raise ArgumentError, "Required argument 'id' missing" unless arguments[:id] headers = arguments.delete(:headers) || {} arguments = arguments.clone _id = arguments.delete(:id) _index = arguments.delete(:index) method = OpenSearch::API::HTTP_GET path = "#{Utils.__listify(_index)}/_doc/#{Utils.__listify(_id)}" params = Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__) body = nil if Array(arguments[:ignore]).include?(404) Utils.__rescue_from_not_found { perform_request(method, path, params, body, headers).body } else perform_request(method, path, params, body, headers).body end end |
#get_all_pits(arguments = {}) ⇒ Object
Gets all PITs.
14 15 16 17 18 19 20 21 |
# File 'lib/opensearch/api/actions/get_all_pits.rb', line 14 def get_all_pits(arguments = {}) method = OpenSearch::API::HTTP_GET path = "_search/point_in_time/_all" params = Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__) body = nil perform_request(method, path, params, body).body end |
#get_script(arguments = {}) ⇒ Object
Returns a script.
38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 |
# File 'lib/opensearch/api/actions/get_script.rb', line 38 def get_script(arguments = {}) raise ArgumentError, "Required argument 'id' missing" unless arguments[:id] headers = arguments.delete(:headers) || {} arguments = arguments.clone _id = arguments.delete(:id) method = OpenSearch::API::HTTP_GET path = "_scripts/#{Utils.__listify(_id)}" params = Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__) body = nil perform_request(method, path, params, body, headers).body end |
#get_script_context(arguments = {}) ⇒ Object
Returns all script contexts. This functionality is Experimental and may be changed or removed completely in a future release. OpenSearch will take a best effort approach to fix any issues, but experimental features are not subject to the support SLA of official GA features.
39 40 41 42 43 44 45 46 47 48 49 50 |
# File 'lib/opensearch/api/actions/get_script_context.rb', line 39 def get_script_context(arguments = {}) headers = arguments.delete(:headers) || {} arguments = arguments.clone method = OpenSearch::API::HTTP_GET path = "_script_context" params = {} body = nil perform_request(method, path, params, body, headers).body end |
#get_script_languages(arguments = {}) ⇒ Object
Returns available script types, languages and contexts This functionality is Experimental and may be changed or removed completely in a future release. OpenSearch will take a best effort approach to fix any issues, but experimental features are not subject to the support SLA of official GA features.
39 40 41 42 43 44 45 46 47 48 49 50 |
# File 'lib/opensearch/api/actions/get_script_languages.rb', line 39 def get_script_languages(arguments = {}) headers = arguments.delete(:headers) || {} arguments = arguments.clone method = OpenSearch::API::HTTP_GET path = "_script_language" params = {} body = nil perform_request(method, path, params, body, headers).body end |
#get_source(arguments = {}) ⇒ Object
Returns the source of a document.
*Deprecation notice*: Specifying types in urls has been deprecated Deprecated since version 7.0.0
51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 |
# File 'lib/opensearch/api/actions/get_source.rb', line 51 def get_source(arguments = {}) raise ArgumentError, "Required argument 'index' missing" unless arguments[:index] raise ArgumentError, "Required argument 'id' missing" unless arguments[:id] headers = arguments.delete(:headers) || {} arguments = arguments.clone _id = arguments.delete(:id) _index = arguments.delete(:index) method = OpenSearch::API::HTTP_GET path = "#{Utils.__listify(_index)}/_source/#{Utils.__listify(_id)}" params = Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__) body = nil perform_request(method, path, params, body, headers).body end |
#index(arguments = {}) ⇒ Object
Creates or updates a document in an index.
*Deprecation notice*: Specifying types in urls has been deprecated Deprecated since version 7.0.0
54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 |
# File 'lib/opensearch/api/actions/index.rb', line 54 def index(arguments = {}) raise ArgumentError, "Required argument 'body' missing" unless arguments[:body] raise ArgumentError, "Required argument 'index' missing" unless arguments[:index] headers = arguments.delete(:headers) || {} arguments = arguments.clone _id = arguments.delete(:id) _index = arguments.delete(:index) method = _id ? OpenSearch::API::HTTP_PUT : OpenSearch::API::HTTP_POST path = if _index && _id "#{Utils.__listify(_index)}/_doc/#{Utils.__listify(_id)}" else "#{Utils.__listify(_index)}/_doc" end params = Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__) body = arguments[:body] perform_request(method, path, params, body, headers).body end |
#info(arguments = {}) ⇒ Object
Returns basic information about the cluster.
35 36 37 38 39 40 41 42 43 44 45 46 |
# File 'lib/opensearch/api/actions/info.rb', line 35 def info(arguments = {}) headers = arguments.delete(:headers) || {} arguments = arguments.clone method = OpenSearch::API::HTTP_GET path = "" params = {} body = nil perform_request(method, path, params, body, headers).body end |
#mget(arguments = {}) ⇒ Object
Allows to get multiple documents in one request.
*Deprecation notice*: Specifying types in urls has been deprecated Deprecated since version 7.0.0
50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 |
# File 'lib/opensearch/api/actions/mget.rb', line 50 def mget(arguments = {}) raise ArgumentError, "Required argument 'body' missing" unless arguments[:body] headers = arguments.delete(:headers) || {} arguments = arguments.clone _index = arguments.delete(:index) method = OpenSearch::API::HTTP_POST path = if _index "#{Utils.__listify(_index)}/_mget" else "_mget" end params = Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__) body = arguments[:body] perform_request(method, path, params, body, headers).body end |
#msearch(arguments = {}) ⇒ Object
Allows to execute several search operations in one request.
*Deprecation notice*: Specifying types in urls has been deprecated Deprecated since version 7.0.0
49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 |
# File 'lib/opensearch/api/actions/msearch.rb', line 49 def msearch(arguments = {}) raise ArgumentError, "Required argument 'body' missing" unless arguments[:body] headers = arguments.delete(:headers) || {} arguments = arguments.clone _index = arguments.delete(:index) method = OpenSearch::API::HTTP_POST path = if _index "#{Utils.__listify(_index)}/_msearch" else "_msearch" end params = Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__) body = arguments[:body] case when body.is_a?(Array) && body.any? { |d| d.has_key? :search } payload = body .inject([]) do |sum, item| = item data = .delete(:search) sum << sum << data sum end .map { |item| OpenSearch::API.serializer.dump(item) } payload << "" unless payload.empty? payload = payload.join("\n") when body.is_a?(Array) payload = body.map { |d| d.is_a?(String) ? d : OpenSearch::API.serializer.dump(d) } payload << "" unless payload.empty? payload = payload.join("\n") else payload = body end headers.merge!("Content-Type" => "application/x-ndjson") perform_request(method, path, params, payload, headers).body end |
#msearch_template(arguments = {}) ⇒ Object
Allows to execute several search template operations in one request.
*Deprecation notice*: Specifying types in urls has been deprecated Deprecated since version 7.0.0
47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 |
# File 'lib/opensearch/api/actions/msearch_template.rb', line 47 def msearch_template(arguments = {}) raise ArgumentError, "Required argument 'body' missing" unless arguments[:body] headers = arguments.delete(:headers) || {} arguments = arguments.clone _index = arguments.delete(:index) method = OpenSearch::API::HTTP_POST path = if _index "#{Utils.__listify(_index)}/_msearch/template" else "_msearch/template" end params = Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__) body = arguments[:body] case when body.is_a?(Array) payload = body.map { |d| d.is_a?(String) ? d : OpenSearch::API.serializer.dump(d) } payload << "" unless payload.empty? payload = payload.join(" ") else payload = body end headers.merge!("Content-Type" => "application/x-ndjson") perform_request(method, path, params, payload, headers).body end |
#mtermvectors(arguments = {}) ⇒ Object
Returns multiple termvectors in one request.
*Deprecation notice*: Specifying types in urls has been deprecated Deprecated since version 7.0.0
54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 |
# File 'lib/opensearch/api/actions/mtermvectors.rb', line 54 def mtermvectors(arguments = {}) headers = arguments.delete(:headers) || {} arguments = arguments.clone ids = arguments.delete(:ids) _index = arguments.delete(:index) method = if arguments[:body] OpenSearch::API::HTTP_POST else OpenSearch::API::HTTP_GET end path = if _index "#{Utils.__listify(_index)}/_mtermvectors" else "_mtermvectors" end params = Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__) if ids body = { :ids => ids } else body = arguments[:body] end perform_request(method, path, params, body, headers).body end |
#ping(arguments = {}) ⇒ Object
Returns whether the cluster is running.
35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 |
# File 'lib/opensearch/api/actions/ping.rb', line 35 def ping(arguments = {}) headers = arguments.delete(:headers) || {} arguments = arguments.clone method = OpenSearch::API::HTTP_HEAD path = "" params = {} body = nil begin perform_request(method, path, params, body, headers).status == 200 ? true : false rescue Exception => e if e.class.to_s =~ /NotFound|ConnectionFailed/ || e. =~ /Not *Found|404|ConnectionFailed/i false else raise e end end end |
#put_script(arguments = {}) ⇒ Object
Creates or updates a script.
41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 |
# File 'lib/opensearch/api/actions/put_script.rb', line 41 def put_script(arguments = {}) raise ArgumentError, "Required argument 'body' missing" unless arguments[:body] raise ArgumentError, "Required argument 'id' missing" unless arguments[:id] headers = arguments.delete(:headers) || {} arguments = arguments.clone _id = arguments.delete(:id) _context = arguments.delete(:context) method = OpenSearch::API::HTTP_PUT path = if _id && _context "_scripts/#{Utils.__listify(_id)}/#{Utils.__listify(_context)}" else "_scripts/#{Utils.__listify(_id)}" end params = Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__) body = arguments[:body] perform_request(method, path, params, body, headers).body end |
#rank_eval(arguments = {}) ⇒ Object
Allows to evaluate the quality of ranked search results over a set of typical search queries This functionality is Experimental and may be changed or removed completely in a future release. OpenSearch will take a best effort approach to fix any issues, but experimental features are not subject to the support SLA of official GA features.
45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 |
# File 'lib/opensearch/api/actions/rank_eval.rb', line 45 def rank_eval(arguments = {}) raise ArgumentError, "Required argument 'body' missing" unless arguments[:body] headers = arguments.delete(:headers) || {} arguments = arguments.clone _index = arguments.delete(:index) method = OpenSearch::API::HTTP_POST path = if _index "#{Utils.__listify(_index)}/_rank_eval" else "_rank_eval" end params = Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__) body = arguments[:body] perform_request(method, path, params, body, headers).body end |
#reindex(arguments = {}) ⇒ Object
Allows to copy documents from one index to another, optionally filtering the source documents by a query, changing the destination index settings, or fetching the documents from a remote cluster.
46 47 48 49 50 51 52 53 54 55 56 57 58 59 |
# File 'lib/opensearch/api/actions/reindex.rb', line 46 def reindex(arguments = {}) raise ArgumentError, "Required argument 'body' missing" unless arguments[:body] headers = arguments.delete(:headers) || {} arguments = arguments.clone method = OpenSearch::API::HTTP_POST path = "_reindex" params = Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__) body = arguments[:body] perform_request(method, path, params, body, headers).body end |
#reindex_rethrottle(arguments = {}) ⇒ Object
Changes the number of requests per second for a particular Reindex operation.
37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 |
# File 'lib/opensearch/api/actions/reindex_rethrottle.rb', line 37 def reindex_rethrottle(arguments = {}) raise ArgumentError, "Required argument 'task_id' missing" unless arguments[:task_id] headers = arguments.delete(:headers) || {} arguments = arguments.clone _task_id = arguments.delete(:task_id) method = OpenSearch::API::HTTP_POST path = "_reindex/#{Utils.__listify(_task_id)}/_rethrottle" params = Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__) body = nil perform_request(method, path, params, body, headers).body end |
#render_search_template(arguments = {}) ⇒ Object
Allows to use the Mustache language to pre-render a search definition.
37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 |
# File 'lib/opensearch/api/actions/render_search_template.rb', line 37 def render_search_template(arguments = {}) headers = arguments.delete(:headers) || {} arguments = arguments.clone _id = arguments.delete(:id) method = if arguments[:body] OpenSearch::API::HTTP_POST else OpenSearch::API::HTTP_GET end path = if _id "_render/template/#{Utils.__listify(_id)}" else "_render/template" end params = {} body = arguments[:body] perform_request(method, path, params, body, headers).body end |
#scripts_painless_execute(arguments = {}) ⇒ Object
Allows an arbitrary script to be executed and a result to be returned This functionality is Experimental and may be changed or removed completely in a future release. OpenSearch will take a best effort approach to fix any issues, but experimental features are not subject to the support SLA of official GA features.
40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 |
# File 'lib/opensearch/api/actions/scripts_painless_execute.rb', line 40 def scripts_painless_execute(arguments = {}) headers = arguments.delete(:headers) || {} arguments = arguments.clone method = if arguments[:body] OpenSearch::API::HTTP_POST else OpenSearch::API::HTTP_GET end path = "_scripts/painless/_execute" params = {} body = arguments[:body] perform_request(method, path, params, body, headers).body end |
#scroll(arguments = {}) ⇒ Object
Allows to retrieve a large numbers of results from a single search request.
*Deprecation notice*: A scroll id can be quite large and should be specified as part of the body Deprecated since version 7.0.0
44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 |
# File 'lib/opensearch/api/actions/scroll.rb', line 44 def scroll(arguments = {}) headers = arguments.delete(:headers) || {} arguments = arguments.clone _scroll_id = arguments.delete(:scroll_id) method = if arguments[:body] OpenSearch::API::HTTP_POST else OpenSearch::API::HTTP_GET end path = if _scroll_id "_search/scroll/#{Utils.__listify(_scroll_id)}" else "_search/scroll" end params = Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__) body = arguments[:body] perform_request(method, path, params, body, headers).body end |
#search(arguments = {}) ⇒ Object
Returns results matching a query.
*Deprecation notice*: Specifying types in urls has been deprecated Deprecated since version 7.0.0
85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 |
# File 'lib/opensearch/api/actions/search.rb', line 85 def search(arguments = {}) headers = arguments.delete(:headers) || {} arguments = arguments.clone _index = arguments.delete(:index) method = if arguments[:body] OpenSearch::API::HTTP_POST else OpenSearch::API::HTTP_GET end path = if _index "#{Utils.__listify(_index)}/_search" else "_search" end params = Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__) body = arguments[:body] perform_request(method, path, params, body, headers).body end |
#search_shards(arguments = {}) ⇒ Object
Returns information about the indices and shards that a search request would be executed against.
42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 |
# File 'lib/opensearch/api/actions/search_shards.rb', line 42 def search_shards(arguments = {}) headers = arguments.delete(:headers) || {} arguments = arguments.clone _index = arguments.delete(:index) method = OpenSearch::API::HTTP_GET path = if _index "#{Utils.__listify(_index)}/_search_shards" else "_search_shards" end params = Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__) body = nil perform_request(method, path, params, body, headers).body end |
#search_template(arguments = {}) ⇒ Object
Allows to use the Mustache language to pre-render a search definition.
*Deprecation notice*: Specifying types in urls has been deprecated Deprecated since version 7.0.0
55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 |
# File 'lib/opensearch/api/actions/search_template.rb', line 55 def search_template(arguments = {}) raise ArgumentError, "Required argument 'body' missing" unless arguments[:body] headers = arguments.delete(:headers) || {} arguments = arguments.clone _index = arguments.delete(:index) method = OpenSearch::API::HTTP_POST path = if _index "#{Utils.__listify(_index)}/_search/template" else "_search/template" end params = Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__) body = arguments[:body] perform_request(method, path, params, body, headers).body end |
#termvector(arguments = {}) ⇒ Object
Deprecated: Use the plural version, #termvectors
86 87 88 |
# File 'lib/opensearch/api/actions/termvectors.rb', line 86 def termvector(arguments = {}) termvectors(arguments.merge endpoint: '_termvector') end |
#termvectors(arguments = {}) ⇒ Object
Returns information and statistics about terms in the fields of a particular document.
*Deprecation notice*: Specifying types in urls has been deprecated Deprecated since version 7.0.0
54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 |
# File 'lib/opensearch/api/actions/termvectors.rb', line 54 def termvectors(arguments = {}) raise ArgumentError, "Required argument 'index' missing" unless arguments[:index] headers = arguments.delete(:headers) || {} arguments = arguments.clone _index = arguments.delete(:index) _id = arguments.delete(:id) method = if arguments[:body] OpenSearch::API::HTTP_POST else OpenSearch::API::HTTP_GET end endpoint = arguments.delete(:endpoint) || '_termvectors' path = if _index && _id "#{Utils.__listify(_index)}/#{endpoint}/#{Utils.__listify(_id)}" else "#{Utils.__listify(_index)}/#{endpoint}" end params = Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__) body = arguments[:body] perform_request(method, path, params, body, headers).body end |
#update(arguments = {}) ⇒ Object
Updates a document with a script or partial document.
*Deprecation notice*: Specifying types in urls has been deprecated Deprecated since version 7.0.0
55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 |
# File 'lib/opensearch/api/actions/update.rb', line 55 def update(arguments = {}) raise ArgumentError, "Required argument 'body' missing" unless arguments[:body] raise ArgumentError, "Required argument 'index' missing" unless arguments[:index] raise ArgumentError, "Required argument 'id' missing" unless arguments[:id] headers = arguments.delete(:headers) || {} arguments = arguments.clone _id = arguments.delete(:id) _index = arguments.delete(:index) method = OpenSearch::API::HTTP_POST path = "#{Utils.__listify(_index)}/_update/#{Utils.__listify(_id)}" params = Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__) body = arguments[:body] if Array(arguments[:ignore]).include?(404) Utils.__rescue_from_not_found { perform_request(method, path, params, body, headers).body } else perform_request(method, path, params, body, headers).body end end |
#update_by_query(arguments = {}) ⇒ Object
Performs an update on every document in the index without changing the source, for example to pick up a mapping change.
*Deprecation notice*: Specifying types in urls has been deprecated Deprecated since version 7.0.0
78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 |
# File 'lib/opensearch/api/actions/update_by_query.rb', line 78 def update_by_query(arguments = {}) raise ArgumentError, "Required argument 'index' missing" unless arguments[:index] headers = arguments.delete(:headers) || {} arguments = arguments.clone _index = arguments.delete(:index) method = OpenSearch::API::HTTP_POST path = "#{Utils.__listify(_index)}/_update_by_query" params = Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__) body = arguments[:body] perform_request(method, path, params, body, headers).body end |
#update_by_query_rethrottle(arguments = {}) ⇒ Object
Changes the number of requests per second for a particular Update By Query operation.
37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 |
# File 'lib/opensearch/api/actions/update_by_query_rethrottle.rb', line 37 def update_by_query_rethrottle(arguments = {}) raise ArgumentError, "Required argument 'task_id' missing" unless arguments[:task_id] headers = arguments.delete(:headers) || {} arguments = arguments.clone _task_id = arguments.delete(:task_id) method = OpenSearch::API::HTTP_POST path = "_update_by_query/#{Utils.__listify(_task_id)}/_rethrottle" params = Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__) body = nil perform_request(method, path, params, body, headers).body end |