module Elasticsearch::API::QueryRules::Actions
Public Instance Methods
Source
# File lib/elasticsearch/api/actions/query_rules/delete_rule.rb, line 35 def delete_rule(arguments = {}) request_opts = { endpoint: arguments[:endpoint] || 'query_rules.delete_rule' } defined_params = [:ruleset_id, :rule_id].each_with_object({}) do |variable, set_variables| set_variables[variable] = arguments[variable] if arguments.key?(variable) end request_opts[:defined_params] = defined_params unless defined_params.empty? raise ArgumentError, "Required argument 'ruleset_id' missing" unless arguments[:ruleset_id] raise ArgumentError, "Required argument 'rule_id' missing" unless arguments[:rule_id] arguments = arguments.clone headers = arguments.delete(:headers) || {} body = nil _ruleset_id = arguments.delete(:ruleset_id) _rule_id = arguments.delete(:rule_id) method = Elasticsearch::API::HTTP_DELETE path = "_query_rules/#{Utils.listify(_ruleset_id)}/_rule/#{Utils.listify(_rule_id)}" params = {} Elasticsearch::API::Response.new( perform_request(method, path, params, body, headers, request_opts) ) end
Delete a query rule. Delete a query rule within a query ruleset. This is a destructive action that is only recoverable by re-adding the same rule with the create or update query rule API
.
@option arguments [String] :ruleset_id The unique identifier of the query ruleset containing the rule to delete (Required) @option arguments [String] :rule_id The unique identifier of the query rule within the specified ruleset to delete (Required) @option arguments [Hash] :headers Custom HTTP headers
@see www.elastic.co/docs/api/doc/elasticsearch/v9/operation/operation-query-rules-delete-rule
Source
# File lib/elasticsearch/api/actions/query_rules/delete_ruleset.rb, line 34 def delete_ruleset(arguments = {}) request_opts = { endpoint: arguments[:endpoint] || 'query_rules.delete_ruleset' } defined_params = [:ruleset_id].each_with_object({}) do |variable, set_variables| set_variables[variable] = arguments[variable] if arguments.key?(variable) end request_opts[:defined_params] = defined_params unless defined_params.empty? raise ArgumentError, "Required argument 'ruleset_id' missing" unless arguments[:ruleset_id] arguments = arguments.clone headers = arguments.delete(:headers) || {} body = nil _ruleset_id = arguments.delete(:ruleset_id) method = Elasticsearch::API::HTTP_DELETE path = "_query_rules/#{Utils.listify(_ruleset_id)}" params = Utils.process_params(arguments) if Array(arguments[:ignore]).include?(404) Utils.rescue_from_not_found do Elasticsearch::API::Response.new( perform_request(method, path, params, body, headers, request_opts) ) end else Elasticsearch::API::Response.new( perform_request(method, path, params, body, headers, request_opts) ) end end
Delete a query ruleset. Remove a query ruleset and its associated data. This is a destructive action that is not recoverable.
@option arguments [String] :ruleset_id The unique identifier of the query ruleset to delete (Required) @option arguments [Hash] :headers Custom HTTP headers
@see www.elastic.co/docs/api/doc/elasticsearch/v9/operation/operation-query-rules-delete-ruleset
Source
# File lib/elasticsearch/api/actions/query_rules/get_rule.rb, line 34 def get_rule(arguments = {}) request_opts = { endpoint: arguments[:endpoint] || 'query_rules.get_rule' } defined_params = [:ruleset_id, :rule_id].each_with_object({}) do |variable, set_variables| set_variables[variable] = arguments[variable] if arguments.key?(variable) end request_opts[:defined_params] = defined_params unless defined_params.empty? raise ArgumentError, "Required argument 'ruleset_id' missing" unless arguments[:ruleset_id] raise ArgumentError, "Required argument 'rule_id' missing" unless arguments[:rule_id] arguments = arguments.clone headers = arguments.delete(:headers) || {} body = nil _ruleset_id = arguments.delete(:ruleset_id) _rule_id = arguments.delete(:rule_id) method = Elasticsearch::API::HTTP_GET path = "_query_rules/#{Utils.listify(_ruleset_id)}/_rule/#{Utils.listify(_rule_id)}" params = {} Elasticsearch::API::Response.new( perform_request(method, path, params, body, headers, request_opts) ) end
Get a query rule. Get details about a query rule within a query ruleset.
@option arguments [String] :ruleset_id The unique identifier of the query ruleset containing the rule to retrieve (Required) @option arguments [String] :rule_id The unique identifier of the query rule within the specified ruleset to retrieve (Required) @option arguments [Hash] :headers Custom HTTP headers
@see www.elastic.co/docs/api/doc/elasticsearch/v9/operation/operation-query-rules-get-rule
Source
# File lib/elasticsearch/api/actions/query_rules/get_ruleset.rb, line 33 def get_ruleset(arguments = {}) request_opts = { endpoint: arguments[:endpoint] || 'query_rules.get_ruleset' } defined_params = [:ruleset_id].each_with_object({}) do |variable, set_variables| set_variables[variable] = arguments[variable] if arguments.key?(variable) end request_opts[:defined_params] = defined_params unless defined_params.empty? raise ArgumentError, "Required argument 'ruleset_id' missing" unless arguments[:ruleset_id] arguments = arguments.clone headers = arguments.delete(:headers) || {} body = nil _ruleset_id = arguments.delete(:ruleset_id) method = Elasticsearch::API::HTTP_GET path = "_query_rules/#{Utils.listify(_ruleset_id)}" params = {} Elasticsearch::API::Response.new( perform_request(method, path, params, body, headers, request_opts) ) end
Get a query ruleset. Get details about a query ruleset.
@option arguments [String] :ruleset_id The unique identifier of the query ruleset (Required) @option arguments [Hash] :headers Custom HTTP headers
@see www.elastic.co/docs/api/doc/elasticsearch/v9/operation/operation-query-rules-get-ruleset
Source
# File lib/elasticsearch/api/actions/query_rules/list_rulesets.rb, line 34 def list_rulesets(arguments = {}) request_opts = { endpoint: arguments[:endpoint] || 'query_rules.list_rulesets' } arguments = arguments.clone headers = arguments.delete(:headers) || {} body = nil method = Elasticsearch::API::HTTP_GET path = '_query_rules' params = Utils.process_params(arguments) Elasticsearch::API::Response.new( perform_request(method, path, params, body, headers, request_opts) ) end
Get all query rulesets. Get summarized information about the query rulesets.
@option arguments [Integer] :from The offset from the first result to fetch. Server default: 0. @option arguments [Integer] :size The maximum number of results to retrieve. @option arguments [Hash] :headers Custom HTTP headers
@see www.elastic.co/docs/api/doc/elasticsearch/v9/operation/operation-query-rules-list-rulesets
Source
# File lib/elasticsearch/api/actions/query_rules/put_rule.rb, line 39 def put_rule(arguments = {}) request_opts = { endpoint: arguments[:endpoint] || 'query_rules.put_rule' } defined_params = [:ruleset_id, :rule_id].each_with_object({}) do |variable, set_variables| set_variables[variable] = arguments[variable] if arguments.key?(variable) end request_opts[:defined_params] = defined_params unless defined_params.empty? raise ArgumentError, "Required argument 'body' missing" unless arguments[:body] raise ArgumentError, "Required argument 'ruleset_id' missing" unless arguments[:ruleset_id] raise ArgumentError, "Required argument 'rule_id' missing" unless arguments[:rule_id] arguments = arguments.clone headers = arguments.delete(:headers) || {} body = arguments.delete(:body) _ruleset_id = arguments.delete(:ruleset_id) _rule_id = arguments.delete(:rule_id) method = Elasticsearch::API::HTTP_PUT path = "_query_rules/#{Utils.listify(_ruleset_id)}/_rule/#{Utils.listify(_rule_id)}" params = {} Elasticsearch::API::Response.new( perform_request(method, path, params, body, headers, request_opts) ) end
Create or update a query rule. Create or update a query rule within a query ruleset. IMPORTANT: Due to limitations within pinned queries, you can only pin documents using ids or docs, but cannot use both in single rule. It is advised to use one or the other in query rulesets, to avoid errors. Additionally, pinned queries have a maximum limit of 100 pinned hits. If multiple matching rules pin more than 100 documents, only the first 100 documents are pinned in the order they are specified in the ruleset.
@option arguments [String] :ruleset_id The unique identifier of the query ruleset containing the rule to be created or updated. (Required) @option arguments [String] :rule_id The unique identifier of the query rule within the specified ruleset to be created or updated. (Required) @option arguments [Hash] :headers Custom HTTP headers @option arguments [Hash] :body request body
@see www.elastic.co/docs/api/doc/elasticsearch/v9/operation/operation-query-rules-put-rule
Source
# File lib/elasticsearch/api/actions/query_rules/put_ruleset.rb, line 39 def put_ruleset(arguments = {}) request_opts = { endpoint: arguments[:endpoint] || 'query_rules.put_ruleset' } defined_params = [:ruleset_id].each_with_object({}) do |variable, set_variables| set_variables[variable] = arguments[variable] if arguments.key?(variable) end request_opts[:defined_params] = defined_params unless defined_params.empty? raise ArgumentError, "Required argument 'body' missing" unless arguments[:body] raise ArgumentError, "Required argument 'ruleset_id' missing" unless arguments[:ruleset_id] arguments = arguments.clone headers = arguments.delete(:headers) || {} body = arguments.delete(:body) _ruleset_id = arguments.delete(:ruleset_id) method = Elasticsearch::API::HTTP_PUT path = "_query_rules/#{Utils.listify(_ruleset_id)}" params = {} Elasticsearch::API::Response.new( perform_request(method, path, params, body, headers, request_opts) ) end
Create or update a query ruleset. There is a limit of 100 rules per ruleset. This limit can be increased by using the xpack.applications.rules.max_rules_per_ruleset
cluster setting. IMPORTANT: Due to limitations within pinned queries, you can only select documents using ids
or docs
, but cannot use both in single rule. It is advised to use one or the other in query rulesets, to avoid errors. Additionally, pinned queries have a maximum limit of 100 pinned hits. If multiple matching rules pin more than 100 documents, only the first 100 documents are pinned in the order they are specified in the ruleset.
@option arguments [String] :ruleset_id The unique identifier of the query ruleset to be created or updated. (Required) @option arguments [Hash] :headers Custom HTTP headers @option arguments [Hash] :body request body
@see www.elastic.co/docs/api/doc/elasticsearch/v9/operation/operation-query-rules-put-ruleset
Source
# File lib/elasticsearch/api/actions/query_rules/test.rb, line 34 def test(arguments = {}) request_opts = { endpoint: arguments[:endpoint] || 'query_rules.test' } defined_params = [:ruleset_id].each_with_object({}) do |variable, set_variables| set_variables[variable] = arguments[variable] if arguments.key?(variable) end request_opts[:defined_params] = defined_params unless defined_params.empty? raise ArgumentError, "Required argument 'body' missing" unless arguments[:body] raise ArgumentError, "Required argument 'ruleset_id' missing" unless arguments[:ruleset_id] arguments = arguments.clone headers = arguments.delete(:headers) || {} body = arguments.delete(:body) _ruleset_id = arguments.delete(:ruleset_id) method = Elasticsearch::API::HTTP_POST path = "_query_rules/#{Utils.listify(_ruleset_id)}/_test" params = {} Elasticsearch::API::Response.new( perform_request(method, path, params, body, headers, request_opts) ) end
Test a query ruleset. Evaluate match criteria against a query ruleset to identify the rules that would match that criteria.
@option arguments [String] :ruleset_id The unique identifier of the query ruleset to be created or updated (Required) @option arguments [Hash] :headers Custom HTTP headers @option arguments [Hash] :body request body
@see www.elastic.co/docs/api/doc/elasticsearch/v9/operation/operation-query-rules-test