# Generated REST API methods file - DO NOT EDIT! # Date: 2020-12-17 # ES version: 7.8.1 module Antbird module RestApi module RestApiV7_8 def common_params @common_params ||= {"documentation"=>{"description"=>"Parameters that are accepted by all API endpoints.", "url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/current/common-options.html"}, "params"=>{"pretty"=>{"type"=>"boolean", "description"=>"Pretty format the returned JSON response.", "default"=>false}, "human"=>{"type"=>"boolean", "description"=>"Return human readable values for statistics.", "default"=>true}, "error_trace"=>{"type"=>"boolean", "description"=>"Include the stack trace of returned errors.", "default"=>false}, "source"=>{"type"=>"string", "description"=>"The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests."}, "filter_path"=>{"type"=>"list", "description"=>"A comma-separated list of filters used to reduce the response."}}} end # bulk # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/docs-bulk.html", "description"=>"Allows to perform multiple index/update/delete operations in a single request."} def bulk(params = {}) api_name = 'bulk' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/docs-bulk.html", "description"=>"Allows to perform multiple index/update/delete operations in a single request."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_bulk", "methods"=>["POST", "PUT"]}, {"path"=>"/{index}/_bulk", "methods"=>["POST", "PUT"], "parts"=>{"index"=>{"type"=>"string", "description"=>"Default index for items which don't provide one"}}}, {"path"=>"/{index}/{type}/_bulk", "methods"=>["POST", "PUT"], "parts"=>{"index"=>{"type"=>"string", "description"=>"Default index for items which don't provide one"}, "type"=>{"type"=>"string", "description"=>"Default document type for items which don't provide one"}}}]}, "params"=>{"wait_for_active_shards"=>{"type"=>"string", "description"=>"Sets the number of shard copies that must be active before proceeding with the bulk operation. Defaults to 1, meaning the primary shard only. Set to `all` for all shard copies, otherwise set to any non-negative value less than or equal to the total number of copies for the shard (number of replicas + 1)"}, "refresh"=>{"type"=>"enum", "options"=>["true", "false", "wait_for"], "description"=>"If `true` then refresh the affected shards to make this operation visible to search, if `wait_for` then wait for a refresh to make this operation visible to search, if `false` (the default) then do nothing with refreshes."}, "routing"=>{"type"=>"string", "description"=>"Specific routing value"}, "timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout"}, "type"=>{"type"=>"string", "description"=>"Default document type for items which don't provide one"}, "_source"=>{"type"=>"list", "description"=>"True or false to return the _source field or not, or default list of fields to return, can be overridden on each sub-request"}, "_source_excludes"=>{"type"=>"list", "description"=>"Default list of fields to exclude from the returned _source field, can be overridden on each sub-request"}, "_source_includes"=>{"type"=>"list", "description"=>"Default list of fields to extract and return from the _source field, can be overridden on each sub-request"}, "pipeline"=>{"type"=>"string", "description"=>"The pipeline id to preprocess incoming documents with"}}, "body"=>{"description"=>"The operation definition and data (action-data pairs), separated by newlines", "required"=>true, "serialize"=>"bulk"}} request(api_name, api_spec, params) end # cat.aliases # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/cat-alias.html", "description"=>"Shows information about currently configured aliases to indices including filter and routing infos."} def cat_aliases(params = {}) api_name = 'cat.aliases' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/cat-alias.html", "description"=>"Shows information about currently configured aliases to indices including filter and routing infos."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_cat/aliases", "methods"=>["GET"]}, {"path"=>"/_cat/aliases/{name}", "methods"=>["GET"], "parts"=>{"name"=>{"type"=>"list", "description"=>"A comma-separated list of alias names to return"}}}]}, "params"=>{"format"=>{"type"=>"string", "description"=>"a short version of the Accept header, e.g. json, yaml"}, "local"=>{"type"=>"boolean", "description"=>"Return local information, do not retrieve the state from master node (default: false)"}, "h"=>{"type"=>"list", "description"=>"Comma-separated list of column names to display"}, "help"=>{"type"=>"boolean", "description"=>"Return help information", "default"=>false}, "s"=>{"type"=>"list", "description"=>"Comma-separated list of column names or column aliases to sort by"}, "v"=>{"type"=>"boolean", "description"=>"Verbose mode. Display column headers", "default"=>false}, "expand_wildcards"=>{"type"=>"enum", "options"=>["open", "closed", "hidden", "none", "all"], "default"=>"all", "description"=>"Whether to expand wildcard expression to concrete indices that are open, closed or both."}}} request(api_name, api_spec, params) end # cat.allocation # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/cat-allocation.html", "description"=>"Provides a snapshot of how many shards are allocated to each data node and how much disk space they are using."} def cat_allocation(params = {}) api_name = 'cat.allocation' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/cat-allocation.html", "description"=>"Provides a snapshot of how many shards are allocated to each data node and how much disk space they are using."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_cat/allocation", "methods"=>["GET"]}, {"path"=>"/_cat/allocation/{node_id}", "methods"=>["GET"], "parts"=>{"node_id"=>{"type"=>"list", "description"=>"A comma-separated list of node IDs or names to limit the returned information"}}}]}, "params"=>{"format"=>{"type"=>"string", "description"=>"a short version of the Accept header, e.g. json, yaml"}, "bytes"=>{"type"=>"enum", "description"=>"The unit in which to display byte values", "options"=>["b", "k", "kb", "m", "mb", "g", "gb", "t", "tb", "p", "pb"]}, "local"=>{"type"=>"boolean", "description"=>"Return local information, do not retrieve the state from master node (default: false)"}, "master_timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout for connection to master node"}, "h"=>{"type"=>"list", "description"=>"Comma-separated list of column names to display"}, "help"=>{"type"=>"boolean", "description"=>"Return help information", "default"=>false}, "s"=>{"type"=>"list", "description"=>"Comma-separated list of column names or column aliases to sort by"}, "v"=>{"type"=>"boolean", "description"=>"Verbose mode. Display column headers", "default"=>false}}} request(api_name, api_spec, params) end # cat.count # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/cat-count.html", "description"=>"Provides quick access to the document count of the entire cluster, or individual indices."} def cat_count(params = {}) api_name = 'cat.count' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/cat-count.html", "description"=>"Provides quick access to the document count of the entire cluster, or individual indices."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_cat/count", "methods"=>["GET"]}, {"path"=>"/_cat/count/{index}", "methods"=>["GET"], "parts"=>{"index"=>{"type"=>"list", "description"=>"A comma-separated list of index names to limit the returned information"}}}]}, "params"=>{"format"=>{"type"=>"string", "description"=>"a short version of the Accept header, e.g. json, yaml"}, "h"=>{"type"=>"list", "description"=>"Comma-separated list of column names to display"}, "help"=>{"type"=>"boolean", "description"=>"Return help information", "default"=>false}, "s"=>{"type"=>"list", "description"=>"Comma-separated list of column names or column aliases to sort by"}, "v"=>{"type"=>"boolean", "description"=>"Verbose mode. Display column headers", "default"=>false}}} request(api_name, api_spec, params) end # cat.fielddata # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/cat-fielddata.html", "description"=>"Shows how much heap memory is currently being used by fielddata on every data node in the cluster."} def cat_fielddata(params = {}) api_name = 'cat.fielddata' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/cat-fielddata.html", "description"=>"Shows how much heap memory is currently being used by fielddata on every data node in the cluster."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_cat/fielddata", "methods"=>["GET"]}, {"path"=>"/_cat/fielddata/{fields}", "methods"=>["GET"], "parts"=>{"fields"=>{"type"=>"list", "description"=>"A comma-separated list of fields to return the fielddata size"}}}]}, "params"=>{"format"=>{"type"=>"string", "description"=>"a short version of the Accept header, e.g. json, yaml"}, "bytes"=>{"type"=>"enum", "description"=>"The unit in which to display byte values", "options"=>["b", "k", "kb", "m", "mb", "g", "gb", "t", "tb", "p", "pb"]}, "h"=>{"type"=>"list", "description"=>"Comma-separated list of column names to display"}, "help"=>{"type"=>"boolean", "description"=>"Return help information", "default"=>false}, "s"=>{"type"=>"list", "description"=>"Comma-separated list of column names or column aliases to sort by"}, "v"=>{"type"=>"boolean", "description"=>"Verbose mode. Display column headers", "default"=>false}, "fields"=>{"type"=>"list", "description"=>"A comma-separated list of fields to return in the output"}}} request(api_name, api_spec, params) end # cat.health # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/cat-health.html", "description"=>"Returns a concise representation of the cluster health."} def cat_health(params = {}) api_name = 'cat.health' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/cat-health.html", "description"=>"Returns a concise representation of the cluster health."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_cat/health", "methods"=>["GET"]}]}, "params"=>{"format"=>{"type"=>"string", "description"=>"a short version of the Accept header, e.g. json, yaml"}, "h"=>{"type"=>"list", "description"=>"Comma-separated list of column names to display"}, "help"=>{"type"=>"boolean", "description"=>"Return help information", "default"=>false}, "s"=>{"type"=>"list", "description"=>"Comma-separated list of column names or column aliases to sort by"}, "time"=>{"type"=>"enum", "description"=>"The unit in which to display time values", "options"=>["d", "h", "m", "s", "ms", "micros", "nanos"]}, "ts"=>{"type"=>"boolean", "description"=>"Set to false to disable timestamping", "default"=>true}, "v"=>{"type"=>"boolean", "description"=>"Verbose mode. Display column headers", "default"=>false}}} request(api_name, api_spec, params) end # cat.help # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/cat.html", "description"=>"Returns help for the Cat APIs."} def cat_help(params = {}) api_name = 'cat.help' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/cat.html", "description"=>"Returns help for the Cat APIs."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_cat", "methods"=>["GET"]}]}, "params"=>{"help"=>{"type"=>"boolean", "description"=>"Return help information", "default"=>false}, "s"=>{"type"=>"list", "description"=>"Comma-separated list of column names or column aliases to sort by"}}} request(api_name, api_spec, params) end # cat.indices # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/cat-indices.html", "description"=>"Returns information about indices: number of primaries and replicas, document counts, disk size, ..."} def cat_indices(params = {}) api_name = 'cat.indices' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/cat-indices.html", "description"=>"Returns information about indices: number of primaries and replicas, document counts, disk size, ..."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_cat/indices", "methods"=>["GET"]}, {"path"=>"/_cat/indices/{index}", "methods"=>["GET"], "parts"=>{"index"=>{"type"=>"list", "description"=>"A comma-separated list of index names to limit the returned information"}}}]}, "params"=>{"format"=>{"type"=>"string", "description"=>"a short version of the Accept header, e.g. json, yaml"}, "bytes"=>{"type"=>"enum", "description"=>"The unit in which to display byte values", "options"=>["b", "k", "kb", "m", "mb", "g", "gb", "t", "tb", "p", "pb"]}, "local"=>{"type"=>"boolean", "description"=>"Return local information, do not retrieve the state from master node (default: false)"}, "master_timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout for connection to master node"}, "h"=>{"type"=>"list", "description"=>"Comma-separated list of column names to display"}, "health"=>{"type"=>"enum", "options"=>["green", "yellow", "red"], "description"=>"A health status (\"green\", \"yellow\", or \"red\" to filter only indices matching the specified health status"}, "help"=>{"type"=>"boolean", "description"=>"Return help information", "default"=>false}, "pri"=>{"type"=>"boolean", "description"=>"Set to true to return stats only for primary shards", "default"=>false}, "s"=>{"type"=>"list", "description"=>"Comma-separated list of column names or column aliases to sort by"}, "time"=>{"type"=>"enum", "description"=>"The unit in which to display time values", "options"=>["d", "h", "m", "s", "ms", "micros", "nanos"]}, "v"=>{"type"=>"boolean", "description"=>"Verbose mode. Display column headers", "default"=>false}, "include_unloaded_segments"=>{"type"=>"boolean", "description"=>"If set to true segment stats will include stats for segments that are not currently loaded into memory", "default"=>false}, "expand_wildcards"=>{"type"=>"enum", "options"=>["open", "closed", "hidden", "none", "all"], "default"=>"all", "description"=>"Whether to expand wildcard expression to concrete indices that are open, closed or both."}}} request(api_name, api_spec, params) end # cat.master # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/cat-master.html", "description"=>"Returns information about the master node."} def cat_master(params = {}) api_name = 'cat.master' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/cat-master.html", "description"=>"Returns information about the master node."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_cat/master", "methods"=>["GET"]}]}, "params"=>{"format"=>{"type"=>"string", "description"=>"a short version of the Accept header, e.g. json, yaml"}, "local"=>{"type"=>"boolean", "description"=>"Return local information, do not retrieve the state from master node (default: false)"}, "master_timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout for connection to master node"}, "h"=>{"type"=>"list", "description"=>"Comma-separated list of column names to display"}, "help"=>{"type"=>"boolean", "description"=>"Return help information", "default"=>false}, "s"=>{"type"=>"list", "description"=>"Comma-separated list of column names or column aliases to sort by"}, "v"=>{"type"=>"boolean", "description"=>"Verbose mode. Display column headers", "default"=>false}}} request(api_name, api_spec, params) end # cat.nodeattrs # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/cat-nodeattrs.html", "description"=>"Returns information about custom node attributes."} def cat_nodeattrs(params = {}) api_name = 'cat.nodeattrs' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/cat-nodeattrs.html", "description"=>"Returns information about custom node attributes."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_cat/nodeattrs", "methods"=>["GET"]}]}, "params"=>{"format"=>{"type"=>"string", "description"=>"a short version of the Accept header, e.g. json, yaml"}, "local"=>{"type"=>"boolean", "description"=>"Return local information, do not retrieve the state from master node (default: false)"}, "master_timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout for connection to master node"}, "h"=>{"type"=>"list", "description"=>"Comma-separated list of column names to display"}, "help"=>{"type"=>"boolean", "description"=>"Return help information", "default"=>false}, "s"=>{"type"=>"list", "description"=>"Comma-separated list of column names or column aliases to sort by"}, "v"=>{"type"=>"boolean", "description"=>"Verbose mode. Display column headers", "default"=>false}}} request(api_name, api_spec, params) end # cat.nodes # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/cat-nodes.html", "description"=>"Returns basic statistics about performance of cluster nodes."} def cat_nodes(params = {}) api_name = 'cat.nodes' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/cat-nodes.html", "description"=>"Returns basic statistics about performance of cluster nodes."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_cat/nodes", "methods"=>["GET"]}]}, "params"=>{"bytes"=>{"type"=>"enum", "description"=>"The unit in which to display byte values", "options"=>["b", "k", "kb", "m", "mb", "g", "gb", "t", "tb", "p", "pb"]}, "format"=>{"type"=>"string", "description"=>"a short version of the Accept header, e.g. json, yaml"}, "full_id"=>{"type"=>"boolean", "description"=>"Return the full node ID instead of the shortened version (default: false)"}, "local"=>{"type"=>"boolean", "description"=>"Calculate the selected nodes using the local cluster state rather than the state from master node (default: false)", "deprecated"=>{"version"=>"7.6.0", "description"=>"This parameter does not cause this API to act locally."}}, "master_timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout for connection to master node"}, "h"=>{"type"=>"list", "description"=>"Comma-separated list of column names to display"}, "help"=>{"type"=>"boolean", "description"=>"Return help information", "default"=>false}, "s"=>{"type"=>"list", "description"=>"Comma-separated list of column names or column aliases to sort by"}, "time"=>{"type"=>"enum", "description"=>"The unit in which to display time values", "options"=>["d", "h", "m", "s", "ms", "micros", "nanos"]}, "v"=>{"type"=>"boolean", "description"=>"Verbose mode. Display column headers", "default"=>false}}} request(api_name, api_spec, params) end # cat.pending_tasks # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/cat-pending-tasks.html", "description"=>"Returns a concise representation of the cluster pending tasks."} def cat_pending_tasks(params = {}) api_name = 'cat.pending_tasks' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/cat-pending-tasks.html", "description"=>"Returns a concise representation of the cluster pending tasks."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_cat/pending_tasks", "methods"=>["GET"]}]}, "params"=>{"format"=>{"type"=>"string", "description"=>"a short version of the Accept header, e.g. json, yaml"}, "local"=>{"type"=>"boolean", "description"=>"Return local information, do not retrieve the state from master node (default: false)"}, "master_timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout for connection to master node"}, "h"=>{"type"=>"list", "description"=>"Comma-separated list of column names to display"}, "help"=>{"type"=>"boolean", "description"=>"Return help information", "default"=>false}, "s"=>{"type"=>"list", "description"=>"Comma-separated list of column names or column aliases to sort by"}, "time"=>{"type"=>"enum", "description"=>"The unit in which to display time values", "options"=>["d", "h", "m", "s", "ms", "micros", "nanos"]}, "v"=>{"type"=>"boolean", "description"=>"Verbose mode. Display column headers", "default"=>false}}} request(api_name, api_spec, params) end # cat.plugins # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/cat-plugins.html", "description"=>"Returns information about installed plugins across nodes node."} def cat_plugins(params = {}) api_name = 'cat.plugins' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/cat-plugins.html", "description"=>"Returns information about installed plugins across nodes node."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_cat/plugins", "methods"=>["GET"]}]}, "params"=>{"format"=>{"type"=>"string", "description"=>"a short version of the Accept header, e.g. json, yaml"}, "local"=>{"type"=>"boolean", "description"=>"Return local information, do not retrieve the state from master node (default: false)"}, "master_timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout for connection to master node"}, "h"=>{"type"=>"list", "description"=>"Comma-separated list of column names to display"}, "help"=>{"type"=>"boolean", "description"=>"Return help information", "default"=>false}, "s"=>{"type"=>"list", "description"=>"Comma-separated list of column names or column aliases to sort by"}, "v"=>{"type"=>"boolean", "description"=>"Verbose mode. Display column headers", "default"=>false}}} request(api_name, api_spec, params) end # cat.recovery # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/cat-recovery.html", "description"=>"Returns information about index shard recoveries, both on-going completed."} def cat_recovery(params = {}) api_name = 'cat.recovery' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/cat-recovery.html", "description"=>"Returns information about index shard recoveries, both on-going completed."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_cat/recovery", "methods"=>["GET"]}, {"path"=>"/_cat/recovery/{index}", "methods"=>["GET"], "parts"=>{"index"=>{"type"=>"list", "description"=>"Comma-separated list or wildcard expression of index names to limit the returned information"}}}]}, "params"=>{"format"=>{"type"=>"string", "description"=>"a short version of the Accept header, e.g. json, yaml"}, "active_only"=>{"type"=>"boolean", "description"=>"If `true`, the response only includes ongoing shard recoveries", "default"=>false}, "bytes"=>{"type"=>"enum", "description"=>"The unit in which to display byte values", "options"=>["b", "k", "kb", "m", "mb", "g", "gb", "t", "tb", "p", "pb"]}, "detailed"=>{"type"=>"boolean", "description"=>"If `true`, the response includes detailed information about shard recoveries", "default"=>false}, "h"=>{"type"=>"list", "description"=>"Comma-separated list of column names to display"}, "help"=>{"type"=>"boolean", "description"=>"Return help information", "default"=>false}, "index"=>{"type"=>"list", "description"=>"Comma-separated list or wildcard expression of index names to limit the returned information"}, "s"=>{"type"=>"list", "description"=>"Comma-separated list of column names or column aliases to sort by"}, "time"=>{"type"=>"enum", "description"=>"The unit in which to display time values", "options"=>["d", "h", "m", "s", "ms", "micros", "nanos"]}, "v"=>{"type"=>"boolean", "description"=>"Verbose mode. Display column headers", "default"=>false}}} request(api_name, api_spec, params) end # cat.repositories # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/cat-repositories.html", "description"=>"Returns information about snapshot repositories registered in the cluster."} def cat_repositories(params = {}) api_name = 'cat.repositories' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/cat-repositories.html", "description"=>"Returns information about snapshot repositories registered in the cluster."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_cat/repositories", "methods"=>["GET"]}]}, "params"=>{"format"=>{"type"=>"string", "description"=>"a short version of the Accept header, e.g. json, yaml"}, "local"=>{"type"=>"boolean", "description"=>"Return local information, do not retrieve the state from master node", "default"=>false}, "master_timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout for connection to master node"}, "h"=>{"type"=>"list", "description"=>"Comma-separated list of column names to display"}, "help"=>{"type"=>"boolean", "description"=>"Return help information", "default"=>false}, "s"=>{"type"=>"list", "description"=>"Comma-separated list of column names or column aliases to sort by"}, "v"=>{"type"=>"boolean", "description"=>"Verbose mode. Display column headers", "default"=>false}}} request(api_name, api_spec, params) end # cat.segments # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/cat-segments.html", "description"=>"Provides low-level information about the segments in the shards of an index."} def cat_segments(params = {}) api_name = 'cat.segments' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/cat-segments.html", "description"=>"Provides low-level information about the segments in the shards of an index."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_cat/segments", "methods"=>["GET"]}, {"path"=>"/_cat/segments/{index}", "methods"=>["GET"], "parts"=>{"index"=>{"type"=>"list", "description"=>"A comma-separated list of index names to limit the returned information"}}}]}, "params"=>{"format"=>{"type"=>"string", "description"=>"a short version of the Accept header, e.g. json, yaml"}, "bytes"=>{"type"=>"enum", "description"=>"The unit in which to display byte values", "options"=>["b", "k", "kb", "m", "mb", "g", "gb", "t", "tb", "p", "pb"]}, "h"=>{"type"=>"list", "description"=>"Comma-separated list of column names to display"}, "help"=>{"type"=>"boolean", "description"=>"Return help information", "default"=>false}, "s"=>{"type"=>"list", "description"=>"Comma-separated list of column names or column aliases to sort by"}, "v"=>{"type"=>"boolean", "description"=>"Verbose mode. Display column headers", "default"=>false}}} request(api_name, api_spec, params) end # cat.shards # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/cat-shards.html", "description"=>"Provides a detailed view of shard allocation on nodes."} def cat_shards(params = {}) api_name = 'cat.shards' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/cat-shards.html", "description"=>"Provides a detailed view of shard allocation on nodes."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_cat/shards", "methods"=>["GET"]}, {"path"=>"/_cat/shards/{index}", "methods"=>["GET"], "parts"=>{"index"=>{"type"=>"list", "description"=>"A comma-separated list of index names to limit the returned information"}}}]}, "params"=>{"format"=>{"type"=>"string", "description"=>"a short version of the Accept header, e.g. json, yaml"}, "bytes"=>{"type"=>"enum", "description"=>"The unit in which to display byte values", "options"=>["b", "k", "kb", "m", "mb", "g", "gb", "t", "tb", "p", "pb"]}, "local"=>{"type"=>"boolean", "description"=>"Return local information, do not retrieve the state from master node (default: false)"}, "master_timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout for connection to master node"}, "h"=>{"type"=>"list", "description"=>"Comma-separated list of column names to display"}, "help"=>{"type"=>"boolean", "description"=>"Return help information", "default"=>false}, "s"=>{"type"=>"list", "description"=>"Comma-separated list of column names or column aliases to sort by"}, "time"=>{"type"=>"enum", "description"=>"The unit in which to display time values", "options"=>["d", "h", "m", "s", "ms", "micros", "nanos"]}, "v"=>{"type"=>"boolean", "description"=>"Verbose mode. Display column headers", "default"=>false}}} request(api_name, api_spec, params) end # cat.snapshots # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/cat-snapshots.html", "description"=>"Returns all snapshots in a specific repository."} def cat_snapshots(params = {}) api_name = 'cat.snapshots' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/cat-snapshots.html", "description"=>"Returns all snapshots in a specific repository."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_cat/snapshots", "methods"=>["GET"]}, {"path"=>"/_cat/snapshots/{repository}", "methods"=>["GET"], "parts"=>{"repository"=>{"type"=>"list", "description"=>"Name of repository from which to fetch the snapshot information"}}}]}, "params"=>{"format"=>{"type"=>"string", "description"=>"a short version of the Accept header, e.g. json, yaml"}, "ignore_unavailable"=>{"type"=>"boolean", "description"=>"Set to true to ignore unavailable snapshots", "default"=>false}, "master_timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout for connection to master node"}, "h"=>{"type"=>"list", "description"=>"Comma-separated list of column names to display"}, "help"=>{"type"=>"boolean", "description"=>"Return help information", "default"=>false}, "s"=>{"type"=>"list", "description"=>"Comma-separated list of column names or column aliases to sort by"}, "time"=>{"type"=>"enum", "description"=>"The unit in which to display time values", "options"=>["d", "h", "m", "s", "ms", "micros", "nanos"]}, "v"=>{"type"=>"boolean", "description"=>"Verbose mode. Display column headers", "default"=>false}}} request(api_name, api_spec, params) end # cat.tasks # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/tasks.html", "description"=>"Returns information about the tasks currently executing on one or more nodes in the cluster."} def cat_tasks(params = {}) api_name = 'cat.tasks' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/tasks.html", "description"=>"Returns information about the tasks currently executing on one or more nodes in the cluster."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_cat/tasks", "methods"=>["GET"]}]}, "params"=>{"format"=>{"type"=>"string", "description"=>"a short version of the Accept header, e.g. json, yaml"}, "node_id"=>{"type"=>"list", "description"=>"A comma-separated list of node IDs or names to limit the returned information; use `_local` to return information from the node you're connecting to, leave empty to get information from all nodes"}, "actions"=>{"type"=>"list", "description"=>"A comma-separated list of actions that should be returned. Leave empty to return all."}, "detailed"=>{"type"=>"boolean", "description"=>"Return detailed task information (default: false)"}, "parent_task"=>{"type"=>"number", "description"=>"Return tasks with specified parent task id. Set to -1 to return all."}, "h"=>{"type"=>"list", "description"=>"Comma-separated list of column names to display"}, "help"=>{"type"=>"boolean", "description"=>"Return help information", "default"=>false}, "s"=>{"type"=>"list", "description"=>"Comma-separated list of column names or column aliases to sort by"}, "time"=>{"type"=>"enum", "description"=>"The unit in which to display time values", "options"=>["d", "h", "m", "s", "ms", "micros", "nanos"]}, "v"=>{"type"=>"boolean", "description"=>"Verbose mode. Display column headers", "default"=>false}}} request(api_name, api_spec, params) end # cat.templates # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/cat-templates.html", "description"=>"Returns information about existing templates."} def cat_templates(params = {}) api_name = 'cat.templates' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/cat-templates.html", "description"=>"Returns information about existing templates."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_cat/templates", "methods"=>["GET"]}, {"path"=>"/_cat/templates/{name}", "methods"=>["GET"], "parts"=>{"name"=>{"type"=>"string", "description"=>"A pattern that returned template names must match"}}}]}, "params"=>{"format"=>{"type"=>"string", "description"=>"a short version of the Accept header, e.g. json, yaml"}, "local"=>{"type"=>"boolean", "description"=>"Return local information, do not retrieve the state from master node (default: false)"}, "master_timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout for connection to master node"}, "h"=>{"type"=>"list", "description"=>"Comma-separated list of column names to display"}, "help"=>{"type"=>"boolean", "description"=>"Return help information", "default"=>false}, "s"=>{"type"=>"list", "description"=>"Comma-separated list of column names or column aliases to sort by"}, "v"=>{"type"=>"boolean", "description"=>"Verbose mode. Display column headers", "default"=>false}}} request(api_name, api_spec, params) end # cat.thread_pool # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/cat-thread-pool.html", "description"=>"Returns cluster-wide thread pool statistics per node.\nBy default the active, queue and rejected statistics are returned for all thread pools."} def cat_thread_pool(params = {}) api_name = 'cat.thread_pool' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/cat-thread-pool.html", "description"=>"Returns cluster-wide thread pool statistics per node.\nBy default the active, queue and rejected statistics are returned for all thread pools."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_cat/thread_pool", "methods"=>["GET"]}, {"path"=>"/_cat/thread_pool/{thread_pool_patterns}", "methods"=>["GET"], "parts"=>{"thread_pool_patterns"=>{"type"=>"list", "description"=>"A comma-separated list of regular-expressions to filter the thread pools in the output"}}}]}, "params"=>{"format"=>{"type"=>"string", "description"=>"a short version of the Accept header, e.g. json, yaml"}, "size"=>{"type"=>"enum", "description"=>"The multiplier in which to display values", "options"=>["", "k", "m", "g", "t", "p"], "deprecated"=>{"version"=>"7.7.0", "description"=>"Setting this value has no effect and will be removed from the specification."}}, "local"=>{"type"=>"boolean", "description"=>"Return local information, do not retrieve the state from master node (default: false)"}, "master_timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout for connection to master node"}, "h"=>{"type"=>"list", "description"=>"Comma-separated list of column names to display"}, "help"=>{"type"=>"boolean", "description"=>"Return help information", "default"=>false}, "s"=>{"type"=>"list", "description"=>"Comma-separated list of column names or column aliases to sort by"}, "v"=>{"type"=>"boolean", "description"=>"Verbose mode. Display column headers", "default"=>false}}} request(api_name, api_spec, params) end # clear_scroll # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/search-request-body.html#_clear_scroll_api", "description"=>"Explicitly clears the search context for a scroll."} def clear_scroll(params = {}) api_name = 'clear_scroll' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/search-request-body.html#_clear_scroll_api", "description"=>"Explicitly clears the search context for a scroll."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_search/scroll", "methods"=>["DELETE"]}, {"path"=>"/_search/scroll/{scroll_id}", "methods"=>["DELETE"], "parts"=>{"scroll_id"=>{"type"=>"list", "description"=>"A comma-separated list of scroll IDs to clear", "deprecated"=>true}}, "deprecated"=>{"version"=>"7.0.0", "description"=>"A scroll id can be quite large and should be specified as part of the body"}}]}, "params"=>{}, "body"=>{"description"=>"A comma-separated list of scroll IDs to clear if none was specified via the scroll_id parameter"}} request(api_name, api_spec, params) end # cluster.allocation_explain # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/cluster-allocation-explain.html", "description"=>"Provides explanations for shard allocations in the cluster."} def cluster_allocation_explain(params = {}) api_name = 'cluster.allocation_explain' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/cluster-allocation-explain.html", "description"=>"Provides explanations for shard allocations in the cluster."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_cluster/allocation/explain", "methods"=>["GET", "POST"]}]}, "params"=>{"include_yes_decisions"=>{"type"=>"boolean", "description"=>"Return 'YES' decisions in explanation (default: false)"}, "include_disk_info"=>{"type"=>"boolean", "description"=>"Return information about disk usage and shard sizes (default: false)"}}, "body"=>{"description"=>"The index, shard, and primary flag to explain. Empty means 'explain the first unassigned shard'"}} request(api_name, api_spec, params) end # cluster.delete_component_template # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-component-template.html", "description"=>"Deletes a component template"} def cluster_delete_component_template(params = {}) api_name = 'cluster.delete_component_template' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-component-template.html", "description"=>"Deletes a component template"}, "stability"=>"experimental", "url"=>{"paths"=>[{"path"=>"/_component_template/{name}", "methods"=>["DELETE"], "parts"=>{"name"=>{"type"=>"string", "description"=>"The name of the template"}}}]}, "params"=>{"timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout"}, "master_timeout"=>{"type"=>"time", "description"=>"Specify timeout for connection to master"}}} request(api_name, api_spec, params) end # cluster.delete_voting_config_exclusions # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/voting-config-exclusions.html", "description"=>"Clears cluster voting config exclusions."} def cluster_delete_voting_config_exclusions(params = {}) api_name = 'cluster.delete_voting_config_exclusions' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/voting-config-exclusions.html", "description"=>"Clears cluster voting config exclusions."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_cluster/voting_config_exclusions", "methods"=>["DELETE"]}]}, "params"=>{"wait_for_removal"=>{"type"=>"boolean", "description"=>"Specifies whether to wait for all excluded nodes to be removed from the cluster before clearing the voting configuration exclusions list.", "default"=>true}}} request(api_name, api_spec, params) end # cluster.exists_component_template # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-component-template.html", "description"=>"Returns information about whether a particular component template exist"} def cluster_exists_component_template(params = {}) api_name = 'cluster.exists_component_template' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-component-template.html", "description"=>"Returns information about whether a particular component template exist"}, "stability"=>"experimental", "url"=>{"paths"=>[{"path"=>"/_component_template/{name}", "methods"=>["HEAD"], "parts"=>{"name"=>{"type"=>"string", "description"=>"The name of the template"}}}]}, "params"=>{"master_timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout for connection to master node"}, "local"=>{"type"=>"boolean", "description"=>"Return local information, do not retrieve the state from master node (default: false)"}}} request(api_name, api_spec, params) end alias :cluster_exists_component_template? :cluster_exists_component_template # cluster.get_component_template # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-component-template.html", "description"=>"Returns one or more component templates"} def cluster_get_component_template(params = {}) api_name = 'cluster.get_component_template' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-component-template.html", "description"=>"Returns one or more component templates"}, "stability"=>"experimental", "url"=>{"paths"=>[{"path"=>"/_component_template", "methods"=>["GET"]}, {"path"=>"/_component_template/{name}", "methods"=>["GET"], "parts"=>{"name"=>{"type"=>"list", "description"=>"The comma separated names of the component templates"}}}]}, "params"=>{"master_timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout for connection to master node"}, "local"=>{"type"=>"boolean", "description"=>"Return local information, do not retrieve the state from master node (default: false)"}}} request(api_name, api_spec, params) end # cluster.get_settings # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/cluster-update-settings.html", "description"=>"Returns cluster settings."} def cluster_get_settings(params = {}) api_name = 'cluster.get_settings' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/cluster-update-settings.html", "description"=>"Returns cluster settings."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_cluster/settings", "methods"=>["GET"]}]}, "params"=>{"flat_settings"=>{"type"=>"boolean", "description"=>"Return settings in flat format (default: false)"}, "master_timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout for connection to master node"}, "timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout"}, "include_defaults"=>{"type"=>"boolean", "description"=>"Whether to return all default clusters setting.", "default"=>false}}} request(api_name, api_spec, params) end # cluster.health # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/cluster-health.html", "description"=>"Returns basic information about the health of the cluster."} def cluster_health(params = {}) api_name = 'cluster.health' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/cluster-health.html", "description"=>"Returns basic information about the health of the cluster."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_cluster/health", "methods"=>["GET"]}, {"path"=>"/_cluster/health/{index}", "methods"=>["GET"], "parts"=>{"index"=>{"type"=>"list", "description"=>"Limit the information returned to a specific index"}}}]}, "params"=>{"expand_wildcards"=>{"type"=>"enum", "options"=>["open", "closed", "hidden", "none", "all"], "default"=>"all", "description"=>"Whether to expand wildcard expression to concrete indices that are open, closed or both."}, "level"=>{"type"=>"enum", "options"=>["cluster", "indices", "shards"], "default"=>"cluster", "description"=>"Specify the level of detail for returned information"}, "local"=>{"type"=>"boolean", "description"=>"Return local information, do not retrieve the state from master node (default: false)"}, "master_timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout for connection to master node"}, "timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout"}, "wait_for_active_shards"=>{"type"=>"string", "description"=>"Wait until the specified number of shards is active"}, "wait_for_nodes"=>{"type"=>"string", "description"=>"Wait until the specified number of nodes is available"}, "wait_for_events"=>{"type"=>"enum", "options"=>["immediate", "urgent", "high", "normal", "low", "languid"], "description"=>"Wait until all currently queued events with the given priority are processed"}, "wait_for_no_relocating_shards"=>{"type"=>"boolean", "description"=>"Whether to wait until there are no relocating shards in the cluster"}, "wait_for_no_initializing_shards"=>{"type"=>"boolean", "description"=>"Whether to wait until there are no initializing shards in the cluster"}, "wait_for_status"=>{"type"=>"enum", "options"=>["green", "yellow", "red"], "description"=>"Wait until cluster is in a specific state"}}} request(api_name, api_spec, params) end # cluster.pending_tasks # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/cluster-pending.html", "description"=>"Returns a list of any cluster-level changes (e.g. create index, update mapping,\nallocate or fail shard) which have not yet been executed."} def cluster_pending_tasks(params = {}) api_name = 'cluster.pending_tasks' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/cluster-pending.html", "description"=>"Returns a list of any cluster-level changes (e.g. create index, update mapping,\nallocate or fail shard) which have not yet been executed."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_cluster/pending_tasks", "methods"=>["GET"]}]}, "params"=>{"local"=>{"type"=>"boolean", "description"=>"Return local information, do not retrieve the state from master node (default: false)"}, "master_timeout"=>{"type"=>"time", "description"=>"Specify timeout for connection to master"}}} request(api_name, api_spec, params) end # cluster.post_voting_config_exclusions # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/voting-config-exclusions.html", "description"=>"Updates the cluster voting config exclusions by node ids or node names."} def cluster_post_voting_config_exclusions(params = {}) api_name = 'cluster.post_voting_config_exclusions' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/voting-config-exclusions.html", "description"=>"Updates the cluster voting config exclusions by node ids or node names."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_cluster/voting_config_exclusions", "methods"=>["POST"]}]}, "params"=>{"node_ids"=>{"type"=>"string", "description"=>"A comma-separated list of the persistent ids of the nodes to exclude from the voting configuration. If specified, you may not also specify ?node_names."}, "node_names"=>{"type"=>"string", "description"=>"A comma-separated list of the names of the nodes to exclude from the voting configuration. If specified, you may not also specify ?node_ids."}, "timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout", "default"=>"30s"}}} request(api_name, api_spec, params) end # cluster.put_component_template # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-component-template.html", "description"=>"Creates or updates a component template"} def cluster_put_component_template(params = {}) api_name = 'cluster.put_component_template' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-component-template.html", "description"=>"Creates or updates a component template"}, "stability"=>"experimental", "url"=>{"paths"=>[{"path"=>"/_component_template/{name}", "methods"=>["PUT", "POST"], "parts"=>{"name"=>{"type"=>"string", "description"=>"The name of the template"}}}]}, "params"=>{"create"=>{"type"=>"boolean", "description"=>"Whether the index template should only be added if new or can also replace an existing one", "default"=>false}, "timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout"}, "master_timeout"=>{"type"=>"time", "description"=>"Specify timeout for connection to master"}}, "body"=>{"description"=>"The template definition", "required"=>true}} request(api_name, api_spec, params) end # cluster.put_settings # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/cluster-update-settings.html", "description"=>"Updates the cluster settings."} def cluster_put_settings(params = {}) api_name = 'cluster.put_settings' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/cluster-update-settings.html", "description"=>"Updates the cluster settings."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_cluster/settings", "methods"=>["PUT"]}]}, "params"=>{"flat_settings"=>{"type"=>"boolean", "description"=>"Return settings in flat format (default: false)"}, "master_timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout for connection to master node"}, "timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout"}}, "body"=>{"description"=>"The settings to be updated. Can be either `transient` or `persistent` (survives cluster restart).", "required"=>true}} request(api_name, api_spec, params) end # cluster.remote_info # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/cluster-remote-info.html", "description"=>"Returns the information about configured remote clusters."} def cluster_remote_info(params = {}) api_name = 'cluster.remote_info' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/cluster-remote-info.html", "description"=>"Returns the information about configured remote clusters."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_remote/info", "methods"=>["GET"]}]}, "params"=>{}} request(api_name, api_spec, params) end # cluster.reroute # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/cluster-reroute.html", "description"=>"Allows to manually change the allocation of individual shards in the cluster."} def cluster_reroute(params = {}) api_name = 'cluster.reroute' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/cluster-reroute.html", "description"=>"Allows to manually change the allocation of individual shards in the cluster."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_cluster/reroute", "methods"=>["POST"]}]}, "params"=>{"dry_run"=>{"type"=>"boolean", "description"=>"Simulate the operation only and return the resulting state"}, "explain"=>{"type"=>"boolean", "description"=>"Return an explanation of why the commands can or cannot be executed"}, "retry_failed"=>{"type"=>"boolean", "description"=>"Retries allocation of shards that are blocked due to too many subsequent allocation failures"}, "metric"=>{"type"=>"list", "options"=>["_all", "blocks", "metadata", "nodes", "routing_table", "master_node", "version"], "description"=>"Limit the information returned to the specified metrics. Defaults to all but metadata"}, "master_timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout for connection to master node"}, "timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout"}}, "body"=>{"description"=>"The definition of `commands` to perform (`move`, `cancel`, `allocate`)"}} request(api_name, api_spec, params) end # cluster.state # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/cluster-state.html", "description"=>"Returns a comprehensive information about the state of the cluster."} def cluster_state(params = {}) api_name = 'cluster.state' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/cluster-state.html", "description"=>"Returns a comprehensive information about the state of the cluster."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_cluster/state", "methods"=>["GET"]}, {"path"=>"/_cluster/state/{metric}", "methods"=>["GET"], "parts"=>{"metric"=>{"type"=>"list", "options"=>["_all", "blocks", "metadata", "nodes", "routing_table", "routing_nodes", "master_node", "version"], "description"=>"Limit the information returned to the specified metrics"}}}, {"path"=>"/_cluster/state/{metric}/{index}", "methods"=>["GET"], "parts"=>{"index"=>{"type"=>"list", "description"=>"A comma-separated list of index names; use `_all` or empty string to perform the operation on all indices"}, "metric"=>{"type"=>"list", "options"=>["_all", "blocks", "metadata", "nodes", "routing_table", "routing_nodes", "master_node", "version"], "description"=>"Limit the information returned to the specified metrics"}}}]}, "params"=>{"local"=>{"type"=>"boolean", "description"=>"Return local information, do not retrieve the state from master node (default: false)"}, "master_timeout"=>{"type"=>"time", "description"=>"Specify timeout for connection to master"}, "flat_settings"=>{"type"=>"boolean", "description"=>"Return settings in flat format (default: false)"}, "wait_for_metadata_version"=>{"type"=>"number", "description"=>"Wait for the metadata version to be equal or greater than the specified metadata version"}, "wait_for_timeout"=>{"type"=>"time", "description"=>"The maximum time to wait for wait_for_metadata_version before timing out"}, "ignore_unavailable"=>{"type"=>"boolean", "description"=>"Whether specified concrete indices should be ignored when unavailable (missing or closed)"}, "allow_no_indices"=>{"type"=>"boolean", "description"=>"Whether to ignore if a wildcard indices expression resolves into no concrete indices. (This includes `_all` string or when no indices have been specified)"}, "expand_wildcards"=>{"type"=>"enum", "options"=>["open", "closed", "hidden", "none", "all"], "default"=>"open", "description"=>"Whether to expand wildcard expression to concrete indices that are open, closed or both."}}} request(api_name, api_spec, params) end # cluster.stats # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/cluster-stats.html", "description"=>"Returns high-level overview of cluster statistics."} def cluster_stats(params = {}) api_name = 'cluster.stats' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/cluster-stats.html", "description"=>"Returns high-level overview of cluster statistics."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_cluster/stats", "methods"=>["GET"]}, {"path"=>"/_cluster/stats/nodes/{node_id}", "methods"=>["GET"], "parts"=>{"node_id"=>{"type"=>"list", "description"=>"A comma-separated list of node IDs or names to limit the returned information; use `_local` to return information from the node you're connecting to, leave empty to get information from all nodes"}}}]}, "params"=>{"flat_settings"=>{"type"=>"boolean", "description"=>"Return settings in flat format (default: false)"}, "timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout"}}} request(api_name, api_spec, params) end # count # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/search-count.html", "description"=>"Returns number of documents matching a query."} def count(params = {}) api_name = 'count' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/search-count.html", "description"=>"Returns number of documents matching a query."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_count", "methods"=>["POST", "GET"]}, {"path"=>"/{index}/_count", "methods"=>["POST", "GET"], "parts"=>{"index"=>{"type"=>"list", "description"=>"A comma-separated list of indices to restrict the results"}}}, {"path"=>"/{index}/{type}/_count", "methods"=>["POST", "GET"], "parts"=>{"index"=>{"type"=>"list", "description"=>"A comma-separated list of indices to restrict the results"}, "type"=>{"type"=>"list", "description"=>"A comma-separated list of types to restrict the results"}}, "deprecated"=>{"version"=>"7.0.0", "description"=>"Specifying types in urls has been deprecated"}}]}, "params"=>{"ignore_unavailable"=>{"type"=>"boolean", "description"=>"Whether specified concrete indices should be ignored when unavailable (missing or closed)"}, "ignore_throttled"=>{"type"=>"boolean", "description"=>"Whether specified concrete, expanded or aliased indices should be ignored when throttled"}, "allow_no_indices"=>{"type"=>"boolean", "description"=>"Whether to ignore if a wildcard indices expression resolves into no concrete indices. (This includes `_all` string or when no indices have been specified)"}, "expand_wildcards"=>{"type"=>"enum", "options"=>["open", "closed", "hidden", "none", "all"], "default"=>"open", "description"=>"Whether to expand wildcard expression to concrete indices that are open, closed or both."}, "min_score"=>{"type"=>"number", "description"=>"Include only documents with a specific `_score` value in the result"}, "preference"=>{"type"=>"string", "description"=>"Specify the node or shard the operation should be performed on (default: random)"}, "routing"=>{"type"=>"list", "description"=>"A comma-separated list of specific routing values"}, "q"=>{"type"=>"string", "description"=>"Query in the Lucene query string syntax"}, "analyzer"=>{"type"=>"string", "description"=>"The analyzer to use for the query string"}, "analyze_wildcard"=>{"type"=>"boolean", "description"=>"Specify whether wildcard and prefix queries should be analyzed (default: false)"}, "default_operator"=>{"type"=>"enum", "options"=>["AND", "OR"], "default"=>"OR", "description"=>"The default operator for query string query (AND or OR)"}, "df"=>{"type"=>"string", "description"=>"The field to use as default where no field prefix is given in the query string"}, "lenient"=>{"type"=>"boolean", "description"=>"Specify whether format-based query failures (such as providing text to a numeric field) should be ignored"}, "terminate_after"=>{"type"=>"number", "description"=>"The maximum count for each shard, upon reaching which the query execution will terminate early"}}, "body"=>{"description"=>"A query to restrict the results specified with the Query DSL (optional)"}} request(api_name, api_spec, params) end # create # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/docs-index_.html", "description"=>"Creates a new document in the index.\n\nReturns a 409 response when a document with a same ID already exists in the index."} def create(params = {}) api_name = 'create' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/docs-index_.html", "description"=>"Creates a new document in the index.\n\nReturns a 409 response when a document with a same ID already exists in the index."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/{index}/_create/{id}", "methods"=>["PUT", "POST"], "parts"=>{"id"=>{"type"=>"string", "description"=>"Document ID"}, "index"=>{"type"=>"string", "description"=>"The name of the index"}}}, {"path"=>"/{index}/{type}/{id}/_create", "methods"=>["PUT", "POST"], "parts"=>{"id"=>{"type"=>"string", "description"=>"Document ID"}, "index"=>{"type"=>"string", "description"=>"The name of the index"}, "type"=>{"type"=>"string", "description"=>"The type of the document", "deprecated"=>true}}, "deprecated"=>{"version"=>"7.0.0", "description"=>"Specifying types in urls has been deprecated"}}]}, "params"=>{"wait_for_active_shards"=>{"type"=>"string", "description"=>"Sets the number of shard copies that must be active before proceeding with the index operation. Defaults to 1, meaning the primary shard only. Set to `all` for all shard copies, otherwise set to any non-negative value less than or equal to the total number of copies for the shard (number of replicas + 1)"}, "refresh"=>{"type"=>"enum", "options"=>["true", "false", "wait_for"], "description"=>"If `true` then refresh the affected shards to make this operation visible to search, if `wait_for` then wait for a refresh to make this operation visible to search, if `false` (the default) then do nothing with refreshes."}, "routing"=>{"type"=>"string", "description"=>"Specific routing value"}, "timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout"}, "version"=>{"type"=>"number", "description"=>"Explicit version number for concurrency control"}, "version_type"=>{"type"=>"enum", "options"=>["internal", "external", "external_gte"], "description"=>"Specific version type"}, "pipeline"=>{"type"=>"string", "description"=>"The pipeline id to preprocess incoming documents with"}}, "body"=>{"description"=>"The document", "required"=>true}} request(api_name, api_spec, params) end # delete # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/docs-delete.html", "description"=>"Removes a document from the index."} def delete(params = {}) api_name = 'delete' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/docs-delete.html", "description"=>"Removes a document from the index."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/{index}/_doc/{id}", "methods"=>["DELETE"], "parts"=>{"id"=>{"type"=>"string", "description"=>"The document ID"}, "index"=>{"type"=>"string", "description"=>"The name of the index"}}}, {"path"=>"/{index}/{type}/{id}", "methods"=>["DELETE"], "parts"=>{"id"=>{"type"=>"string", "description"=>"The document ID"}, "index"=>{"type"=>"string", "description"=>"The name of the index"}, "type"=>{"type"=>"string", "description"=>"The type of the document", "deprecated"=>true}}, "deprecated"=>{"version"=>"7.0.0", "description"=>"Specifying types in urls has been deprecated"}}]}, "params"=>{"wait_for_active_shards"=>{"type"=>"string", "description"=>"Sets the number of shard copies that must be active before proceeding with the delete operation. Defaults to 1, meaning the primary shard only. Set to `all` for all shard copies, otherwise set to any non-negative value less than or equal to the total number of copies for the shard (number of replicas + 1)"}, "refresh"=>{"type"=>"enum", "options"=>["true", "false", "wait_for"], "description"=>"If `true` then refresh the affected shards to make this operation visible to search, if `wait_for` then wait for a refresh to make this operation visible to search, if `false` (the default) then do nothing with refreshes."}, "routing"=>{"type"=>"string", "description"=>"Specific routing value"}, "timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout"}, "if_seq_no"=>{"type"=>"number", "description"=>"only perform the delete operation if the last operation that has changed the document has the specified sequence number"}, "if_primary_term"=>{"type"=>"number", "description"=>"only perform the delete operation if the last operation that has changed the document has the specified primary term"}, "version"=>{"type"=>"number", "description"=>"Explicit version number for concurrency control"}, "version_type"=>{"type"=>"enum", "options"=>["internal", "external", "external_gte", "force"], "description"=>"Specific version type"}}} request(api_name, api_spec, params) end # delete_by_query # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/docs-delete-by-query.html", "description"=>"Deletes documents matching the provided query."} def delete_by_query(params = {}) api_name = 'delete_by_query' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/docs-delete-by-query.html", "description"=>"Deletes documents matching the provided query."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/{index}/_delete_by_query", "methods"=>["POST"], "parts"=>{"index"=>{"type"=>"list", "description"=>"A comma-separated list of index names to search; use `_all` or empty string to perform the operation on all indices"}}}, {"path"=>"/{index}/{type}/_delete_by_query", "methods"=>["POST"], "parts"=>{"index"=>{"required"=>true, "type"=>"list", "description"=>"A comma-separated list of index names to search; use `_all` or empty string to perform the operation on all indices"}, "type"=>{"type"=>"list", "description"=>"A comma-separated list of document types to search; leave empty to perform the operation on all types"}}, "deprecated"=>{"version"=>"7.0.0", "description"=>"Specifying types in urls has been deprecated"}}]}, "params"=>{"analyzer"=>{"type"=>"string", "description"=>"The analyzer to use for the query string"}, "analyze_wildcard"=>{"type"=>"boolean", "description"=>"Specify whether wildcard and prefix queries should be analyzed (default: false)"}, "default_operator"=>{"type"=>"enum", "options"=>["AND", "OR"], "default"=>"OR", "description"=>"The default operator for query string query (AND or OR)"}, "df"=>{"type"=>"string", "description"=>"The field to use as default where no field prefix is given in the query string"}, "from"=>{"type"=>"number", "description"=>"Starting offset (default: 0)"}, "ignore_unavailable"=>{"type"=>"boolean", "description"=>"Whether specified concrete indices should be ignored when unavailable (missing or closed)"}, "allow_no_indices"=>{"type"=>"boolean", "description"=>"Whether to ignore if a wildcard indices expression resolves into no concrete indices. (This includes `_all` string or when no indices have been specified)"}, "conflicts"=>{"type"=>"enum", "options"=>["abort", "proceed"], "default"=>"abort", "description"=>"What to do when the delete by query hits version conflicts?"}, "expand_wildcards"=>{"type"=>"enum", "options"=>["open", "closed", "hidden", "none", "all"], "default"=>"open", "description"=>"Whether to expand wildcard expression to concrete indices that are open, closed or both."}, "lenient"=>{"type"=>"boolean", "description"=>"Specify whether format-based query failures (such as providing text to a numeric field) should be ignored"}, "preference"=>{"type"=>"string", "description"=>"Specify the node or shard the operation should be performed on (default: random)"}, "q"=>{"type"=>"string", "description"=>"Query in the Lucene query string syntax"}, "routing"=>{"type"=>"list", "description"=>"A comma-separated list of specific routing values"}, "scroll"=>{"type"=>"time", "description"=>"Specify how long a consistent view of the index should be maintained for scrolled search"}, "search_type"=>{"type"=>"enum", "options"=>["query_then_fetch", "dfs_query_then_fetch"], "description"=>"Search operation type"}, "search_timeout"=>{"type"=>"time", "description"=>"Explicit timeout for each search request. Defaults to no timeout."}, "size"=>{"type"=>"number", "description"=>"Deprecated, please use `max_docs` instead"}, "max_docs"=>{"type"=>"number", "description"=>"Maximum number of documents to process (default: all documents)"}, "sort"=>{"type"=>"list", "description"=>"A comma-separated list of : pairs"}, "_source"=>{"type"=>"list", "description"=>"True or false to return the _source field or not, or a list of fields to return"}, "_source_excludes"=>{"type"=>"list", "description"=>"A list of fields to exclude from the returned _source field"}, "_source_includes"=>{"type"=>"list", "description"=>"A list of fields to extract and return from the _source field"}, "terminate_after"=>{"type"=>"number", "description"=>"The maximum number of documents to collect for each shard, upon reaching which the query execution will terminate early."}, "stats"=>{"type"=>"list", "description"=>"Specific 'tag' of the request for logging and statistical purposes"}, "version"=>{"type"=>"boolean", "description"=>"Specify whether to return document version as part of a hit"}, "request_cache"=>{"type"=>"boolean", "description"=>"Specify if request cache should be used for this request or not, defaults to index level setting"}, "refresh"=>{"type"=>"boolean", "description"=>"Should the effected indexes be refreshed?"}, "timeout"=>{"type"=>"time", "default"=>"1m", "description"=>"Time each individual bulk request should wait for shards that are unavailable."}, "wait_for_active_shards"=>{"type"=>"string", "description"=>"Sets the number of shard copies that must be active before proceeding with the delete by query operation. Defaults to 1, meaning the primary shard only. Set to `all` for all shard copies, otherwise set to any non-negative value less than or equal to the total number of copies for the shard (number of replicas + 1)"}, "scroll_size"=>{"type"=>"number", "default"=>100, "description"=>"Size on the scroll request powering the delete by query"}, "wait_for_completion"=>{"type"=>"boolean", "default"=>true, "description"=>"Should the request should block until the delete by query is complete."}, "requests_per_second"=>{"type"=>"number", "default"=>0, "description"=>"The throttle for this request in sub-requests per second. -1 means no throttle."}, "slices"=>{"type"=>"number|string", "default"=>1, "description"=>"The number of slices this task should be divided into. Defaults to 1, meaning the task isn't sliced into subtasks. Can be set to `auto`."}}, "body"=>{"description"=>"The search definition using the Query DSL", "required"=>true}} request(api_name, api_spec, params) end # delete_by_query_rethrottle # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/current/docs-delete-by-query.html", "description"=>"Changes the number of requests per second for a particular Delete By Query operation."} def delete_by_query_rethrottle(params = {}) api_name = 'delete_by_query_rethrottle' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/current/docs-delete-by-query.html", "description"=>"Changes the number of requests per second for a particular Delete By Query operation."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_delete_by_query/{task_id}/_rethrottle", "methods"=>["POST"], "parts"=>{"task_id"=>{"type"=>"string", "description"=>"The task id to rethrottle"}}}]}, "params"=>{"requests_per_second"=>{"type"=>"number", "required"=>true, "description"=>"The throttle to set on this request in floating sub-requests per second. -1 means set no throttle."}}} request(api_name, api_spec, params) end # delete_script # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/modules-scripting.html", "description"=>"Deletes a script."} def delete_script(params = {}) api_name = 'delete_script' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/modules-scripting.html", "description"=>"Deletes a script."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_scripts/{id}", "methods"=>["DELETE"], "parts"=>{"id"=>{"type"=>"string", "description"=>"Script ID"}}}]}, "params"=>{"timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout"}, "master_timeout"=>{"type"=>"time", "description"=>"Specify timeout for connection to master"}}} request(api_name, api_spec, params) end # exists # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/docs-get.html", "description"=>"Returns information about whether a document exists in an index."} def exists(params = {}) api_name = 'exists' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/docs-get.html", "description"=>"Returns information about whether a document exists in an index."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/{index}/_doc/{id}", "methods"=>["HEAD"], "parts"=>{"id"=>{"type"=>"string", "description"=>"The document ID"}, "index"=>{"type"=>"string", "description"=>"The name of the index"}}}, {"path"=>"/{index}/{type}/{id}", "methods"=>["HEAD"], "parts"=>{"id"=>{"type"=>"string", "description"=>"The document ID"}, "index"=>{"type"=>"string", "description"=>"The name of the index"}, "type"=>{"type"=>"string", "description"=>"The type of the document (use `_all` to fetch the first document matching the ID across all types)", "deprecated"=>true}}, "deprecated"=>{"version"=>"7.0.0", "description"=>"Specifying types in urls has been deprecated"}}]}, "params"=>{"stored_fields"=>{"type"=>"list", "description"=>"A comma-separated list of stored fields to return in the response"}, "preference"=>{"type"=>"string", "description"=>"Specify the node or shard the operation should be performed on (default: random)"}, "realtime"=>{"type"=>"boolean", "description"=>"Specify whether to perform the operation in realtime or search mode"}, "refresh"=>{"type"=>"boolean", "description"=>"Refresh the shard containing the document before performing the operation"}, "routing"=>{"type"=>"string", "description"=>"Specific routing value"}, "_source"=>{"type"=>"list", "description"=>"True or false to return the _source field or not, or a list of fields to return"}, "_source_excludes"=>{"type"=>"list", "description"=>"A list of fields to exclude from the returned _source field"}, "_source_includes"=>{"type"=>"list", "description"=>"A list of fields to extract and return from the _source field"}, "version"=>{"type"=>"number", "description"=>"Explicit version number for concurrency control"}, "version_type"=>{"type"=>"enum", "options"=>["internal", "external", "external_gte", "force"], "description"=>"Specific version type"}}} request(api_name, api_spec, params) end alias :exists? :exists # exists_source # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/docs-get.html", "description"=>"Returns information about whether a document source exists in an index."} def exists_source(params = {}) api_name = 'exists_source' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/docs-get.html", "description"=>"Returns information about whether a document source exists in an index."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/{index}/_source/{id}", "methods"=>["HEAD"], "parts"=>{"id"=>{"type"=>"string", "description"=>"The document ID"}, "index"=>{"type"=>"string", "description"=>"The name of the index"}}}, {"path"=>"/{index}/{type}/{id}/_source", "methods"=>["HEAD"], "parts"=>{"id"=>{"type"=>"string", "description"=>"The document ID"}, "index"=>{"type"=>"string", "description"=>"The name of the index"}, "type"=>{"type"=>"string", "description"=>"The type of the document; deprecated and optional starting with 7.0", "deprecated"=>true}}, "deprecated"=>{"version"=>"7.0.0", "description"=>"Specifying types in urls has been deprecated"}}]}, "params"=>{"preference"=>{"type"=>"string", "description"=>"Specify the node or shard the operation should be performed on (default: random)"}, "realtime"=>{"type"=>"boolean", "description"=>"Specify whether to perform the operation in realtime or search mode"}, "refresh"=>{"type"=>"boolean", "description"=>"Refresh the shard containing the document before performing the operation"}, "routing"=>{"type"=>"string", "description"=>"Specific routing value"}, "_source"=>{"type"=>"list", "description"=>"True or false to return the _source field or not, or a list of fields to return"}, "_source_excludes"=>{"type"=>"list", "description"=>"A list of fields to exclude from the returned _source field"}, "_source_includes"=>{"type"=>"list", "description"=>"A list of fields to extract and return from the _source field"}, "version"=>{"type"=>"number", "description"=>"Explicit version number for concurrency control"}, "version_type"=>{"type"=>"enum", "options"=>["internal", "external", "external_gte", "force"], "description"=>"Specific version type"}}} request(api_name, api_spec, params) end alias :exists_source? :exists_source # explain # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/search-explain.html", "description"=>"Returns information about why a specific matches (or doesn't match) a query."} def explain(params = {}) api_name = 'explain' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/search-explain.html", "description"=>"Returns information about why a specific matches (or doesn't match) a query."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/{index}/_explain/{id}", "methods"=>["GET", "POST"], "parts"=>{"id"=>{"type"=>"string", "description"=>"The document ID"}, "index"=>{"type"=>"string", "description"=>"The name of the index"}}}, {"path"=>"/{index}/{type}/{id}/_explain", "methods"=>["GET", "POST"], "parts"=>{"id"=>{"type"=>"string", "description"=>"The document ID"}, "index"=>{"type"=>"string", "description"=>"The name of the index"}, "type"=>{"type"=>"string", "description"=>"The type of the document", "deprecated"=>true}}, "deprecated"=>{"version"=>"7.0.0", "description"=>"Specifying types in urls has been deprecated"}}]}, "params"=>{"analyze_wildcard"=>{"type"=>"boolean", "description"=>"Specify whether wildcards and prefix queries in the query string query should be analyzed (default: false)"}, "analyzer"=>{"type"=>"string", "description"=>"The analyzer for the query string query"}, "default_operator"=>{"type"=>"enum", "options"=>["AND", "OR"], "default"=>"OR", "description"=>"The default operator for query string query (AND or OR)"}, "df"=>{"type"=>"string", "description"=>"The default field for query string query (default: _all)"}, "stored_fields"=>{"type"=>"list", "description"=>"A comma-separated list of stored fields to return in the response"}, "lenient"=>{"type"=>"boolean", "description"=>"Specify whether format-based query failures (such as providing text to a numeric field) should be ignored"}, "preference"=>{"type"=>"string", "description"=>"Specify the node or shard the operation should be performed on (default: random)"}, "q"=>{"type"=>"string", "description"=>"Query in the Lucene query string syntax"}, "routing"=>{"type"=>"string", "description"=>"Specific routing value"}, "_source"=>{"type"=>"list", "description"=>"True or false to return the _source field or not, or a list of fields to return"}, "_source_excludes"=>{"type"=>"list", "description"=>"A list of fields to exclude from the returned _source field"}, "_source_includes"=>{"type"=>"list", "description"=>"A list of fields to extract and return from the _source field"}}, "body"=>{"description"=>"The query definition using the Query DSL"}} request(api_name, api_spec, params) end # field_caps # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/search-field-caps.html", "description"=>"Returns the information about the capabilities of fields among multiple indices."} def field_caps(params = {}) api_name = 'field_caps' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/search-field-caps.html", "description"=>"Returns the information about the capabilities of fields among multiple indices."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_field_caps", "methods"=>["GET", "POST"]}, {"path"=>"/{index}/_field_caps", "methods"=>["GET", "POST"], "parts"=>{"index"=>{"type"=>"list", "description"=>"A comma-separated list of index names; use `_all` or empty string to perform the operation on all indices"}}}]}, "params"=>{"fields"=>{"type"=>"list", "description"=>"A comma-separated list of field names"}, "ignore_unavailable"=>{"type"=>"boolean", "description"=>"Whether specified concrete indices should be ignored when unavailable (missing or closed)"}, "allow_no_indices"=>{"type"=>"boolean", "description"=>"Whether to ignore if a wildcard indices expression resolves into no concrete indices. (This includes `_all` string or when no indices have been specified)"}, "expand_wildcards"=>{"type"=>"enum", "options"=>["open", "closed", "hidden", "none", "all"], "default"=>"open", "description"=>"Whether to expand wildcard expression to concrete indices that are open, closed or both."}, "include_unmapped"=>{"type"=>"boolean", "default"=>false, "description"=>"Indicates whether unmapped fields should be included in the response."}}} request(api_name, api_spec, params) end # get # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/docs-get.html", "description"=>"Returns a document."} def get(params = {}) api_name = 'get' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/docs-get.html", "description"=>"Returns a document."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/{index}/_doc/{id}", "methods"=>["GET"], "parts"=>{"id"=>{"type"=>"string", "description"=>"The document ID"}, "index"=>{"type"=>"string", "description"=>"The name of the index"}}}, {"path"=>"/{index}/{type}/{id}", "methods"=>["GET"], "parts"=>{"id"=>{"type"=>"string", "description"=>"The document ID"}, "index"=>{"type"=>"string", "description"=>"The name of the index"}, "type"=>{"type"=>"string", "description"=>"The type of the document (use `_all` to fetch the first document matching the ID across all types)", "deprecated"=>true}}, "deprecated"=>{"version"=>"7.0.0", "description"=>"Specifying types in urls has been deprecated"}}]}, "params"=>{"stored_fields"=>{"type"=>"list", "description"=>"A comma-separated list of stored fields to return in the response"}, "preference"=>{"type"=>"string", "description"=>"Specify the node or shard the operation should be performed on (default: random)"}, "realtime"=>{"type"=>"boolean", "description"=>"Specify whether to perform the operation in realtime or search mode"}, "refresh"=>{"type"=>"boolean", "description"=>"Refresh the shard containing the document before performing the operation"}, "routing"=>{"type"=>"string", "description"=>"Specific routing value"}, "_source"=>{"type"=>"list", "description"=>"True or false to return the _source field or not, or a list of fields to return"}, "_source_excludes"=>{"type"=>"list", "description"=>"A list of fields to exclude from the returned _source field"}, "_source_includes"=>{"type"=>"list", "description"=>"A list of fields to extract and return from the _source field"}, "version"=>{"type"=>"number", "description"=>"Explicit version number for concurrency control"}, "version_type"=>{"type"=>"enum", "options"=>["internal", "external", "external_gte", "force"], "description"=>"Specific version type"}}} request(api_name, api_spec, params) end # get_script # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/modules-scripting.html", "description"=>"Returns a script."} def get_script(params = {}) api_name = 'get_script' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/modules-scripting.html", "description"=>"Returns a script."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_scripts/{id}", "methods"=>["GET"], "parts"=>{"id"=>{"type"=>"string", "description"=>"Script ID"}}}]}, "params"=>{"master_timeout"=>{"type"=>"time", "description"=>"Specify timeout for connection to master"}}} request(api_name, api_spec, params) end # get_script_context # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/painless/master/painless-contexts.html", "description"=>"Returns all script contexts."} def get_script_context(params = {}) api_name = 'get_script_context' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/painless/master/painless-contexts.html", "description"=>"Returns all script contexts."}, "stability"=>"experimental", "url"=>{"paths"=>[{"path"=>"/_script_context", "methods"=>["GET"]}]}, "params"=>{}} request(api_name, api_spec, params) end # get_script_languages # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/modules-scripting.html", "description"=>"Returns available script types, languages and contexts"} def get_script_languages(params = {}) api_name = 'get_script_languages' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/modules-scripting.html", "description"=>"Returns available script types, languages and contexts"}, "stability"=>"experimental", "url"=>{"paths"=>[{"path"=>"/_script_language", "methods"=>["GET"]}]}, "params"=>{}} request(api_name, api_spec, params) end # get_source # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/docs-get.html", "description"=>"Returns the source of a document."} def get_source(params = {}) api_name = 'get_source' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/docs-get.html", "description"=>"Returns the source of a document."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/{index}/_source/{id}", "methods"=>["GET"], "parts"=>{"id"=>{"type"=>"string", "description"=>"The document ID"}, "index"=>{"type"=>"string", "description"=>"The name of the index"}}}, {"path"=>"/{index}/{type}/{id}/_source", "methods"=>["GET"], "parts"=>{"id"=>{"type"=>"string", "description"=>"The document ID"}, "index"=>{"type"=>"string", "description"=>"The name of the index"}, "type"=>{"type"=>"string", "description"=>"The type of the document; deprecated and optional starting with 7.0", "deprecated"=>true}}, "deprecated"=>{"version"=>"7.0.0", "description"=>"Specifying types in urls has been deprecated"}}]}, "params"=>{"preference"=>{"type"=>"string", "description"=>"Specify the node or shard the operation should be performed on (default: random)"}, "realtime"=>{"type"=>"boolean", "description"=>"Specify whether to perform the operation in realtime or search mode"}, "refresh"=>{"type"=>"boolean", "description"=>"Refresh the shard containing the document before performing the operation"}, "routing"=>{"type"=>"string", "description"=>"Specific routing value"}, "_source"=>{"type"=>"list", "description"=>"True or false to return the _source field or not, or a list of fields to return"}, "_source_excludes"=>{"type"=>"list", "description"=>"A list of fields to exclude from the returned _source field"}, "_source_includes"=>{"type"=>"list", "description"=>"A list of fields to extract and return from the _source field"}, "version"=>{"type"=>"number", "description"=>"Explicit version number for concurrency control"}, "version_type"=>{"type"=>"enum", "options"=>["internal", "external", "external_gte", "force"], "description"=>"Specific version type"}}} request(api_name, api_spec, params) end # index # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/docs-index_.html", "description"=>"Creates or updates a document in an index."} def index(params = {}) api_name = 'index' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/docs-index_.html", "description"=>"Creates or updates a document in an index."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/{index}/_doc/{id}", "methods"=>["PUT", "POST"], "parts"=>{"id"=>{"type"=>"string", "description"=>"Document ID"}, "index"=>{"type"=>"string", "description"=>"The name of the index"}}}, {"path"=>"/{index}/_doc", "methods"=>["POST"], "parts"=>{"index"=>{"type"=>"string", "description"=>"The name of the index"}}}, {"path"=>"/{index}/{type}", "methods"=>["POST"], "parts"=>{"index"=>{"type"=>"string", "description"=>"The name of the index"}, "type"=>{"type"=>"string", "description"=>"The type of the document", "deprecated"=>true}}, "deprecated"=>{"version"=>"7.0.0", "description"=>"Specifying types in urls has been deprecated"}}, {"path"=>"/{index}/{type}/{id}", "methods"=>["PUT", "POST"], "parts"=>{"id"=>{"type"=>"string", "description"=>"Document ID"}, "index"=>{"type"=>"string", "description"=>"The name of the index"}, "type"=>{"type"=>"string", "description"=>"The type of the document", "deprecated"=>true}}, "deprecated"=>{"version"=>"7.0.0", "description"=>"Specifying types in urls has been deprecated"}}]}, "params"=>{"wait_for_active_shards"=>{"type"=>"string", "description"=>"Sets the number of shard copies that must be active before proceeding with the index operation. Defaults to 1, meaning the primary shard only. Set to `all` for all shard copies, otherwise set to any non-negative value less than or equal to the total number of copies for the shard (number of replicas + 1)"}, "op_type"=>{"type"=>"enum", "options"=>["index", "create"], "description"=>"Explicit operation type. Defaults to `index` for requests with an explicit document ID, and to `create`for requests without an explicit document ID"}, "refresh"=>{"type"=>"enum", "options"=>["true", "false", "wait_for"], "description"=>"If `true` then refresh the affected shards to make this operation visible to search, if `wait_for` then wait for a refresh to make this operation visible to search, if `false` (the default) then do nothing with refreshes."}, "routing"=>{"type"=>"string", "description"=>"Specific routing value"}, "timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout"}, "version"=>{"type"=>"number", "description"=>"Explicit version number for concurrency control"}, "version_type"=>{"type"=>"enum", "options"=>["internal", "external", "external_gte"], "description"=>"Specific version type"}, "if_seq_no"=>{"type"=>"number", "description"=>"only perform the index operation if the last operation that has changed the document has the specified sequence number"}, "if_primary_term"=>{"type"=>"number", "description"=>"only perform the index operation if the last operation that has changed the document has the specified primary term"}, "pipeline"=>{"type"=>"string", "description"=>"The pipeline id to preprocess incoming documents with"}}, "body"=>{"description"=>"The document", "required"=>true}} request(api_name, api_spec, params) end # indices.analyze # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-analyze.html", "description"=>"Performs the analysis process on a text and return the tokens breakdown of the text."} def indices_analyze(params = {}) api_name = 'indices.analyze' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-analyze.html", "description"=>"Performs the analysis process on a text and return the tokens breakdown of the text."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_analyze", "methods"=>["GET", "POST"]}, {"path"=>"/{index}/_analyze", "methods"=>["GET", "POST"], "parts"=>{"index"=>{"type"=>"string", "description"=>"The name of the index to scope the operation"}}}]}, "params"=>{"index"=>{"type"=>"string", "description"=>"The name of the index to scope the operation"}}, "body"=>{"description"=>"Define analyzer/tokenizer parameters and the text on which the analysis should be performed"}} request(api_name, api_spec, params) end # indices.clear_cache # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-clearcache.html", "description"=>"Clears all or specific caches for one or more indices."} def indices_clear_cache(params = {}) api_name = 'indices.clear_cache' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-clearcache.html", "description"=>"Clears all or specific caches for one or more indices."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_cache/clear", "methods"=>["POST"]}, {"path"=>"/{index}/_cache/clear", "methods"=>["POST"], "parts"=>{"index"=>{"type"=>"list", "description"=>"A comma-separated list of index name to limit the operation"}}}]}, "params"=>{"fielddata"=>{"type"=>"boolean", "description"=>"Clear field data"}, "fields"=>{"type"=>"list", "description"=>"A comma-separated list of fields to clear when using the `fielddata` parameter (default: all)"}, "query"=>{"type"=>"boolean", "description"=>"Clear query caches"}, "ignore_unavailable"=>{"type"=>"boolean", "description"=>"Whether specified concrete indices should be ignored when unavailable (missing or closed)"}, "allow_no_indices"=>{"type"=>"boolean", "description"=>"Whether to ignore if a wildcard indices expression resolves into no concrete indices. (This includes `_all` string or when no indices have been specified)"}, "expand_wildcards"=>{"type"=>"enum", "options"=>["open", "closed", "hidden", "none", "all"], "default"=>"open", "description"=>"Whether to expand wildcard expression to concrete indices that are open, closed or both."}, "index"=>{"type"=>"list", "description"=>"A comma-separated list of index name to limit the operation"}, "request"=>{"type"=>"boolean", "description"=>"Clear request cache"}}} request(api_name, api_spec, params) end # indices.clone # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-clone-index.html", "description"=>"Clones an index"} def indices_clone(params = {}) api_name = 'indices.clone' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-clone-index.html", "description"=>"Clones an index"}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/{index}/_clone/{target}", "methods"=>["PUT", "POST"], "parts"=>{"index"=>{"type"=>"string", "description"=>"The name of the source index to clone"}, "target"=>{"type"=>"string", "description"=>"The name of the target index to clone into"}}}]}, "params"=>{"timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout"}, "master_timeout"=>{"type"=>"time", "description"=>"Specify timeout for connection to master"}, "wait_for_active_shards"=>{"type"=>"string", "description"=>"Set the number of active shards to wait for on the cloned index before the operation returns."}}, "body"=>{"description"=>"The configuration for the target index (`settings` and `aliases`)"}} request(api_name, api_spec, params) end # indices.close # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-open-close.html", "description"=>"Closes an index."} def indices_close(params = {}) api_name = 'indices.close' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-open-close.html", "description"=>"Closes an index."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/{index}/_close", "methods"=>["POST"], "parts"=>{"index"=>{"type"=>"list", "description"=>"A comma separated list of indices to close"}}}]}, "params"=>{"timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout"}, "master_timeout"=>{"type"=>"time", "description"=>"Specify timeout for connection to master"}, "ignore_unavailable"=>{"type"=>"boolean", "description"=>"Whether specified concrete indices should be ignored when unavailable (missing or closed)"}, "allow_no_indices"=>{"type"=>"boolean", "description"=>"Whether to ignore if a wildcard indices expression resolves into no concrete indices. (This includes `_all` string or when no indices have been specified)"}, "expand_wildcards"=>{"type"=>"enum", "options"=>["open", "closed", "hidden", "none", "all"], "default"=>"open", "description"=>"Whether to expand wildcard expression to concrete indices that are open, closed or both."}, "wait_for_active_shards"=>{"type"=>"string", "description"=>"Sets the number of active shards to wait for before the operation returns."}}} request(api_name, api_spec, params) end # indices.create # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-create-index.html", "description"=>"Creates an index with optional settings and mappings."} def indices_create(params = {}) api_name = 'indices.create' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-create-index.html", "description"=>"Creates an index with optional settings and mappings."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/{index}", "methods"=>["PUT"], "parts"=>{"index"=>{"type"=>"string", "description"=>"The name of the index"}}}]}, "params"=>{"include_type_name"=>{"type"=>"boolean", "description"=>"Whether a type should be expected in the body of the mappings."}, "wait_for_active_shards"=>{"type"=>"string", "description"=>"Set the number of active shards to wait for before the operation returns."}, "timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout"}, "master_timeout"=>{"type"=>"time", "description"=>"Specify timeout for connection to master"}}, "body"=>{"description"=>"The configuration for the index (`settings` and `mappings`)"}} request(api_name, api_spec, params) end # indices.create_data_stream # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/data-streams.html", "description"=>"Creates or updates a data stream"} def indices_create_data_stream(params = {}) api_name = 'indices.create_data_stream' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/data-streams.html", "description"=>"Creates or updates a data stream"}, "stability"=>"experimental", "url"=>{"paths"=>[{"path"=>"/_data_stream/{name}", "methods"=>["PUT"], "parts"=>{"name"=>{"type"=>"string", "description"=>"The name of the data stream"}}}]}, "params"=>{}, "body"=>{"description"=>"The data stream definition", "required"=>true}} request(api_name, api_spec, params) end # indices.delete # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-delete-index.html", "description"=>"Deletes an index."} def indices_delete(params = {}) api_name = 'indices.delete' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-delete-index.html", "description"=>"Deletes an index."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/{index}", "methods"=>["DELETE"], "parts"=>{"index"=>{"type"=>"list", "description"=>"A comma-separated list of indices to delete; use `_all` or `*` string to delete all indices"}}}]}, "params"=>{"timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout"}, "master_timeout"=>{"type"=>"time", "description"=>"Specify timeout for connection to master"}, "ignore_unavailable"=>{"type"=>"boolean", "description"=>"Ignore unavailable indexes (default: false)"}, "allow_no_indices"=>{"type"=>"boolean", "description"=>"Ignore if a wildcard expression resolves to no concrete indices (default: false)"}, "expand_wildcards"=>{"type"=>"enum", "options"=>["open", "closed", "hidden", "none", "all"], "default"=>"open", "description"=>"Whether wildcard expressions should get expanded to open or closed indices (default: open)"}}} request(api_name, api_spec, params) end # indices.delete_alias # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-aliases.html", "description"=>"Deletes an alias."} def indices_delete_alias(params = {}) api_name = 'indices.delete_alias' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-aliases.html", "description"=>"Deletes an alias."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/{index}/_alias/{name}", "methods"=>["DELETE"], "parts"=>{"index"=>{"type"=>"list", "description"=>"A comma-separated list of index names (supports wildcards); use `_all` for all indices"}, "name"=>{"type"=>"list", "description"=>"A comma-separated list of aliases to delete (supports wildcards); use `_all` to delete all aliases for the specified indices."}}}, {"path"=>"/{index}/_aliases/{name}", "methods"=>["DELETE"], "parts"=>{"index"=>{"type"=>"list", "description"=>"A comma-separated list of index names (supports wildcards); use `_all` for all indices"}, "name"=>{"type"=>"list", "description"=>"A comma-separated list of aliases to delete (supports wildcards); use `_all` to delete all aliases for the specified indices."}}}]}, "params"=>{"timeout"=>{"type"=>"time", "description"=>"Explicit timestamp for the document"}, "master_timeout"=>{"type"=>"time", "description"=>"Specify timeout for connection to master"}}} request(api_name, api_spec, params) end # indices.delete_data_stream # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/data-streams.html", "description"=>"Deletes a data stream."} def indices_delete_data_stream(params = {}) api_name = 'indices.delete_data_stream' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/data-streams.html", "description"=>"Deletes a data stream."}, "stability"=>"experimental", "url"=>{"paths"=>[{"path"=>"/_data_stream/{name}", "methods"=>["DELETE"], "parts"=>{"name"=>{"type"=>"string", "description"=>"The name of the data stream"}}}]}, "params"=>{}} request(api_name, api_spec, params) end # indices.delete_index_template # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-templates.html", "description"=>"Deletes an index template."} def indices_delete_index_template(params = {}) api_name = 'indices.delete_index_template' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-templates.html", "description"=>"Deletes an index template."}, "stability"=>"experimental", "url"=>{"paths"=>[{"path"=>"/_index_template/{name}", "methods"=>["DELETE"], "parts"=>{"name"=>{"type"=>"string", "description"=>"The name of the template"}}}]}, "params"=>{"timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout"}, "master_timeout"=>{"type"=>"time", "description"=>"Specify timeout for connection to master"}}} request(api_name, api_spec, params) end # indices.delete_template # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-templates.html", "description"=>"Deletes an index template."} def indices_delete_template(params = {}) api_name = 'indices.delete_template' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-templates.html", "description"=>"Deletes an index template."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_template/{name}", "methods"=>["DELETE"], "parts"=>{"name"=>{"type"=>"string", "description"=>"The name of the template"}}}]}, "params"=>{"timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout"}, "master_timeout"=>{"type"=>"time", "description"=>"Specify timeout for connection to master"}}} request(api_name, api_spec, params) end # indices.exists # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-exists.html", "description"=>"Returns information about whether a particular index exists."} def indices_exists(params = {}) api_name = 'indices.exists' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-exists.html", "description"=>"Returns information about whether a particular index exists."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/{index}", "methods"=>["HEAD"], "parts"=>{"index"=>{"type"=>"list", "description"=>"A comma-separated list of index names"}}}]}, "params"=>{"local"=>{"type"=>"boolean", "description"=>"Return local information, do not retrieve the state from master node (default: false)"}, "ignore_unavailable"=>{"type"=>"boolean", "description"=>"Ignore unavailable indexes (default: false)"}, "allow_no_indices"=>{"type"=>"boolean", "description"=>"Ignore if a wildcard expression resolves to no concrete indices (default: false)"}, "expand_wildcards"=>{"type"=>"enum", "options"=>["open", "closed", "hidden", "none", "all"], "default"=>"open", "description"=>"Whether wildcard expressions should get expanded to open or closed indices (default: open)"}, "flat_settings"=>{"type"=>"boolean", "description"=>"Return settings in flat format (default: false)"}, "include_defaults"=>{"type"=>"boolean", "description"=>"Whether to return all default setting for each of the indices.", "default"=>false}}} request(api_name, api_spec, params) end alias :indices_exists? :indices_exists # indices.exists_alias # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-aliases.html", "description"=>"Returns information about whether a particular alias exists."} def indices_exists_alias(params = {}) api_name = 'indices.exists_alias' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-aliases.html", "description"=>"Returns information about whether a particular alias exists."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_alias/{name}", "methods"=>["HEAD"], "parts"=>{"name"=>{"type"=>"list", "description"=>"A comma-separated list of alias names to return"}}}, {"path"=>"/{index}/_alias/{name}", "methods"=>["HEAD"], "parts"=>{"index"=>{"type"=>"list", "description"=>"A comma-separated list of index names to filter aliases"}, "name"=>{"type"=>"list", "description"=>"A comma-separated list of alias names to return"}}}]}, "params"=>{"ignore_unavailable"=>{"type"=>"boolean", "description"=>"Whether specified concrete indices should be ignored when unavailable (missing or closed)"}, "allow_no_indices"=>{"type"=>"boolean", "description"=>"Whether to ignore if a wildcard indices expression resolves into no concrete indices. (This includes `_all` string or when no indices have been specified)"}, "expand_wildcards"=>{"type"=>"enum", "options"=>["open", "closed", "hidden", "none", "all"], "default"=>"all", "description"=>"Whether to expand wildcard expression to concrete indices that are open, closed or both."}, "local"=>{"type"=>"boolean", "description"=>"Return local information, do not retrieve the state from master node (default: false)"}}} request(api_name, api_spec, params) end alias :indices_exists_alias? :indices_exists_alias # indices.exists_index_template # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-templates.html", "description"=>"Returns information about whether a particular index template exists."} def indices_exists_index_template(params = {}) api_name = 'indices.exists_index_template' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-templates.html", "description"=>"Returns information about whether a particular index template exists."}, "stability"=>"experimental", "url"=>{"paths"=>[{"path"=>"/_index_template/{name}", "methods"=>["HEAD"], "parts"=>{"name"=>{"type"=>"string", "description"=>"The name of the template"}}}]}, "params"=>{"flat_settings"=>{"type"=>"boolean", "description"=>"Return settings in flat format (default: false)"}, "master_timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout for connection to master node"}, "local"=>{"type"=>"boolean", "description"=>"Return local information, do not retrieve the state from master node (default: false)"}}} request(api_name, api_spec, params) end alias :indices_exists_index_template? :indices_exists_index_template # indices.exists_template # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-templates.html", "description"=>"Returns information about whether a particular index template exists."} def indices_exists_template(params = {}) api_name = 'indices.exists_template' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-templates.html", "description"=>"Returns information about whether a particular index template exists."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_template/{name}", "methods"=>["HEAD"], "parts"=>{"name"=>{"type"=>"list", "description"=>"The comma separated names of the index templates"}}}]}, "params"=>{"flat_settings"=>{"type"=>"boolean", "description"=>"Return settings in flat format (default: false)"}, "master_timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout for connection to master node"}, "local"=>{"type"=>"boolean", "description"=>"Return local information, do not retrieve the state from master node (default: false)"}}} request(api_name, api_spec, params) end alias :indices_exists_template? :indices_exists_template # indices.exists_type # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-types-exists.html", "description"=>"Returns information about whether a particular document type exists. (DEPRECATED)"} def indices_exists_type(params = {}) api_name = 'indices.exists_type' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-types-exists.html", "description"=>"Returns information about whether a particular document type exists. (DEPRECATED)"}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/{index}/_mapping/{type}", "methods"=>["HEAD"], "parts"=>{"index"=>{"type"=>"list", "description"=>"A comma-separated list of index names; use `_all` to check the types across all indices"}, "type"=>{"type"=>"list", "description"=>"A comma-separated list of document types to check"}}}]}, "params"=>{"ignore_unavailable"=>{"type"=>"boolean", "description"=>"Whether specified concrete indices should be ignored when unavailable (missing or closed)"}, "allow_no_indices"=>{"type"=>"boolean", "description"=>"Whether to ignore if a wildcard indices expression resolves into no concrete indices. (This includes `_all` string or when no indices have been specified)"}, "expand_wildcards"=>{"type"=>"enum", "options"=>["open", "closed", "hidden", "none", "all"], "default"=>"open", "description"=>"Whether to expand wildcard expression to concrete indices that are open, closed or both."}, "local"=>{"type"=>"boolean", "description"=>"Return local information, do not retrieve the state from master node (default: false)"}}} request(api_name, api_spec, params) end alias :indices_exists_type? :indices_exists_type # indices.flush # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-flush.html", "description"=>"Performs the flush operation on one or more indices."} def indices_flush(params = {}) api_name = 'indices.flush' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-flush.html", "description"=>"Performs the flush operation on one or more indices."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_flush", "methods"=>["POST", "GET"]}, {"path"=>"/{index}/_flush", "methods"=>["POST", "GET"], "parts"=>{"index"=>{"type"=>"list", "description"=>"A comma-separated list of index names; use `_all` or empty string for all indices"}}}]}, "params"=>{"force"=>{"type"=>"boolean", "description"=>"Whether a flush should be forced even if it is not necessarily needed ie. if no changes will be committed to the index. This is useful if transaction log IDs should be incremented even if no uncommitted changes are present. (This setting can be considered as internal)"}, "wait_if_ongoing"=>{"type"=>"boolean", "description"=>"If set to true the flush operation will block until the flush can be executed if another flush operation is already executing. The default is true. If set to false the flush will be skipped iff if another flush operation is already running."}, "ignore_unavailable"=>{"type"=>"boolean", "description"=>"Whether specified concrete indices should be ignored when unavailable (missing or closed)"}, "allow_no_indices"=>{"type"=>"boolean", "description"=>"Whether to ignore if a wildcard indices expression resolves into no concrete indices. (This includes `_all` string or when no indices have been specified)"}, "expand_wildcards"=>{"type"=>"enum", "options"=>["open", "closed", "hidden", "none", "all"], "default"=>"open", "description"=>"Whether to expand wildcard expression to concrete indices that are open, closed or both."}}} request(api_name, api_spec, params) end # indices.flush_synced # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-synced-flush-api.html", "description"=>"Performs a synced flush operation on one or more indices. Synced flush is deprecated and will be removed in 8.0. Use flush instead"} def indices_flush_synced(params = {}) api_name = 'indices.flush_synced' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-synced-flush-api.html", "description"=>"Performs a synced flush operation on one or more indices. Synced flush is deprecated and will be removed in 8.0. Use flush instead"}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_flush/synced", "methods"=>["POST", "GET"]}, {"path"=>"/{index}/_flush/synced", "methods"=>["POST", "GET"], "parts"=>{"index"=>{"type"=>"list", "description"=>"A comma-separated list of index names; use `_all` or empty string for all indices"}}}]}, "params"=>{"ignore_unavailable"=>{"type"=>"boolean", "description"=>"Whether specified concrete indices should be ignored when unavailable (missing or closed)"}, "allow_no_indices"=>{"type"=>"boolean", "description"=>"Whether to ignore if a wildcard indices expression resolves into no concrete indices. (This includes `_all` string or when no indices have been specified)"}, "expand_wildcards"=>{"type"=>"enum", "options"=>["open", "closed", "none", "all"], "default"=>"open", "description"=>"Whether to expand wildcard expression to concrete indices that are open, closed or both."}}} request(api_name, api_spec, params) end # indices.forcemerge # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-forcemerge.html", "description"=>"Performs the force merge operation on one or more indices."} def indices_forcemerge(params = {}) api_name = 'indices.forcemerge' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-forcemerge.html", "description"=>"Performs the force merge operation on one or more indices."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_forcemerge", "methods"=>["POST"]}, {"path"=>"/{index}/_forcemerge", "methods"=>["POST"], "parts"=>{"index"=>{"type"=>"list", "description"=>"A comma-separated list of index names; use `_all` or empty string to perform the operation on all indices"}}}]}, "params"=>{"flush"=>{"type"=>"boolean", "description"=>"Specify whether the index should be flushed after performing the operation (default: true)"}, "ignore_unavailable"=>{"type"=>"boolean", "description"=>"Whether specified concrete indices should be ignored when unavailable (missing or closed)"}, "allow_no_indices"=>{"type"=>"boolean", "description"=>"Whether to ignore if a wildcard indices expression resolves into no concrete indices. (This includes `_all` string or when no indices have been specified)"}, "expand_wildcards"=>{"type"=>"enum", "options"=>["open", "closed", "hidden", "none", "all"], "default"=>"open", "description"=>"Whether to expand wildcard expression to concrete indices that are open, closed or both."}, "max_num_segments"=>{"type"=>"number", "description"=>"The number of segments the index should be merged into (default: dynamic)"}, "only_expunge_deletes"=>{"type"=>"boolean", "description"=>"Specify whether the operation should only expunge deleted documents"}}} request(api_name, api_spec, params) end # indices.get # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-get-index.html", "description"=>"Returns information about one or more indices."} def indices_get(params = {}) api_name = 'indices.get' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-get-index.html", "description"=>"Returns information about one or more indices."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/{index}", "methods"=>["GET"], "parts"=>{"index"=>{"type"=>"list", "description"=>"A comma-separated list of index names"}}}]}, "params"=>{"include_type_name"=>{"type"=>"boolean", "description"=>"Whether to add the type name to the response (default: false)"}, "local"=>{"type"=>"boolean", "description"=>"Return local information, do not retrieve the state from master node (default: false)"}, "ignore_unavailable"=>{"type"=>"boolean", "description"=>"Ignore unavailable indexes (default: false)"}, "allow_no_indices"=>{"type"=>"boolean", "description"=>"Ignore if a wildcard expression resolves to no concrete indices (default: false)"}, "expand_wildcards"=>{"type"=>"enum", "options"=>["open", "closed", "hidden", "none", "all"], "default"=>"open", "description"=>"Whether wildcard expressions should get expanded to open or closed indices (default: open)"}, "flat_settings"=>{"type"=>"boolean", "description"=>"Return settings in flat format (default: false)"}, "include_defaults"=>{"type"=>"boolean", "description"=>"Whether to return all default setting for each of the indices.", "default"=>false}, "master_timeout"=>{"type"=>"time", "description"=>"Specify timeout for connection to master"}}} request(api_name, api_spec, params) end # indices.get_alias # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-aliases.html", "description"=>"Returns an alias."} def indices_get_alias(params = {}) api_name = 'indices.get_alias' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-aliases.html", "description"=>"Returns an alias."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_alias", "methods"=>["GET"]}, {"path"=>"/_alias/{name}", "methods"=>["GET"], "parts"=>{"name"=>{"type"=>"list", "description"=>"A comma-separated list of alias names to return"}}}, {"path"=>"/{index}/_alias/{name}", "methods"=>["GET"], "parts"=>{"index"=>{"type"=>"list", "description"=>"A comma-separated list of index names to filter aliases"}, "name"=>{"type"=>"list", "description"=>"A comma-separated list of alias names to return"}}}, {"path"=>"/{index}/_alias", "methods"=>["GET"], "parts"=>{"index"=>{"type"=>"list", "description"=>"A comma-separated list of index names to filter aliases"}}}]}, "params"=>{"ignore_unavailable"=>{"type"=>"boolean", "description"=>"Whether specified concrete indices should be ignored when unavailable (missing or closed)"}, "allow_no_indices"=>{"type"=>"boolean", "description"=>"Whether to ignore if a wildcard indices expression resolves into no concrete indices. (This includes `_all` string or when no indices have been specified)"}, "expand_wildcards"=>{"type"=>"enum", "options"=>["open", "closed", "hidden", "none", "all"], "default"=>"all", "description"=>"Whether to expand wildcard expression to concrete indices that are open, closed or both."}, "local"=>{"type"=>"boolean", "description"=>"Return local information, do not retrieve the state from master node (default: false)"}}} request(api_name, api_spec, params) end # indices.get_data_streams # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/data-streams.html", "description"=>"Returns data streams."} def indices_get_data_streams(params = {}) api_name = 'indices.get_data_streams' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/data-streams.html", "description"=>"Returns data streams."}, "stability"=>"experimental", "url"=>{"paths"=>[{"path"=>"/_data_streams", "methods"=>["GET"]}, {"path"=>"/_data_streams/{name}", "methods"=>["GET"], "parts"=>{"name"=>{"type"=>"string", "description"=>"The name or wildcard expression of the requested data streams"}}}]}, "params"=>{}} request(api_name, api_spec, params) end # indices.get_field_mapping # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-get-field-mapping.html", "description"=>"Returns mapping for one or more fields."} def indices_get_field_mapping(params = {}) api_name = 'indices.get_field_mapping' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-get-field-mapping.html", "description"=>"Returns mapping for one or more fields."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_mapping/field/{fields}", "methods"=>["GET"], "parts"=>{"fields"=>{"type"=>"list", "description"=>"A comma-separated list of fields"}}}, {"path"=>"/{index}/_mapping/field/{fields}", "methods"=>["GET"], "parts"=>{"index"=>{"type"=>"list", "description"=>"A comma-separated list of index names"}, "fields"=>{"type"=>"list", "description"=>"A comma-separated list of fields"}}}, {"path"=>"/_mapping/{type}/field/{fields}", "methods"=>["GET"], "parts"=>{"type"=>{"type"=>"list", "description"=>"A comma-separated list of document types", "deprecated"=>true}, "fields"=>{"type"=>"list", "description"=>"A comma-separated list of fields"}}, "deprecated"=>{"version"=>"7.0.0", "description"=>"Specifying types in urls has been deprecated"}}, {"path"=>"/{index}/_mapping/{type}/field/{fields}", "methods"=>["GET"], "parts"=>{"index"=>{"type"=>"list", "description"=>"A comma-separated list of index names"}, "type"=>{"type"=>"list", "description"=>"A comma-separated list of document types", "deprecated"=>true}, "fields"=>{"type"=>"list", "description"=>"A comma-separated list of fields"}}, "deprecated"=>{"version"=>"7.0.0", "description"=>"Specifying types in urls has been deprecated"}}]}, "params"=>{"include_type_name"=>{"type"=>"boolean", "description"=>"Whether a type should be returned in the body of the mappings."}, "include_defaults"=>{"type"=>"boolean", "description"=>"Whether the default mapping values should be returned as well"}, "ignore_unavailable"=>{"type"=>"boolean", "description"=>"Whether specified concrete indices should be ignored when unavailable (missing or closed)"}, "allow_no_indices"=>{"type"=>"boolean", "description"=>"Whether to ignore if a wildcard indices expression resolves into no concrete indices. (This includes `_all` string or when no indices have been specified)"}, "expand_wildcards"=>{"type"=>"enum", "options"=>["open", "closed", "hidden", "none", "all"], "default"=>"open", "description"=>"Whether to expand wildcard expression to concrete indices that are open, closed or both."}, "local"=>{"type"=>"boolean", "description"=>"Return local information, do not retrieve the state from master node (default: false)"}}} request(api_name, api_spec, params) end # indices.get_index_template # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-templates.html", "description"=>"Returns an index template."} def indices_get_index_template(params = {}) api_name = 'indices.get_index_template' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-templates.html", "description"=>"Returns an index template."}, "stability"=>"experimental", "url"=>{"paths"=>[{"path"=>"/_index_template", "methods"=>["GET"]}, {"path"=>"/_index_template/{name}", "methods"=>["GET"], "parts"=>{"name"=>{"type"=>"list", "description"=>"The comma separated names of the index templates"}}}]}, "params"=>{"flat_settings"=>{"type"=>"boolean", "description"=>"Return settings in flat format (default: false)"}, "master_timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout for connection to master node"}, "local"=>{"type"=>"boolean", "description"=>"Return local information, do not retrieve the state from master node (default: false)"}}} request(api_name, api_spec, params) end # indices.get_mapping # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-get-mapping.html", "description"=>"Returns mappings for one or more indices."} def indices_get_mapping(params = {}) api_name = 'indices.get_mapping' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-get-mapping.html", "description"=>"Returns mappings for one or more indices."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_mapping", "methods"=>["GET"]}, {"path"=>"/{index}/_mapping", "methods"=>["GET"], "parts"=>{"index"=>{"type"=>"list", "description"=>"A comma-separated list of index names"}}}, {"path"=>"/_mapping/{type}", "methods"=>["GET"], "parts"=>{"type"=>{"type"=>"list", "description"=>"A comma-separated list of document types", "deprecated"=>true}}, "deprecated"=>{"version"=>"7.0.0", "description"=>"Specifying types in urls has been deprecated"}}, {"path"=>"/{index}/_mapping/{type}", "methods"=>["GET"], "parts"=>{"index"=>{"type"=>"list", "description"=>"A comma-separated list of index names"}, "type"=>{"type"=>"list", "description"=>"A comma-separated list of document types", "deprecated"=>true}}, "deprecated"=>{"version"=>"7.0.0", "description"=>"Specifying types in urls has been deprecated"}}]}, "params"=>{"include_type_name"=>{"type"=>"boolean", "description"=>"Whether to add the type name to the response (default: false)"}, "ignore_unavailable"=>{"type"=>"boolean", "description"=>"Whether specified concrete indices should be ignored when unavailable (missing or closed)"}, "allow_no_indices"=>{"type"=>"boolean", "description"=>"Whether to ignore if a wildcard indices expression resolves into no concrete indices. (This includes `_all` string or when no indices have been specified)"}, "expand_wildcards"=>{"type"=>"enum", "options"=>["open", "closed", "hidden", "none", "all"], "default"=>"open", "description"=>"Whether to expand wildcard expression to concrete indices that are open, closed or both."}, "master_timeout"=>{"type"=>"time", "description"=>"Specify timeout for connection to master"}, "local"=>{"type"=>"boolean", "description"=>"Return local information, do not retrieve the state from master node (default: false)"}}} request(api_name, api_spec, params) end # indices.get_settings # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-get-settings.html", "description"=>"Returns settings for one or more indices."} def indices_get_settings(params = {}) api_name = 'indices.get_settings' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-get-settings.html", "description"=>"Returns settings for one or more indices."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_settings", "methods"=>["GET"]}, {"path"=>"/{index}/_settings", "methods"=>["GET"], "parts"=>{"index"=>{"type"=>"list", "description"=>"A comma-separated list of index names; use `_all` or empty string to perform the operation on all indices"}}}, {"path"=>"/{index}/_settings/{name}", "methods"=>["GET"], "parts"=>{"index"=>{"type"=>"list", "description"=>"A comma-separated list of index names; use `_all` or empty string to perform the operation on all indices"}, "name"=>{"type"=>"list", "description"=>"The name of the settings that should be included"}}}, {"path"=>"/_settings/{name}", "methods"=>["GET"], "parts"=>{"name"=>{"type"=>"list", "description"=>"The name of the settings that should be included"}}}]}, "params"=>{"master_timeout"=>{"type"=>"time", "description"=>"Specify timeout for connection to master"}, "ignore_unavailable"=>{"type"=>"boolean", "description"=>"Whether specified concrete indices should be ignored when unavailable (missing or closed)"}, "allow_no_indices"=>{"type"=>"boolean", "description"=>"Whether to ignore if a wildcard indices expression resolves into no concrete indices. (This includes `_all` string or when no indices have been specified)"}, "expand_wildcards"=>{"type"=>"enum", "options"=>["open", "closed", "hidden", "none", "all"], "default"=>"all", "description"=>"Whether to expand wildcard expression to concrete indices that are open, closed or both."}, "flat_settings"=>{"type"=>"boolean", "description"=>"Return settings in flat format (default: false)"}, "local"=>{"type"=>"boolean", "description"=>"Return local information, do not retrieve the state from master node (default: false)"}, "include_defaults"=>{"type"=>"boolean", "description"=>"Whether to return all default setting for each of the indices.", "default"=>false}}} request(api_name, api_spec, params) end # indices.get_template # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-templates.html", "description"=>"Returns an index template."} def indices_get_template(params = {}) api_name = 'indices.get_template' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-templates.html", "description"=>"Returns an index template."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_template", "methods"=>["GET"]}, {"path"=>"/_template/{name}", "methods"=>["GET"], "parts"=>{"name"=>{"type"=>"list", "description"=>"The comma separated names of the index templates"}}}]}, "params"=>{"include_type_name"=>{"type"=>"boolean", "description"=>"Whether a type should be returned in the body of the mappings."}, "flat_settings"=>{"type"=>"boolean", "description"=>"Return settings in flat format (default: false)"}, "master_timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout for connection to master node"}, "local"=>{"type"=>"boolean", "description"=>"Return local information, do not retrieve the state from master node (default: false)"}}} request(api_name, api_spec, params) end # indices.get_upgrade # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-upgrade.html", "description"=>"The _upgrade API is no longer useful and will be removed."} def indices_get_upgrade(params = {}) api_name = 'indices.get_upgrade' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-upgrade.html", "description"=>"The _upgrade API is no longer useful and will be removed."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_upgrade", "methods"=>["GET"]}, {"path"=>"/{index}/_upgrade", "methods"=>["GET"], "parts"=>{"index"=>{"type"=>"list", "description"=>"A comma-separated list of index names; use `_all` or empty string to perform the operation on all indices"}}}]}, "params"=>{"ignore_unavailable"=>{"type"=>"boolean", "description"=>"Whether specified concrete indices should be ignored when unavailable (missing or closed)"}, "allow_no_indices"=>{"type"=>"boolean", "description"=>"Whether to ignore if a wildcard indices expression resolves into no concrete indices. (This includes `_all` string or when no indices have been specified)"}, "expand_wildcards"=>{"type"=>"enum", "options"=>["open", "closed", "hidden", "none", "all"], "default"=>"open", "description"=>"Whether to expand wildcard expression to concrete indices that are open, closed or both."}}} request(api_name, api_spec, params) end # indices.open # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-open-close.html", "description"=>"Opens an index."} def indices_open(params = {}) api_name = 'indices.open' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-open-close.html", "description"=>"Opens an index."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/{index}/_open", "methods"=>["POST"], "parts"=>{"index"=>{"type"=>"list", "description"=>"A comma separated list of indices to open"}}}]}, "params"=>{"timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout"}, "master_timeout"=>{"type"=>"time", "description"=>"Specify timeout for connection to master"}, "ignore_unavailable"=>{"type"=>"boolean", "description"=>"Whether specified concrete indices should be ignored when unavailable (missing or closed)"}, "allow_no_indices"=>{"type"=>"boolean", "description"=>"Whether to ignore if a wildcard indices expression resolves into no concrete indices. (This includes `_all` string or when no indices have been specified)"}, "expand_wildcards"=>{"type"=>"enum", "options"=>["open", "closed", "hidden", "none", "all"], "default"=>"closed", "description"=>"Whether to expand wildcard expression to concrete indices that are open, closed or both."}, "wait_for_active_shards"=>{"type"=>"string", "description"=>"Sets the number of active shards to wait for before the operation returns."}}} request(api_name, api_spec, params) end # indices.put_alias # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-aliases.html", "description"=>"Creates or updates an alias."} def indices_put_alias(params = {}) api_name = 'indices.put_alias' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-aliases.html", "description"=>"Creates or updates an alias."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/{index}/_alias/{name}", "methods"=>["PUT", "POST"], "parts"=>{"index"=>{"type"=>"list", "description"=>"A comma-separated list of index names the alias should point to (supports wildcards); use `_all` to perform the operation on all indices."}, "name"=>{"type"=>"string", "description"=>"The name of the alias to be created or updated"}}}, {"path"=>"/{index}/_aliases/{name}", "methods"=>["PUT", "POST"], "parts"=>{"index"=>{"type"=>"list", "description"=>"A comma-separated list of index names the alias should point to (supports wildcards); use `_all` to perform the operation on all indices."}, "name"=>{"type"=>"string", "description"=>"The name of the alias to be created or updated"}}}]}, "params"=>{"timeout"=>{"type"=>"time", "description"=>"Explicit timestamp for the document"}, "master_timeout"=>{"type"=>"time", "description"=>"Specify timeout for connection to master"}}, "body"=>{"description"=>"The settings for the alias, such as `routing` or `filter`", "required"=>false}} request(api_name, api_spec, params) end # indices.put_index_template # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-templates.html", "description"=>"Creates or updates an index template."} def indices_put_index_template(params = {}) api_name = 'indices.put_index_template' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-templates.html", "description"=>"Creates or updates an index template."}, "stability"=>"experimental", "url"=>{"paths"=>[{"path"=>"/_index_template/{name}", "methods"=>["PUT", "POST"], "parts"=>{"name"=>{"type"=>"string", "description"=>"The name of the template"}}}]}, "params"=>{"create"=>{"type"=>"boolean", "description"=>"Whether the index template should only be added if new or can also replace an existing one", "default"=>false}, "cause"=>{"type"=>"string", "description"=>"User defined reason for creating/updating the index template", "default"=>false}, "master_timeout"=>{"type"=>"time", "description"=>"Specify timeout for connection to master"}}, "body"=>{"description"=>"The template definition", "required"=>true}} request(api_name, api_spec, params) end # indices.put_mapping # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-put-mapping.html", "description"=>"Updates the index mappings."} def indices_put_mapping(params = {}) api_name = 'indices.put_mapping' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-put-mapping.html", "description"=>"Updates the index mappings."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/{index}/_mapping", "methods"=>["PUT", "POST"], "parts"=>{"index"=>{"type"=>"list", "description"=>"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."}}}, {"path"=>"/{index}/{type}/_mapping", "methods"=>["PUT", "POST"], "parts"=>{"index"=>{"type"=>"list", "description"=>"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."}, "type"=>{"type"=>"string", "description"=>"The name of the document type", "deprecated"=>true}}, "deprecated"=>{"version"=>"7.0.0", "description"=>"Specifying types in urls has been deprecated"}}, {"path"=>"/{index}/_mapping/{type}", "methods"=>["PUT", "POST"], "parts"=>{"index"=>{"type"=>"list", "description"=>"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."}, "type"=>{"type"=>"string", "description"=>"The name of the document type", "deprecated"=>true}}, "deprecated"=>{"version"=>"7.0.0", "description"=>"Specifying types in urls has been deprecated"}}, {"path"=>"/{index}/{type}/_mappings", "methods"=>["PUT", "POST"], "parts"=>{"index"=>{"type"=>"list", "description"=>"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."}, "type"=>{"type"=>"string", "description"=>"The name of the document type", "deprecated"=>true}}, "deprecated"=>{"version"=>"7.0.0", "description"=>"Specifying types in urls has been deprecated"}}, {"path"=>"/{index}/_mappings/{type}", "methods"=>["PUT", "POST"], "parts"=>{"index"=>{"type"=>"list", "description"=>"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."}, "type"=>{"type"=>"string", "description"=>"The name of the document type", "deprecated"=>true}}, "deprecated"=>{"version"=>"7.0.0", "description"=>"Specifying types in urls has been deprecated"}}, {"path"=>"/_mappings/{type}", "methods"=>["PUT", "POST"], "parts"=>{"type"=>{"type"=>"string", "description"=>"The name of the document type", "deprecated"=>true}}, "deprecated"=>{"version"=>"7.0.0", "description"=>"Specifying types in urls has been deprecated"}}, {"path"=>"/{index}/_mappings", "methods"=>["PUT", "POST"], "parts"=>{"index"=>{"type"=>"list", "description"=>"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."}}, "deprecated"=>{"version"=>"7.0.0", "description"=>"The plural mappings is accepted but only /_mapping is documented"}}, {"path"=>"/_mapping/{type}", "methods"=>["PUT", "POST"], "parts"=>{"type"=>{"type"=>"string", "description"=>"The name of the document type", "deprecated"=>true}}, "deprecated"=>{"version"=>"7.0.0", "description"=>"Specifying types in urls has been deprecated"}}]}, "params"=>{"include_type_name"=>{"type"=>"boolean", "description"=>"Whether a type should be expected in the body of the mappings."}, "timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout"}, "master_timeout"=>{"type"=>"time", "description"=>"Specify timeout for connection to master"}, "ignore_unavailable"=>{"type"=>"boolean", "description"=>"Whether specified concrete indices should be ignored when unavailable (missing or closed)"}, "allow_no_indices"=>{"type"=>"boolean", "description"=>"Whether to ignore if a wildcard indices expression resolves into no concrete indices. (This includes `_all` string or when no indices have been specified)"}, "expand_wildcards"=>{"type"=>"enum", "options"=>["open", "closed", "hidden", "none", "all"], "default"=>"open", "description"=>"Whether to expand wildcard expression to concrete indices that are open, closed or both."}}, "body"=>{"description"=>"The mapping definition", "required"=>true}} request(api_name, api_spec, params) end # indices.put_settings # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-update-settings.html", "description"=>"Updates the index settings."} def indices_put_settings(params = {}) api_name = 'indices.put_settings' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-update-settings.html", "description"=>"Updates the index settings."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_settings", "methods"=>["PUT"]}, {"path"=>"/{index}/_settings", "methods"=>["PUT"], "parts"=>{"index"=>{"type"=>"list", "description"=>"A comma-separated list of index names; use `_all` or empty string to perform the operation on all indices"}}}]}, "params"=>{"master_timeout"=>{"type"=>"time", "description"=>"Specify timeout for connection to master"}, "timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout"}, "preserve_existing"=>{"type"=>"boolean", "description"=>"Whether to update existing settings. If set to `true` existing settings on an index remain unchanged, the default is `false`"}, "ignore_unavailable"=>{"type"=>"boolean", "description"=>"Whether specified concrete indices should be ignored when unavailable (missing or closed)"}, "allow_no_indices"=>{"type"=>"boolean", "description"=>"Whether to ignore if a wildcard indices expression resolves into no concrete indices. (This includes `_all` string or when no indices have been specified)"}, "expand_wildcards"=>{"type"=>"enum", "options"=>["open", "closed", "hidden", "none", "all"], "default"=>"open", "description"=>"Whether to expand wildcard expression to concrete indices that are open, closed or both."}, "flat_settings"=>{"type"=>"boolean", "description"=>"Return settings in flat format (default: false)"}}, "body"=>{"description"=>"The index settings to be updated", "required"=>true}} request(api_name, api_spec, params) end # indices.put_template # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-templates.html", "description"=>"Creates or updates an index template."} def indices_put_template(params = {}) api_name = 'indices.put_template' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-templates.html", "description"=>"Creates or updates an index template."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_template/{name}", "methods"=>["PUT", "POST"], "parts"=>{"name"=>{"type"=>"string", "description"=>"The name of the template"}}}]}, "params"=>{"include_type_name"=>{"type"=>"boolean", "description"=>"Whether a type should be returned in the body of the mappings."}, "order"=>{"type"=>"number", "description"=>"The order for this template when merging multiple matching ones (higher numbers are merged later, overriding the lower numbers)"}, "create"=>{"type"=>"boolean", "description"=>"Whether the index template should only be added if new or can also replace an existing one", "default"=>false}, "master_timeout"=>{"type"=>"time", "description"=>"Specify timeout for connection to master"}}, "body"=>{"description"=>"The template definition", "required"=>true}} request(api_name, api_spec, params) end # indices.recovery # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-recovery.html", "description"=>"Returns information about ongoing index shard recoveries."} def indices_recovery(params = {}) api_name = 'indices.recovery' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-recovery.html", "description"=>"Returns information about ongoing index shard recoveries."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_recovery", "methods"=>["GET"]}, {"path"=>"/{index}/_recovery", "methods"=>["GET"], "parts"=>{"index"=>{"type"=>"list", "description"=>"A comma-separated list of index names; use `_all` or empty string to perform the operation on all indices"}}}]}, "params"=>{"detailed"=>{"type"=>"boolean", "description"=>"Whether to display detailed information about shard recovery", "default"=>false}, "active_only"=>{"type"=>"boolean", "description"=>"Display only those recoveries that are currently on-going", "default"=>false}}} request(api_name, api_spec, params) end # indices.refresh # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-refresh.html", "description"=>"Performs the refresh operation in one or more indices."} def indices_refresh(params = {}) api_name = 'indices.refresh' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-refresh.html", "description"=>"Performs the refresh operation in one or more indices."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_refresh", "methods"=>["POST", "GET"]}, {"path"=>"/{index}/_refresh", "methods"=>["POST", "GET"], "parts"=>{"index"=>{"type"=>"list", "description"=>"A comma-separated list of index names; use `_all` or empty string to perform the operation on all indices"}}}]}, "params"=>{"ignore_unavailable"=>{"type"=>"boolean", "description"=>"Whether specified concrete indices should be ignored when unavailable (missing or closed)"}, "allow_no_indices"=>{"type"=>"boolean", "description"=>"Whether to ignore if a wildcard indices expression resolves into no concrete indices. (This includes `_all` string or when no indices have been specified)"}, "expand_wildcards"=>{"type"=>"enum", "options"=>["open", "closed", "hidden", "none", "all"], "default"=>"open", "description"=>"Whether to expand wildcard expression to concrete indices that are open, closed or both."}}} request(api_name, api_spec, params) end # indices.rollover # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-rollover-index.html", "description"=>"Updates an alias to point to a new index when the existing index\nis considered to be too large or too old."} def indices_rollover(params = {}) api_name = 'indices.rollover' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-rollover-index.html", "description"=>"Updates an alias to point to a new index when the existing index\nis considered to be too large or too old."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/{alias}/_rollover", "methods"=>["POST"], "parts"=>{"alias"=>{"type"=>"string", "description"=>"The name of the alias to rollover"}}}, {"path"=>"/{alias}/_rollover/{new_index}", "methods"=>["POST"], "parts"=>{"alias"=>{"type"=>"string", "description"=>"The name of the alias to rollover"}, "new_index"=>{"type"=>"string", "description"=>"The name of the rollover index"}}}]}, "params"=>{"include_type_name"=>{"type"=>"boolean", "description"=>"Whether a type should be included in the body of the mappings."}, "timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout"}, "dry_run"=>{"type"=>"boolean", "description"=>"If set to true the rollover action will only be validated but not actually performed even if a condition matches. The default is false"}, "master_timeout"=>{"type"=>"time", "description"=>"Specify timeout for connection to master"}, "wait_for_active_shards"=>{"type"=>"string", "description"=>"Set the number of active shards to wait for on the newly created rollover index before the operation returns."}}, "body"=>{"description"=>"The conditions that needs to be met for executing rollover"}} request(api_name, api_spec, params) end # indices.segments # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-segments.html", "description"=>"Provides low-level information about segments in a Lucene index."} def indices_segments(params = {}) api_name = 'indices.segments' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-segments.html", "description"=>"Provides low-level information about segments in a Lucene index."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_segments", "methods"=>["GET"]}, {"path"=>"/{index}/_segments", "methods"=>["GET"], "parts"=>{"index"=>{"type"=>"list", "description"=>"A comma-separated list of index names; use `_all` or empty string to perform the operation on all indices"}}}]}, "params"=>{"ignore_unavailable"=>{"type"=>"boolean", "description"=>"Whether specified concrete indices should be ignored when unavailable (missing or closed)"}, "allow_no_indices"=>{"type"=>"boolean", "description"=>"Whether to ignore if a wildcard indices expression resolves into no concrete indices. (This includes `_all` string or when no indices have been specified)"}, "expand_wildcards"=>{"type"=>"enum", "options"=>["open", "closed", "hidden", "none", "all"], "default"=>"open", "description"=>"Whether to expand wildcard expression to concrete indices that are open, closed or both."}, "verbose"=>{"type"=>"boolean", "description"=>"Includes detailed memory usage by Lucene.", "default"=>false}}} request(api_name, api_spec, params) end # indices.shard_stores # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-shards-stores.html", "description"=>"Provides store information for shard copies of indices."} def indices_shard_stores(params = {}) api_name = 'indices.shard_stores' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-shards-stores.html", "description"=>"Provides store information for shard copies of indices."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_shard_stores", "methods"=>["GET"]}, {"path"=>"/{index}/_shard_stores", "methods"=>["GET"], "parts"=>{"index"=>{"type"=>"list", "description"=>"A comma-separated list of index names; use `_all` or empty string to perform the operation on all indices"}}}]}, "params"=>{"status"=>{"type"=>"list", "options"=>["green", "yellow", "red", "all"], "description"=>"A comma-separated list of statuses used to filter on shards to get store information for"}, "ignore_unavailable"=>{"type"=>"boolean", "description"=>"Whether specified concrete indices should be ignored when unavailable (missing or closed)"}, "allow_no_indices"=>{"type"=>"boolean", "description"=>"Whether to ignore if a wildcard indices expression resolves into no concrete indices. (This includes `_all` string or when no indices have been specified)"}, "expand_wildcards"=>{"type"=>"enum", "options"=>["open", "closed", "hidden", "none", "all"], "default"=>"open", "description"=>"Whether to expand wildcard expression to concrete indices that are open, closed or both."}}} request(api_name, api_spec, params) end # indices.shrink # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-shrink-index.html", "description"=>"Allow to shrink an existing index into a new index with fewer primary shards."} def indices_shrink(params = {}) api_name = 'indices.shrink' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-shrink-index.html", "description"=>"Allow to shrink an existing index into a new index with fewer primary shards."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/{index}/_shrink/{target}", "methods"=>["PUT", "POST"], "parts"=>{"index"=>{"type"=>"string", "description"=>"The name of the source index to shrink"}, "target"=>{"type"=>"string", "description"=>"The name of the target index to shrink into"}}}]}, "params"=>{"copy_settings"=>{"type"=>"boolean", "description"=>"whether or not to copy settings from the source index (defaults to false)"}, "timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout"}, "master_timeout"=>{"type"=>"time", "description"=>"Specify timeout for connection to master"}, "wait_for_active_shards"=>{"type"=>"string", "description"=>"Set the number of active shards to wait for on the shrunken index before the operation returns."}}, "body"=>{"description"=>"The configuration for the target index (`settings` and `aliases`)"}} request(api_name, api_spec, params) end # indices.simulate_index_template # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-templates.html", "description"=>"Simulate matching the given index name against the index templates in the system"} def indices_simulate_index_template(params = {}) api_name = 'indices.simulate_index_template' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-templates.html", "description"=>"Simulate matching the given index name against the index templates in the system"}, "stability"=>"experimental", "url"=>{"paths"=>[{"path"=>"/_index_template/_simulate_index/{name}", "methods"=>["POST"], "parts"=>{"name"=>{"type"=>"string", "description"=>"The name of the index (it must be a concrete index name)"}}}]}, "params"=>{"create"=>{"type"=>"boolean", "description"=>"Whether the index template we optionally defined in the body should only be dry-run added if new or can also replace an existing one", "default"=>false}, "cause"=>{"type"=>"string", "description"=>"User defined reason for dry-run creating the new template for simulation purposes", "default"=>false}, "master_timeout"=>{"type"=>"time", "description"=>"Specify timeout for connection to master"}}, "body"=>{"description"=>"New index template definition, which will be included in the simulation, as if it already exists in the system", "required"=>false}} request(api_name, api_spec, params) end # indices.split # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-split-index.html", "description"=>"Allows you to split an existing index into a new index with more primary shards."} def indices_split(params = {}) api_name = 'indices.split' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-split-index.html", "description"=>"Allows you to split an existing index into a new index with more primary shards."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/{index}/_split/{target}", "methods"=>["PUT", "POST"], "parts"=>{"index"=>{"type"=>"string", "description"=>"The name of the source index to split"}, "target"=>{"type"=>"string", "description"=>"The name of the target index to split into"}}}]}, "params"=>{"copy_settings"=>{"type"=>"boolean", "description"=>"whether or not to copy settings from the source index (defaults to false)"}, "timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout"}, "master_timeout"=>{"type"=>"time", "description"=>"Specify timeout for connection to master"}, "wait_for_active_shards"=>{"type"=>"string", "description"=>"Set the number of active shards to wait for on the shrunken index before the operation returns."}}, "body"=>{"description"=>"The configuration for the target index (`settings` and `aliases`)"}} request(api_name, api_spec, params) end # indices.stats # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-stats.html", "description"=>"Provides statistics on operations happening in an index."} def indices_stats(params = {}) api_name = 'indices.stats' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-stats.html", "description"=>"Provides statistics on operations happening in an index."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_stats", "methods"=>["GET"]}, {"path"=>"/_stats/{metric}", "methods"=>["GET"], "parts"=>{"metric"=>{"type"=>"list", "options"=>["_all", "completion", "docs", "fielddata", "query_cache", "flush", "get", "indexing", "merge", "request_cache", "refresh", "search", "segments", "store", "warmer", "suggest"], "description"=>"Limit the information returned the specific metrics."}}}, {"path"=>"/{index}/_stats", "methods"=>["GET"], "parts"=>{"index"=>{"type"=>"list", "description"=>"A comma-separated list of index names; use `_all` or empty string to perform the operation on all indices"}}}, {"path"=>"/{index}/_stats/{metric}", "methods"=>["GET"], "parts"=>{"index"=>{"type"=>"list", "description"=>"A comma-separated list of index names; use `_all` or empty string to perform the operation on all indices"}, "metric"=>{"type"=>"list", "options"=>["_all", "completion", "docs", "fielddata", "query_cache", "flush", "get", "indexing", "merge", "request_cache", "refresh", "search", "segments", "store", "warmer", "suggest"], "description"=>"Limit the information returned the specific metrics."}}}]}, "params"=>{"completion_fields"=>{"type"=>"list", "description"=>"A comma-separated list of fields for `fielddata` and `suggest` index metric (supports wildcards)"}, "fielddata_fields"=>{"type"=>"list", "description"=>"A comma-separated list of fields for `fielddata` index metric (supports wildcards)"}, "fields"=>{"type"=>"list", "description"=>"A comma-separated list of fields for `fielddata` and `completion` index metric (supports wildcards)"}, "groups"=>{"type"=>"list", "description"=>"A comma-separated list of search groups for `search` index metric"}, "level"=>{"type"=>"enum", "description"=>"Return stats aggregated at cluster, index or shard level", "options"=>["cluster", "indices", "shards"], "default"=>"indices"}, "types"=>{"type"=>"list", "description"=>"A comma-separated list of document types for the `indexing` index metric"}, "include_segment_file_sizes"=>{"type"=>"boolean", "description"=>"Whether to report the aggregated disk usage of each one of the Lucene index files (only applies if segment stats are requested)", "default"=>false}, "include_unloaded_segments"=>{"type"=>"boolean", "description"=>"If set to true segment stats will include stats for segments that are not currently loaded into memory", "default"=>false}, "expand_wildcards"=>{"type"=>"enum", "options"=>["open", "closed", "hidden", "none", "all"], "default"=>"open", "description"=>"Whether to expand wildcard expression to concrete indices that are open, closed or both."}, "forbid_closed_indices"=>{"type"=>"boolean", "description"=>"If set to false stats will also collected from closed indices if explicitly specified or if expand_wildcards expands to closed indices", "default"=>true}}} request(api_name, api_spec, params) end # indices.update_aliases # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-aliases.html", "description"=>"Updates index aliases."} def indices_update_aliases(params = {}) api_name = 'indices.update_aliases' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-aliases.html", "description"=>"Updates index aliases."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_aliases", "methods"=>["POST"]}]}, "params"=>{"timeout"=>{"type"=>"time", "description"=>"Request timeout"}, "master_timeout"=>{"type"=>"time", "description"=>"Specify timeout for connection to master"}}, "body"=>{"description"=>"The definition of `actions` to perform", "required"=>true}} request(api_name, api_spec, params) end # indices.upgrade # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-upgrade.html", "description"=>"The _upgrade API is no longer useful and will be removed."} def indices_upgrade(params = {}) api_name = 'indices.upgrade' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-upgrade.html", "description"=>"The _upgrade API is no longer useful and will be removed."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_upgrade", "methods"=>["POST"]}, {"path"=>"/{index}/_upgrade", "methods"=>["POST"], "parts"=>{"index"=>{"type"=>"list", "description"=>"A comma-separated list of index names; use `_all` or empty string to perform the operation on all indices"}}}]}, "params"=>{"allow_no_indices"=>{"type"=>"boolean", "description"=>"Whether to ignore if a wildcard indices expression resolves into no concrete indices. (This includes `_all` string or when no indices have been specified)"}, "expand_wildcards"=>{"type"=>"enum", "options"=>["open", "closed", "hidden", "none", "all"], "default"=>"open", "description"=>"Whether to expand wildcard expression to concrete indices that are open, closed or both."}, "ignore_unavailable"=>{"type"=>"boolean", "description"=>"Whether specified concrete indices should be ignored when unavailable (missing or closed)"}, "wait_for_completion"=>{"type"=>"boolean", "description"=>"Specify whether the request should block until the all segments are upgraded (default: false)"}, "only_ancient_segments"=>{"type"=>"boolean", "description"=>"If true, only ancient (an older Lucene major release) segments will be upgraded"}}} request(api_name, api_spec, params) end # indices.validate_query # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/search-validate.html", "description"=>"Allows a user to validate a potentially expensive query without executing it."} def indices_validate_query(params = {}) api_name = 'indices.validate_query' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/search-validate.html", "description"=>"Allows a user to validate a potentially expensive query without executing it."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_validate/query", "methods"=>["GET", "POST"]}, {"path"=>"/{index}/_validate/query", "methods"=>["GET", "POST"], "parts"=>{"index"=>{"type"=>"list", "description"=>"A comma-separated list of index names to restrict the operation; use `_all` or empty string to perform the operation on all indices"}}}, {"path"=>"/{index}/{type}/_validate/query", "methods"=>["GET", "POST"], "parts"=>{"index"=>{"type"=>"list", "description"=>"A comma-separated list of index names to restrict the operation; use `_all` or empty string to perform the operation on all indices"}, "type"=>{"type"=>"list", "description"=>"A comma-separated list of document types to restrict the operation; leave empty to perform the operation on all types", "deprecated"=>true}}, "deprecated"=>{"version"=>"7.0.0", "description"=>"Specifying types in urls has been deprecated"}}]}, "params"=>{"explain"=>{"type"=>"boolean", "description"=>"Return detailed information about the error"}, "ignore_unavailable"=>{"type"=>"boolean", "description"=>"Whether specified concrete indices should be ignored when unavailable (missing or closed)"}, "allow_no_indices"=>{"type"=>"boolean", "description"=>"Whether to ignore if a wildcard indices expression resolves into no concrete indices. (This includes `_all` string or when no indices have been specified)"}, "expand_wildcards"=>{"type"=>"enum", "options"=>["open", "closed", "hidden", "none", "all"], "default"=>"open", "description"=>"Whether to expand wildcard expression to concrete indices that are open, closed or both."}, "q"=>{"type"=>"string", "description"=>"Query in the Lucene query string syntax"}, "analyzer"=>{"type"=>"string", "description"=>"The analyzer to use for the query string"}, "analyze_wildcard"=>{"type"=>"boolean", "description"=>"Specify whether wildcard and prefix queries should be analyzed (default: false)"}, "default_operator"=>{"type"=>"enum", "options"=>["AND", "OR"], "default"=>"OR", "description"=>"The default operator for query string query (AND or OR)"}, "df"=>{"type"=>"string", "description"=>"The field to use as default where no field prefix is given in the query string"}, "lenient"=>{"type"=>"boolean", "description"=>"Specify whether format-based query failures (such as providing text to a numeric field) should be ignored"}, "rewrite"=>{"type"=>"boolean", "description"=>"Provide a more detailed explanation showing the actual Lucene query that will be executed."}, "all_shards"=>{"type"=>"boolean", "description"=>"Execute validation on all shards instead of one random shard per index"}}, "body"=>{"description"=>"The query definition specified with the Query DSL"}} request(api_name, api_spec, params) end # info # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/current/index.html", "description"=>"Returns basic information about the cluster."} def info(params = {}) api_name = 'info' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/current/index.html", "description"=>"Returns basic information about the cluster."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/", "methods"=>["GET"]}]}, "params"=>{}} request(api_name, api_spec, params) end # ingest.delete_pipeline # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/delete-pipeline-api.html", "description"=>"Deletes a pipeline."} def ingest_delete_pipeline(params = {}) api_name = 'ingest.delete_pipeline' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/delete-pipeline-api.html", "description"=>"Deletes a pipeline."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_ingest/pipeline/{id}", "methods"=>["DELETE"], "parts"=>{"id"=>{"type"=>"string", "description"=>"Pipeline ID"}}}]}, "params"=>{"master_timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout for connection to master node"}, "timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout"}}} request(api_name, api_spec, params) end # ingest.get_pipeline # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/get-pipeline-api.html", "description"=>"Returns a pipeline."} def ingest_get_pipeline(params = {}) api_name = 'ingest.get_pipeline' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/get-pipeline-api.html", "description"=>"Returns a pipeline."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_ingest/pipeline", "methods"=>["GET"]}, {"path"=>"/_ingest/pipeline/{id}", "methods"=>["GET"], "parts"=>{"id"=>{"type"=>"string", "description"=>"Comma separated list of pipeline ids. Wildcards supported"}}}]}, "params"=>{"master_timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout for connection to master node"}}} request(api_name, api_spec, params) end # ingest.processor_grok # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/grok-processor.html#grok-processor-rest-get", "description"=>"Returns a list of the built-in patterns."} def ingest_processor_grok(params = {}) api_name = 'ingest.processor_grok' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/grok-processor.html#grok-processor-rest-get", "description"=>"Returns a list of the built-in patterns."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_ingest/processor/grok", "methods"=>["GET"]}]}, "params"=>{}} request(api_name, api_spec, params) end # ingest.put_pipeline # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/put-pipeline-api.html", "description"=>"Creates or updates a pipeline."} def ingest_put_pipeline(params = {}) api_name = 'ingest.put_pipeline' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/put-pipeline-api.html", "description"=>"Creates or updates a pipeline."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_ingest/pipeline/{id}", "methods"=>["PUT"], "parts"=>{"id"=>{"type"=>"string", "description"=>"Pipeline ID"}}}]}, "params"=>{"master_timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout for connection to master node"}, "timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout"}}, "body"=>{"description"=>"The ingest definition", "required"=>true}} request(api_name, api_spec, params) end # ingest.simulate # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/simulate-pipeline-api.html", "description"=>"Allows to simulate a pipeline with example documents."} def ingest_simulate(params = {}) api_name = 'ingest.simulate' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/simulate-pipeline-api.html", "description"=>"Allows to simulate a pipeline with example documents."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_ingest/pipeline/_simulate", "methods"=>["GET", "POST"]}, {"path"=>"/_ingest/pipeline/{id}/_simulate", "methods"=>["GET", "POST"], "parts"=>{"id"=>{"type"=>"string", "description"=>"Pipeline ID"}}}]}, "params"=>{"verbose"=>{"type"=>"boolean", "description"=>"Verbose mode. Display data output for each processor in executed pipeline", "default"=>false}}, "body"=>{"description"=>"The simulate definition", "required"=>true}} request(api_name, api_spec, params) end # mget # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/docs-multi-get.html", "description"=>"Allows to get multiple documents in one request."} def mget(params = {}) api_name = 'mget' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/docs-multi-get.html", "description"=>"Allows to get multiple documents in one request."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_mget", "methods"=>["GET", "POST"]}, {"path"=>"/{index}/_mget", "methods"=>["GET", "POST"], "parts"=>{"index"=>{"type"=>"string", "description"=>"The name of the index"}}}, {"path"=>"/{index}/{type}/_mget", "methods"=>["GET", "POST"], "parts"=>{"index"=>{"type"=>"string", "description"=>"The name of the index"}, "type"=>{"type"=>"string", "description"=>"The type of the document", "deprecated"=>true}}, "deprecated"=>{"version"=>"7.0.0", "description"=>"Specifying types in urls has been deprecated"}}]}, "params"=>{"stored_fields"=>{"type"=>"list", "description"=>"A comma-separated list of stored fields to return in the response"}, "preference"=>{"type"=>"string", "description"=>"Specify the node or shard the operation should be performed on (default: random)"}, "realtime"=>{"type"=>"boolean", "description"=>"Specify whether to perform the operation in realtime or search mode"}, "refresh"=>{"type"=>"boolean", "description"=>"Refresh the shard containing the document before performing the operation"}, "routing"=>{"type"=>"string", "description"=>"Specific routing value"}, "_source"=>{"type"=>"list", "description"=>"True or false to return the _source field or not, or a list of fields to return"}, "_source_excludes"=>{"type"=>"list", "description"=>"A list of fields to exclude from the returned _source field"}, "_source_includes"=>{"type"=>"list", "description"=>"A list of fields to extract and return from the _source field"}}, "body"=>{"description"=>"Document identifiers; can be either `docs` (containing full document information) or `ids` (when index and type is provided in the URL.", "required"=>true}} request(api_name, api_spec, params) end # msearch # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/search-multi-search.html", "description"=>"Allows to execute several search operations in one request."} def msearch(params = {}) api_name = 'msearch' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/search-multi-search.html", "description"=>"Allows to execute several search operations in one request."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_msearch", "methods"=>["GET", "POST"]}, {"path"=>"/{index}/_msearch", "methods"=>["GET", "POST"], "parts"=>{"index"=>{"type"=>"list", "description"=>"A comma-separated list of index names to use as default"}}}, {"path"=>"/{index}/{type}/_msearch", "methods"=>["GET", "POST"], "parts"=>{"index"=>{"type"=>"list", "description"=>"A comma-separated list of index names to use as default"}, "type"=>{"type"=>"list", "description"=>"A comma-separated list of document types to use as default"}}, "deprecated"=>{"version"=>"7.0.0", "description"=>"Specifying types in urls has been deprecated"}}]}, "params"=>{"search_type"=>{"type"=>"enum", "options"=>["query_then_fetch", "query_and_fetch", "dfs_query_then_fetch", "dfs_query_and_fetch"], "description"=>"Search operation type"}, "max_concurrent_searches"=>{"type"=>"number", "description"=>"Controls the maximum number of concurrent searches the multi search api will execute"}, "typed_keys"=>{"type"=>"boolean", "description"=>"Specify whether aggregation and suggester names should be prefixed by their respective types in the response"}, "pre_filter_shard_size"=>{"type"=>"number", "description"=>"A threshold that enforces a pre-filter roundtrip to prefilter search shards based on query rewriting if the number of shards the search request expands to exceeds the threshold. This filter roundtrip can limit the number of shards significantly if for instance a shard can not match any documents based on its rewrite method ie. if date filters are mandatory to match but the shard bounds and the query are disjoint."}, "max_concurrent_shard_requests"=>{"type"=>"number", "description"=>"The number of concurrent shard requests each sub search executes concurrently per node. This value should be used to limit the impact of the search on the cluster in order to limit the number of concurrent shard requests", "default"=>5}, "rest_total_hits_as_int"=>{"type"=>"boolean", "description"=>"Indicates whether hits.total should be rendered as an integer or an object in the rest search response", "default"=>false}, "ccs_minimize_roundtrips"=>{"type"=>"boolean", "description"=>"Indicates whether network round-trips should be minimized as part of cross-cluster search requests execution", "default"=>"true"}}, "body"=>{"description"=>"The request definitions (metadata-search request definition pairs), separated by newlines", "required"=>true, "serialize"=>"bulk"}} request(api_name, api_spec, params) end # msearch_template # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/current/search-multi-search.html", "description"=>"Allows to execute several search template operations in one request."} def msearch_template(params = {}) api_name = 'msearch_template' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/current/search-multi-search.html", "description"=>"Allows to execute several search template operations in one request."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_msearch/template", "methods"=>["GET", "POST"]}, {"path"=>"/{index}/_msearch/template", "methods"=>["GET", "POST"], "parts"=>{"index"=>{"type"=>"list", "description"=>"A comma-separated list of index names to use as default"}}}, {"path"=>"/{index}/{type}/_msearch/template", "methods"=>["GET", "POST"], "parts"=>{"index"=>{"type"=>"list", "description"=>"A comma-separated list of index names to use as default"}, "type"=>{"type"=>"list", "description"=>"A comma-separated list of document types to use as default"}}, "deprecated"=>{"version"=>"7.0.0", "description"=>"Specifying types in urls has been deprecated"}}]}, "params"=>{"search_type"=>{"type"=>"enum", "options"=>["query_then_fetch", "query_and_fetch", "dfs_query_then_fetch", "dfs_query_and_fetch"], "description"=>"Search operation type"}, "typed_keys"=>{"type"=>"boolean", "description"=>"Specify whether aggregation and suggester names should be prefixed by their respective types in the response"}, "max_concurrent_searches"=>{"type"=>"number", "description"=>"Controls the maximum number of concurrent searches the multi search api will execute"}, "rest_total_hits_as_int"=>{"type"=>"boolean", "description"=>"Indicates whether hits.total should be rendered as an integer or an object in the rest search response", "default"=>false}, "ccs_minimize_roundtrips"=>{"type"=>"boolean", "description"=>"Indicates whether network round-trips should be minimized as part of cross-cluster search requests execution", "default"=>"true"}}, "body"=>{"description"=>"The request definitions (metadata-search request definition pairs), separated by newlines", "required"=>true, "serialize"=>"bulk"}} request(api_name, api_spec, params) end # mtermvectors # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/docs-multi-termvectors.html", "description"=>"Returns multiple termvectors in one request."} def mtermvectors(params = {}) api_name = 'mtermvectors' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/docs-multi-termvectors.html", "description"=>"Returns multiple termvectors in one request."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_mtermvectors", "methods"=>["GET", "POST"]}, {"path"=>"/{index}/_mtermvectors", "methods"=>["GET", "POST"], "parts"=>{"index"=>{"type"=>"string", "description"=>"The index in which the document resides."}}}, {"path"=>"/{index}/{type}/_mtermvectors", "methods"=>["GET", "POST"], "parts"=>{"index"=>{"type"=>"string", "description"=>"The index in which the document resides."}, "type"=>{"type"=>"string", "description"=>"The type of the document."}}, "deprecated"=>{"version"=>"7.0.0", "description"=>"Specifying types in urls has been deprecated"}}]}, "params"=>{"ids"=>{"type"=>"list", "description"=>"A comma-separated list of documents ids. You must define ids as parameter or set \"ids\" or \"docs\" in the request body"}, "term_statistics"=>{"type"=>"boolean", "description"=>"Specifies if total term frequency and document frequency should be returned. Applies to all returned documents unless otherwise specified in body \"params\" or \"docs\".", "default"=>false}, "field_statistics"=>{"type"=>"boolean", "description"=>"Specifies if document count, sum of document frequencies and sum of total term frequencies should be returned. Applies to all returned documents unless otherwise specified in body \"params\" or \"docs\".", "default"=>true}, "fields"=>{"type"=>"list", "description"=>"A comma-separated list of fields to return. Applies to all returned documents unless otherwise specified in body \"params\" or \"docs\"."}, "offsets"=>{"type"=>"boolean", "description"=>"Specifies if term offsets should be returned. Applies to all returned documents unless otherwise specified in body \"params\" or \"docs\".", "default"=>true}, "positions"=>{"type"=>"boolean", "description"=>"Specifies if term positions should be returned. Applies to all returned documents unless otherwise specified in body \"params\" or \"docs\".", "default"=>true}, "payloads"=>{"type"=>"boolean", "description"=>"Specifies if term payloads should be returned. Applies to all returned documents unless otherwise specified in body \"params\" or \"docs\".", "default"=>true}, "preference"=>{"type"=>"string", "description"=>"Specify the node or shard the operation should be performed on (default: random) .Applies to all returned documents unless otherwise specified in body \"params\" or \"docs\"."}, "routing"=>{"type"=>"string", "description"=>"Specific routing value. Applies to all returned documents unless otherwise specified in body \"params\" or \"docs\"."}, "realtime"=>{"type"=>"boolean", "description"=>"Specifies if requests are real-time as opposed to near-real-time (default: true)."}, "version"=>{"type"=>"number", "description"=>"Explicit version number for concurrency control"}, "version_type"=>{"type"=>"enum", "options"=>["internal", "external", "external_gte", "force"], "description"=>"Specific version type"}}, "body"=>{"description"=>"Define ids, documents, parameters or a list of parameters per document here. You must at least provide a list of document ids. See documentation.", "required"=>false}} request(api_name, api_spec, params) end # nodes.hot_threads # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/cluster-nodes-hot-threads.html", "description"=>"Returns information about hot threads on each node in the cluster."} def nodes_hot_threads(params = {}) api_name = 'nodes.hot_threads' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/cluster-nodes-hot-threads.html", "description"=>"Returns information about hot threads on each node in the cluster."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_nodes/hot_threads", "methods"=>["GET"]}, {"path"=>"/_nodes/{node_id}/hot_threads", "methods"=>["GET"], "parts"=>{"node_id"=>{"type"=>"list", "description"=>"A comma-separated list of node IDs or names to limit the returned information; use `_local` to return information from the node you're connecting to, leave empty to get information from all nodes"}}}, {"path"=>"/_cluster/nodes/hotthreads", "methods"=>["GET"], "parts"=>{}, "deprecated"=>{"version"=>"7.0.0", "description"=>"The hot threads API accepts `hotthreads` but only `hot_threads` is documented"}}, {"path"=>"/_cluster/nodes/{node_id}/hotthreads", "methods"=>["GET"], "parts"=>{"node_id"=>{"type"=>"list", "description"=>"A comma-separated list of node IDs or names to limit the returned information; use `_local` to return information from the node you're connecting to, leave empty to get information from all nodes"}}, "deprecated"=>{"version"=>"7.0.0", "description"=>"The hot threads API accepts `hotthreads` but only `hot_threads` is documented"}}, {"path"=>"/_nodes/hotthreads", "methods"=>["GET"], "parts"=>{}, "deprecated"=>{"version"=>"7.0.0", "description"=>"The hot threads API accepts `hotthreads` but only `hot_threads` is documented"}}, {"path"=>"/_nodes/{node_id}/hotthreads", "methods"=>["GET"], "parts"=>{"node_id"=>{"type"=>"list", "description"=>"A comma-separated list of node IDs or names to limit the returned information; use `_local` to return information from the node you're connecting to, leave empty to get information from all nodes"}}, "deprecated"=>{"version"=>"7.0.0", "description"=>"The hot threads API accepts `hotthreads` but only `hot_threads` is documented"}}, {"path"=>"/_cluster/nodes/hot_threads", "methods"=>["GET"], "parts"=>{}, "deprecated"=>{"version"=>"7.0.0", "description"=>"The hot accepts /_cluster/nodes as prefix for backwards compatibility reasons"}}, {"path"=>"/_cluster/nodes/{node_id}/hot_threads", "methods"=>["GET"], "parts"=>{"node_id"=>{"type"=>"list", "description"=>"A comma-separated list of node IDs or names to limit the returned information; use `_local` to return information from the node you're connecting to, leave empty to get information from all nodes"}}, "deprecated"=>{"version"=>"7.0.0", "description"=>"The hot accepts /_cluster/nodes as prefix for backwards compatibility reasons"}}]}, "params"=>{"interval"=>{"type"=>"time", "description"=>"The interval for the second sampling of threads"}, "snapshots"=>{"type"=>"number", "description"=>"Number of samples of thread stacktrace (default: 10)"}, "threads"=>{"type"=>"number", "description"=>"Specify the number of threads to provide information for (default: 3)"}, "ignore_idle_threads"=>{"type"=>"boolean", "description"=>"Don't show threads that are in known-idle places, such as waiting on a socket select or pulling from an empty task queue (default: true)"}, "type"=>{"type"=>"enum", "options"=>["cpu", "wait", "block"], "description"=>"The type to sample (default: cpu)"}, "timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout"}}} request(api_name, api_spec, params) end # nodes.info # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/cluster-nodes-info.html", "description"=>"Returns information about nodes in the cluster."} def nodes_info(params = {}) api_name = 'nodes.info' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/cluster-nodes-info.html", "description"=>"Returns information about nodes in the cluster."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_nodes", "methods"=>["GET"]}, {"path"=>"/_nodes/{node_id}", "methods"=>["GET"], "parts"=>{"node_id"=>{"type"=>"list", "description"=>"A comma-separated list of node IDs or names to limit the returned information; use `_local` to return information from the node you're connecting to, leave empty to get information from all nodes"}}}, {"path"=>"/_nodes/{metric}", "methods"=>["GET"], "parts"=>{"metric"=>{"type"=>"list", "options"=>["settings", "os", "process", "jvm", "thread_pool", "transport", "http", "plugins", "ingest"], "description"=>"A comma-separated list of metrics you wish returned. Leave empty to return all."}}}, {"path"=>"/_nodes/{node_id}/{metric}", "methods"=>["GET"], "parts"=>{"node_id"=>{"type"=>"list", "description"=>"A comma-separated list of node IDs or names to limit the returned information; use `_local` to return information from the node you're connecting to, leave empty to get information from all nodes"}, "metric"=>{"type"=>"list", "options"=>["settings", "os", "process", "jvm", "thread_pool", "transport", "http", "plugins", "ingest"], "description"=>"A comma-separated list of metrics you wish returned. Leave empty to return all."}}}]}, "params"=>{"flat_settings"=>{"type"=>"boolean", "description"=>"Return settings in flat format (default: false)"}, "timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout"}}} request(api_name, api_spec, params) end # nodes.reload_secure_settings # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/secure-settings.html#reloadable-secure-settings", "description"=>"Reloads secure settings."} def nodes_reload_secure_settings(params = {}) api_name = 'nodes.reload_secure_settings' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/secure-settings.html#reloadable-secure-settings", "description"=>"Reloads secure settings."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_nodes/reload_secure_settings", "methods"=>["POST"]}, {"path"=>"/_nodes/{node_id}/reload_secure_settings", "methods"=>["POST"], "parts"=>{"node_id"=>{"type"=>"list", "description"=>"A comma-separated list of node IDs to span the reload/reinit call. Should stay empty because reloading usually involves all cluster nodes."}}}]}, "params"=>{"timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout"}}, "body"=>{"description"=>"An object containing the password for the elasticsearch keystore", "required"=>false}} request(api_name, api_spec, params) end # nodes.stats # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/cluster-nodes-stats.html", "description"=>"Returns statistical information about nodes in the cluster."} def nodes_stats(params = {}) api_name = 'nodes.stats' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/cluster-nodes-stats.html", "description"=>"Returns statistical information about nodes in the cluster."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_nodes/stats", "methods"=>["GET"]}, {"path"=>"/_nodes/{node_id}/stats", "methods"=>["GET"], "parts"=>{"node_id"=>{"type"=>"list", "description"=>"A comma-separated list of node IDs or names to limit the returned information; use `_local` to return information from the node you're connecting to, leave empty to get information from all nodes"}}}, {"path"=>"/_nodes/stats/{metric}", "methods"=>["GET"], "parts"=>{"metric"=>{"type"=>"list", "options"=>["_all", "breaker", "fs", "http", "indices", "jvm", "os", "process", "thread_pool", "transport", "discovery"], "description"=>"Limit the information returned to the specified metrics"}}}, {"path"=>"/_nodes/{node_id}/stats/{metric}", "methods"=>["GET"], "parts"=>{"metric"=>{"type"=>"list", "options"=>["_all", "breaker", "fs", "http", "indices", "jvm", "os", "process", "thread_pool", "transport", "discovery"], "description"=>"Limit the information returned to the specified metrics"}, "node_id"=>{"type"=>"list", "description"=>"A comma-separated list of node IDs or names to limit the returned information; use `_local` to return information from the node you're connecting to, leave empty to get information from all nodes"}}}, {"path"=>"/_nodes/stats/{metric}/{index_metric}", "methods"=>["GET"], "parts"=>{"metric"=>{"type"=>"list", "options"=>["_all", "breaker", "fs", "http", "indices", "jvm", "os", "process", "thread_pool", "transport", "discovery"], "description"=>"Limit the information returned to the specified metrics"}, "index_metric"=>{"type"=>"list", "options"=>["_all", "completion", "docs", "fielddata", "query_cache", "flush", "get", "indexing", "merge", "request_cache", "refresh", "search", "segments", "store", "warmer", "suggest"], "description"=>"Limit the information returned for `indices` metric to the specific index metrics. Isn't used if `indices` (or `all`) metric isn't specified."}}}, {"path"=>"/_nodes/{node_id}/stats/{metric}/{index_metric}", "methods"=>["GET"], "parts"=>{"metric"=>{"type"=>"list", "options"=>["_all", "breaker", "fs", "http", "indices", "jvm", "os", "process", "thread_pool", "transport", "discovery"], "description"=>"Limit the information returned to the specified metrics"}, "index_metric"=>{"type"=>"list", "options"=>["_all", "completion", "docs", "fielddata", "query_cache", "flush", "get", "indexing", "merge", "request_cache", "refresh", "search", "segments", "store", "warmer", "suggest"], "description"=>"Limit the information returned for `indices` metric to the specific index metrics. Isn't used if `indices` (or `all`) metric isn't specified."}, "node_id"=>{"type"=>"list", "description"=>"A comma-separated list of node IDs or names to limit the returned information; use `_local` to return information from the node you're connecting to, leave empty to get information from all nodes"}}}]}, "params"=>{"completion_fields"=>{"type"=>"list", "description"=>"A comma-separated list of fields for `fielddata` and `suggest` index metric (supports wildcards)"}, "fielddata_fields"=>{"type"=>"list", "description"=>"A comma-separated list of fields for `fielddata` index metric (supports wildcards)"}, "fields"=>{"type"=>"list", "description"=>"A comma-separated list of fields for `fielddata` and `completion` index metric (supports wildcards)"}, "groups"=>{"type"=>"boolean", "description"=>"A comma-separated list of search groups for `search` index metric"}, "level"=>{"type"=>"enum", "description"=>"Return indices stats aggregated at index, node or shard level", "options"=>["indices", "node", "shards"], "default"=>"node"}, "types"=>{"type"=>"list", "description"=>"A comma-separated list of document types for the `indexing` index metric"}, "timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout"}, "include_segment_file_sizes"=>{"type"=>"boolean", "description"=>"Whether to report the aggregated disk usage of each one of the Lucene index files (only applies if segment stats are requested)", "default"=>false}}} request(api_name, api_spec, params) end # nodes.usage # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/cluster-nodes-usage.html", "description"=>"Returns low-level information about REST actions usage on nodes."} def nodes_usage(params = {}) api_name = 'nodes.usage' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/cluster-nodes-usage.html", "description"=>"Returns low-level information about REST actions usage on nodes."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_nodes/usage", "methods"=>["GET"]}, {"path"=>"/_nodes/{node_id}/usage", "methods"=>["GET"], "parts"=>{"node_id"=>{"type"=>"list", "description"=>"A comma-separated list of node IDs or names to limit the returned information; use `_local` to return information from the node you're connecting to, leave empty to get information from all nodes"}}}, {"path"=>"/_nodes/usage/{metric}", "methods"=>["GET"], "parts"=>{"metric"=>{"type"=>"list", "options"=>["_all", "rest_actions"], "description"=>"Limit the information returned to the specified metrics"}}}, {"path"=>"/_nodes/{node_id}/usage/{metric}", "methods"=>["GET"], "parts"=>{"metric"=>{"type"=>"list", "options"=>["_all", "rest_actions"], "description"=>"Limit the information returned to the specified metrics"}, "node_id"=>{"type"=>"list", "description"=>"A comma-separated list of node IDs or names to limit the returned information; use `_local` to return information from the node you're connecting to, leave empty to get information from all nodes"}}}]}, "params"=>{"timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout"}}} request(api_name, api_spec, params) end # ping # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/current/index.html", "description"=>"Returns whether the cluster is running."} def ping(params = {}) api_name = 'ping' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/current/index.html", "description"=>"Returns whether the cluster is running."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/", "methods"=>["HEAD"]}]}, "params"=>{}} request(api_name, api_spec, params) end alias :ping? :ping # put_script # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/modules-scripting.html", "description"=>"Creates or updates a script."} def put_script(params = {}) api_name = 'put_script' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/modules-scripting.html", "description"=>"Creates or updates a script."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_scripts/{id}", "methods"=>["PUT", "POST"], "parts"=>{"id"=>{"type"=>"string", "description"=>"Script ID"}}}, {"path"=>"/_scripts/{id}/{context}", "methods"=>["PUT", "POST"], "parts"=>{"id"=>{"type"=>"string", "description"=>"Script ID"}, "context"=>{"type"=>"string", "description"=>"Script context"}}}]}, "params"=>{"timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout"}, "master_timeout"=>{"type"=>"time", "description"=>"Specify timeout for connection to master"}, "context"=>{"type"=>"string", "description"=>"Context name to compile script against"}}, "body"=>{"description"=>"The document", "required"=>true}} request(api_name, api_spec, params) end # rank_eval # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/search-rank-eval.html", "description"=>"Allows to evaluate the quality of ranked search results over a set of typical search queries"} def rank_eval(params = {}) api_name = 'rank_eval' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/search-rank-eval.html", "description"=>"Allows to evaluate the quality of ranked search results over a set of typical search queries"}, "stability"=>"experimental", "url"=>{"paths"=>[{"path"=>"/_rank_eval", "methods"=>["GET", "POST"]}, {"path"=>"/{index}/_rank_eval", "methods"=>["GET", "POST"], "parts"=>{"index"=>{"type"=>"list", "description"=>"A comma-separated list of index names to search; use `_all` or empty string to perform the operation on all indices"}}}]}, "params"=>{"ignore_unavailable"=>{"type"=>"boolean", "description"=>"Whether specified concrete indices should be ignored when unavailable (missing or closed)"}, "allow_no_indices"=>{"type"=>"boolean", "description"=>"Whether to ignore if a wildcard indices expression resolves into no concrete indices. (This includes `_all` string or when no indices have been specified)"}, "expand_wildcards"=>{"type"=>"enum", "options"=>["open", "closed", "hidden", "none", "all"], "default"=>"open", "description"=>"Whether to expand wildcard expression to concrete indices that are open, closed or both."}, "search_type"=>{"type"=>"enum", "options"=>["query_then_fetch", "dfs_query_then_fetch"], "description"=>"Search operation type"}}, "body"=>{"description"=>"The ranking evaluation search definition, including search requests, document ratings and ranking metric definition.", "required"=>true}} request(api_name, api_spec, params) end # reindex # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/docs-reindex.html", "description"=>"Allows to copy documents from one index to another, optionally filtering the source\ndocuments by a query, changing the destination index settings, or fetching the\ndocuments from a remote cluster."} def reindex(params = {}) api_name = 'reindex' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/docs-reindex.html", "description"=>"Allows to copy documents from one index to another, optionally filtering the source\ndocuments by a query, changing the destination index settings, or fetching the\ndocuments from a remote cluster."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_reindex", "methods"=>["POST"]}]}, "params"=>{"refresh"=>{"type"=>"boolean", "description"=>"Should the affected indexes be refreshed?"}, "timeout"=>{"type"=>"time", "default"=>"1m", "description"=>"Time each individual bulk request should wait for shards that are unavailable."}, "wait_for_active_shards"=>{"type"=>"string", "description"=>"Sets the number of shard copies that must be active before proceeding with the reindex operation. Defaults to 1, meaning the primary shard only. Set to `all` for all shard copies, otherwise set to any non-negative value less than or equal to the total number of copies for the shard (number of replicas + 1)"}, "wait_for_completion"=>{"type"=>"boolean", "default"=>true, "description"=>"Should the request should block until the reindex is complete."}, "requests_per_second"=>{"type"=>"number", "default"=>0, "description"=>"The throttle to set on this request in sub-requests per second. -1 means no throttle."}, "scroll"=>{"type"=>"time", "description"=>"Control how long to keep the search context alive", "default"=>"5m"}, "slices"=>{"type"=>"number|string", "default"=>1, "description"=>"The number of slices this task should be divided into. Defaults to 1, meaning the task isn't sliced into subtasks. Can be set to `auto`."}, "max_docs"=>{"type"=>"number", "description"=>"Maximum number of documents to process (default: all documents)"}}, "body"=>{"description"=>"The search definition using the Query DSL and the prototype for the index request.", "required"=>true}} request(api_name, api_spec, params) end # reindex_rethrottle # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/docs-reindex.html", "description"=>"Changes the number of requests per second for a particular Reindex operation."} def reindex_rethrottle(params = {}) api_name = 'reindex_rethrottle' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/docs-reindex.html", "description"=>"Changes the number of requests per second for a particular Reindex operation."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_reindex/{task_id}/_rethrottle", "methods"=>["POST"], "parts"=>{"task_id"=>{"type"=>"string", "description"=>"The task id to rethrottle"}}}]}, "params"=>{"requests_per_second"=>{"type"=>"number", "required"=>true, "description"=>"The throttle to set on this request in floating sub-requests per second. -1 means set no throttle."}}} request(api_name, api_spec, params) end # render_search_template # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/current/search-template.html#_validating_templates", "description"=>"Allows to use the Mustache language to pre-render a search definition."} def render_search_template(params = {}) api_name = 'render_search_template' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/current/search-template.html#_validating_templates", "description"=>"Allows to use the Mustache language to pre-render a search definition."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_render/template", "methods"=>["GET", "POST"]}, {"path"=>"/_render/template/{id}", "methods"=>["GET", "POST"], "parts"=>{"id"=>{"type"=>"string", "description"=>"The id of the stored search template"}}}]}, "body"=>{"description"=>"The search definition template and its params"}} request(api_name, api_spec, params) end # scripts_painless_execute # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/painless/master/painless-execute-api.html", "description"=>"Allows an arbitrary script to be executed and a result to be returned"} def scripts_painless_execute(params = {}) api_name = 'scripts_painless_execute' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/painless/master/painless-execute-api.html", "description"=>"Allows an arbitrary script to be executed and a result to be returned"}, "stability"=>"experimental", "url"=>{"paths"=>[{"path"=>"/_scripts/painless/_execute", "methods"=>["GET", "POST"]}]}, "params"=>{}, "body"=>{"description"=>"The script to execute"}} request(api_name, api_spec, params) end # scroll # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/search-request-body.html#request-body-search-scroll", "description"=>"Allows to retrieve a large numbers of results from a single search request."} def scroll(params = {}) api_name = 'scroll' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/search-request-body.html#request-body-search-scroll", "description"=>"Allows to retrieve a large numbers of results from a single search request."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_search/scroll", "methods"=>["GET", "POST"]}, {"path"=>"/_search/scroll/{scroll_id}", "methods"=>["GET", "POST"], "parts"=>{"scroll_id"=>{"type"=>"string", "description"=>"The scroll ID", "deprecated"=>true}}, "deprecated"=>{"version"=>"7.0.0", "description"=>"A scroll id can be quite large and should be specified as part of the body"}}]}, "params"=>{"scroll"=>{"type"=>"time", "description"=>"Specify how long a consistent view of the index should be maintained for scrolled search"}, "scroll_id"=>{"type"=>"string", "description"=>"The scroll ID for scrolled search"}, "rest_total_hits_as_int"=>{"type"=>"boolean", "description"=>"Indicates whether hits.total should be rendered as an integer or an object in the rest search response", "default"=>false}}, "body"=>{"description"=>"The scroll ID if not passed by URL or query parameter."}} request(api_name, api_spec, params) end # search # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/search-search.html", "description"=>"Returns results matching a query."} def search(params = {}) api_name = 'search' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/search-search.html", "description"=>"Returns results matching a query."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_search", "methods"=>["GET", "POST"]}, {"path"=>"/{index}/_search", "methods"=>["GET", "POST"], "parts"=>{"index"=>{"type"=>"list", "description"=>"A comma-separated list of index names to search; use `_all` or empty string to perform the operation on all indices"}}}, {"path"=>"/{index}/{type}/_search", "methods"=>["GET", "POST"], "parts"=>{"index"=>{"type"=>"list", "description"=>"A comma-separated list of index names to search; use `_all` or empty string to perform the operation on all indices"}, "type"=>{"type"=>"list", "description"=>"A comma-separated list of document types to search; leave empty to perform the operation on all types"}}, "deprecated"=>{"version"=>"7.0.0", "description"=>"Specifying types in urls has been deprecated"}}]}, "params"=>{"analyzer"=>{"type"=>"string", "description"=>"The analyzer to use for the query string"}, "analyze_wildcard"=>{"type"=>"boolean", "description"=>"Specify whether wildcard and prefix queries should be analyzed (default: false)"}, "ccs_minimize_roundtrips"=>{"type"=>"boolean", "description"=>"Indicates whether network round-trips should be minimized as part of cross-cluster search requests execution", "default"=>"true"}, "default_operator"=>{"type"=>"enum", "options"=>["AND", "OR"], "default"=>"OR", "description"=>"The default operator for query string query (AND or OR)"}, "df"=>{"type"=>"string", "description"=>"The field to use as default where no field prefix is given in the query string"}, "explain"=>{"type"=>"boolean", "description"=>"Specify whether to return detailed information about score computation as part of a hit"}, "stored_fields"=>{"type"=>"list", "description"=>"A comma-separated list of stored fields to return as part of a hit"}, "docvalue_fields"=>{"type"=>"list", "description"=>"A comma-separated list of fields to return as the docvalue representation of a field for each hit"}, "from"=>{"type"=>"number", "description"=>"Starting offset (default: 0)"}, "ignore_unavailable"=>{"type"=>"boolean", "description"=>"Whether specified concrete indices should be ignored when unavailable (missing or closed)"}, "ignore_throttled"=>{"type"=>"boolean", "description"=>"Whether specified concrete, expanded or aliased indices should be ignored when throttled"}, "allow_no_indices"=>{"type"=>"boolean", "description"=>"Whether to ignore if a wildcard indices expression resolves into no concrete indices. (This includes `_all` string or when no indices have been specified)"}, "expand_wildcards"=>{"type"=>"enum", "options"=>["open", "closed", "hidden", "none", "all"], "default"=>"open", "description"=>"Whether to expand wildcard expression to concrete indices that are open, closed or both."}, "lenient"=>{"type"=>"boolean", "description"=>"Specify whether format-based query failures (such as providing text to a numeric field) should be ignored"}, "preference"=>{"type"=>"string", "description"=>"Specify the node or shard the operation should be performed on (default: random)"}, "q"=>{"type"=>"string", "description"=>"Query in the Lucene query string syntax"}, "routing"=>{"type"=>"list", "description"=>"A comma-separated list of specific routing values"}, "scroll"=>{"type"=>"time", "description"=>"Specify how long a consistent view of the index should be maintained for scrolled search"}, "search_type"=>{"type"=>"enum", "options"=>["query_then_fetch", "dfs_query_then_fetch"], "description"=>"Search operation type"}, "size"=>{"type"=>"number", "description"=>"Number of hits to return (default: 10)"}, "sort"=>{"type"=>"list", "description"=>"A comma-separated list of : pairs"}, "_source"=>{"type"=>"list", "description"=>"True or false to return the _source field or not, or a list of fields to return"}, "_source_excludes"=>{"type"=>"list", "description"=>"A list of fields to exclude from the returned _source field"}, "_source_includes"=>{"type"=>"list", "description"=>"A list of fields to extract and return from the _source field"}, "terminate_after"=>{"type"=>"number", "description"=>"The maximum number of documents to collect for each shard, upon reaching which the query execution will terminate early."}, "stats"=>{"type"=>"list", "description"=>"Specific 'tag' of the request for logging and statistical purposes"}, "suggest_field"=>{"type"=>"string", "description"=>"Specify which field to use for suggestions"}, "suggest_mode"=>{"type"=>"enum", "options"=>["missing", "popular", "always"], "default"=>"missing", "description"=>"Specify suggest mode"}, "suggest_size"=>{"type"=>"number", "description"=>"How many suggestions to return in response"}, "suggest_text"=>{"type"=>"string", "description"=>"The source text for which the suggestions should be returned"}, "timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout"}, "track_scores"=>{"type"=>"boolean", "description"=>"Whether to calculate and return scores even if they are not used for sorting"}, "track_total_hits"=>{"type"=>"boolean", "description"=>"Indicate if the number of documents that match the query should be tracked"}, "allow_partial_search_results"=>{"type"=>"boolean", "default"=>true, "description"=>"Indicate if an error should be returned if there is a partial search failure or timeout"}, "typed_keys"=>{"type"=>"boolean", "description"=>"Specify whether aggregation and suggester names should be prefixed by their respective types in the response"}, "version"=>{"type"=>"boolean", "description"=>"Specify whether to return document version as part of a hit"}, "seq_no_primary_term"=>{"type"=>"boolean", "description"=>"Specify whether to return sequence number and primary term of the last modification of each hit"}, "request_cache"=>{"type"=>"boolean", "description"=>"Specify if request cache should be used for this request or not, defaults to index level setting"}, "batched_reduce_size"=>{"type"=>"number", "description"=>"The number of shard results that should be reduced at once on the coordinating node. This value should be used as a protection mechanism to reduce the memory overhead per search request if the potential number of shards in the request can be large.", "default"=>512}, "max_concurrent_shard_requests"=>{"type"=>"number", "description"=>"The number of concurrent shard requests per node this search executes concurrently. This value should be used to limit the impact of the search on the cluster in order to limit the number of concurrent shard requests", "default"=>5}, "pre_filter_shard_size"=>{"type"=>"number", "description"=>"A threshold that enforces a pre-filter roundtrip to prefilter search shards based on query rewriting if the number of shards the search request expands to exceeds the threshold. This filter roundtrip can limit the number of shards significantly if for instance a shard can not match any documents based on its rewrite method ie. if date filters are mandatory to match but the shard bounds and the query are disjoint."}, "rest_total_hits_as_int"=>{"type"=>"boolean", "description"=>"Indicates whether hits.total should be rendered as an integer or an object in the rest search response", "default"=>false}}, "body"=>{"description"=>"The search definition using the Query DSL"}} request(api_name, api_spec, params) end # search_shards # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/search-shards.html", "description"=>"Returns information about the indices and shards that a search request would be executed against."} def search_shards(params = {}) api_name = 'search_shards' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/search-shards.html", "description"=>"Returns information about the indices and shards that a search request would be executed against."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_search_shards", "methods"=>["GET", "POST"]}, {"path"=>"/{index}/_search_shards", "methods"=>["GET", "POST"], "parts"=>{"index"=>{"type"=>"list", "description"=>"A comma-separated list of index names to search; use `_all` or empty string to perform the operation on all indices"}}}]}, "params"=>{"preference"=>{"type"=>"string", "description"=>"Specify the node or shard the operation should be performed on (default: random)"}, "routing"=>{"type"=>"string", "description"=>"Specific routing value"}, "local"=>{"type"=>"boolean", "description"=>"Return local information, do not retrieve the state from master node (default: false)"}, "ignore_unavailable"=>{"type"=>"boolean", "description"=>"Whether specified concrete indices should be ignored when unavailable (missing or closed)"}, "allow_no_indices"=>{"type"=>"boolean", "description"=>"Whether to ignore if a wildcard indices expression resolves into no concrete indices. (This includes `_all` string or when no indices have been specified)"}, "expand_wildcards"=>{"type"=>"enum", "options"=>["open", "closed", "hidden", "none", "all"], "default"=>"open", "description"=>"Whether to expand wildcard expression to concrete indices that are open, closed or both."}}} request(api_name, api_spec, params) end # search_template # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/current/search-template.html", "description"=>"Allows to use the Mustache language to pre-render a search definition."} def search_template(params = {}) api_name = 'search_template' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/current/search-template.html", "description"=>"Allows to use the Mustache language to pre-render a search definition."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_search/template", "methods"=>["GET", "POST"]}, {"path"=>"/{index}/_search/template", "methods"=>["GET", "POST"], "parts"=>{"index"=>{"type"=>"list", "description"=>"A comma-separated list of index names to search; use `_all` or empty string to perform the operation on all indices"}}}, {"path"=>"/{index}/{type}/_search/template", "methods"=>["GET", "POST"], "parts"=>{"index"=>{"type"=>"list", "description"=>"A comma-separated list of index names to search; use `_all` or empty string to perform the operation on all indices"}, "type"=>{"type"=>"list", "description"=>"A comma-separated list of document types to search; leave empty to perform the operation on all types"}}, "deprecated"=>{"version"=>"7.0.0", "description"=>"Specifying types in urls has been deprecated"}}]}, "params"=>{"ignore_unavailable"=>{"type"=>"boolean", "description"=>"Whether specified concrete indices should be ignored when unavailable (missing or closed)"}, "ignore_throttled"=>{"type"=>"boolean", "description"=>"Whether specified concrete, expanded or aliased indices should be ignored when throttled"}, "allow_no_indices"=>{"type"=>"boolean", "description"=>"Whether to ignore if a wildcard indices expression resolves into no concrete indices. (This includes `_all` string or when no indices have been specified)"}, "expand_wildcards"=>{"type"=>"enum", "options"=>["open", "closed", "hidden", "none", "all"], "default"=>"open", "description"=>"Whether to expand wildcard expression to concrete indices that are open, closed or both."}, "preference"=>{"type"=>"string", "description"=>"Specify the node or shard the operation should be performed on (default: random)"}, "routing"=>{"type"=>"list", "description"=>"A comma-separated list of specific routing values"}, "scroll"=>{"type"=>"time", "description"=>"Specify how long a consistent view of the index should be maintained for scrolled search"}, "search_type"=>{"type"=>"enum", "options"=>["query_then_fetch", "query_and_fetch", "dfs_query_then_fetch", "dfs_query_and_fetch"], "description"=>"Search operation type"}, "explain"=>{"type"=>"boolean", "description"=>"Specify whether to return detailed information about score computation as part of a hit"}, "profile"=>{"type"=>"boolean", "description"=>"Specify whether to profile the query execution"}, "typed_keys"=>{"type"=>"boolean", "description"=>"Specify whether aggregation and suggester names should be prefixed by their respective types in the response"}, "rest_total_hits_as_int"=>{"type"=>"boolean", "description"=>"Indicates whether hits.total should be rendered as an integer or an object in the rest search response", "default"=>false}, "ccs_minimize_roundtrips"=>{"type"=>"boolean", "description"=>"Indicates whether network round-trips should be minimized as part of cross-cluster search requests execution", "default"=>"true"}}, "body"=>{"description"=>"The search definition template and its params", "required"=>true}} request(api_name, api_spec, params) end # snapshot.cleanup_repository # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/clean-up-snapshot-repo-api.html", "description"=>"Removes stale data from repository."} def snapshot_cleanup_repository(params = {}) api_name = 'snapshot.cleanup_repository' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/clean-up-snapshot-repo-api.html", "description"=>"Removes stale data from repository."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_snapshot/{repository}/_cleanup", "methods"=>["POST"], "parts"=>{"repository"=>{"type"=>"string", "description"=>"A repository name"}}}]}, "params"=>{"master_timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout for connection to master node"}, "timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout"}}} request(api_name, api_spec, params) end # snapshot.create # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/modules-snapshots.html", "description"=>"Creates a snapshot in a repository."} def snapshot_create(params = {}) api_name = 'snapshot.create' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/modules-snapshots.html", "description"=>"Creates a snapshot in a repository."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_snapshot/{repository}/{snapshot}", "methods"=>["PUT", "POST"], "parts"=>{"repository"=>{"type"=>"string", "description"=>"A repository name"}, "snapshot"=>{"type"=>"string", "description"=>"A snapshot name"}}}]}, "params"=>{"master_timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout for connection to master node"}, "wait_for_completion"=>{"type"=>"boolean", "description"=>"Should this request wait until the operation has completed before returning", "default"=>false}}, "body"=>{"description"=>"The snapshot definition", "required"=>false}} request(api_name, api_spec, params) end # snapshot.create_repository # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/modules-snapshots.html", "description"=>"Creates a repository."} def snapshot_create_repository(params = {}) api_name = 'snapshot.create_repository' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/modules-snapshots.html", "description"=>"Creates a repository."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_snapshot/{repository}", "methods"=>["PUT", "POST"], "parts"=>{"repository"=>{"type"=>"string", "description"=>"A repository name"}}}]}, "params"=>{"master_timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout for connection to master node"}, "timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout"}, "verify"=>{"type"=>"boolean", "description"=>"Whether to verify the repository after creation"}}, "body"=>{"description"=>"The repository definition", "required"=>true}} request(api_name, api_spec, params) end # snapshot.delete # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/modules-snapshots.html", "description"=>"Deletes a snapshot."} def snapshot_delete(params = {}) api_name = 'snapshot.delete' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/modules-snapshots.html", "description"=>"Deletes a snapshot."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_snapshot/{repository}/{snapshot}", "methods"=>["DELETE"], "parts"=>{"repository"=>{"type"=>"string", "description"=>"A repository name"}, "snapshot"=>{"type"=>"string", "description"=>"A snapshot name"}}}]}, "params"=>{"master_timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout for connection to master node"}}} request(api_name, api_spec, params) end # snapshot.delete_repository # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/modules-snapshots.html", "description"=>"Deletes a repository."} def snapshot_delete_repository(params = {}) api_name = 'snapshot.delete_repository' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/modules-snapshots.html", "description"=>"Deletes a repository."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_snapshot/{repository}", "methods"=>["DELETE"], "parts"=>{"repository"=>{"type"=>"list", "description"=>"Name of the snapshot repository to unregister. Wildcard (`*`) patterns are supported."}}}]}, "params"=>{"master_timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout for connection to master node"}, "timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout"}}} request(api_name, api_spec, params) end # snapshot.get # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/modules-snapshots.html", "description"=>"Returns information about a snapshot."} def snapshot_get(params = {}) api_name = 'snapshot.get' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/modules-snapshots.html", "description"=>"Returns information about a snapshot."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_snapshot/{repository}/{snapshot}", "methods"=>["GET"], "parts"=>{"repository"=>{"type"=>"string", "description"=>"A repository name"}, "snapshot"=>{"type"=>"list", "description"=>"A comma-separated list of snapshot names"}}}]}, "params"=>{"master_timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout for connection to master node"}, "ignore_unavailable"=>{"type"=>"boolean", "description"=>"Whether to ignore unavailable snapshots, defaults to false which means a SnapshotMissingException is thrown"}, "verbose"=>{"type"=>"boolean", "description"=>"Whether to show verbose snapshot info or only show the basic info found in the repository index blob"}}} request(api_name, api_spec, params) end # snapshot.get_repository # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/modules-snapshots.html", "description"=>"Returns information about a repository."} def snapshot_get_repository(params = {}) api_name = 'snapshot.get_repository' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/modules-snapshots.html", "description"=>"Returns information about a repository."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_snapshot", "methods"=>["GET"]}, {"path"=>"/_snapshot/{repository}", "methods"=>["GET"], "parts"=>{"repository"=>{"type"=>"list", "description"=>"A comma-separated list of repository names"}}}]}, "params"=>{"master_timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout for connection to master node"}, "local"=>{"type"=>"boolean", "description"=>"Return local information, do not retrieve the state from master node (default: false)"}}} request(api_name, api_spec, params) end # snapshot.restore # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/modules-snapshots.html", "description"=>"Restores a snapshot."} def snapshot_restore(params = {}) api_name = 'snapshot.restore' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/modules-snapshots.html", "description"=>"Restores a snapshot."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_snapshot/{repository}/{snapshot}/_restore", "methods"=>["POST"], "parts"=>{"repository"=>{"type"=>"string", "description"=>"A repository name"}, "snapshot"=>{"type"=>"string", "description"=>"A snapshot name"}}}]}, "params"=>{"master_timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout for connection to master node"}, "wait_for_completion"=>{"type"=>"boolean", "description"=>"Should this request wait until the operation has completed before returning", "default"=>false}}, "body"=>{"description"=>"Details of what to restore", "required"=>false}} request(api_name, api_spec, params) end # snapshot.status # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/modules-snapshots.html", "description"=>"Returns information about the status of a snapshot."} def snapshot_status(params = {}) api_name = 'snapshot.status' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/modules-snapshots.html", "description"=>"Returns information about the status of a snapshot."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_snapshot/_status", "methods"=>["GET"]}, {"path"=>"/_snapshot/{repository}/_status", "methods"=>["GET"], "parts"=>{"repository"=>{"type"=>"string", "description"=>"A repository name"}}}, {"path"=>"/_snapshot/{repository}/{snapshot}/_status", "methods"=>["GET"], "parts"=>{"repository"=>{"type"=>"string", "description"=>"A repository name"}, "snapshot"=>{"type"=>"list", "description"=>"A comma-separated list of snapshot names"}}}]}, "params"=>{"master_timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout for connection to master node"}, "ignore_unavailable"=>{"type"=>"boolean", "description"=>"Whether to ignore unavailable snapshots, defaults to false which means a SnapshotMissingException is thrown"}}} request(api_name, api_spec, params) end # snapshot.verify_repository # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/modules-snapshots.html", "description"=>"Verifies a repository."} def snapshot_verify_repository(params = {}) api_name = 'snapshot.verify_repository' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/modules-snapshots.html", "description"=>"Verifies a repository."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_snapshot/{repository}/_verify", "methods"=>["POST"], "parts"=>{"repository"=>{"type"=>"string", "description"=>"A repository name"}}}]}, "params"=>{"master_timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout for connection to master node"}, "timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout"}}} request(api_name, api_spec, params) end # tasks.cancel # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/tasks.html", "description"=>"Cancels a task, if it can be cancelled through an API."} def tasks_cancel(params = {}) api_name = 'tasks.cancel' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/tasks.html", "description"=>"Cancels a task, if it can be cancelled through an API."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_tasks/_cancel", "methods"=>["POST"]}, {"path"=>"/_tasks/{task_id}/_cancel", "methods"=>["POST"], "parts"=>{"task_id"=>{"type"=>"string", "description"=>"Cancel the task with specified task id (node_id:task_number)"}}}]}, "params"=>{"nodes"=>{"type"=>"list", "description"=>"A comma-separated list of node IDs or names to limit the returned information; use `_local` to return information from the node you're connecting to, leave empty to get information from all nodes"}, "actions"=>{"type"=>"list", "description"=>"A comma-separated list of actions that should be cancelled. Leave empty to cancel all."}, "parent_task_id"=>{"type"=>"string", "description"=>"Cancel tasks with specified parent task id (node_id:task_number). Set to -1 to cancel all."}, "wait_for_completion"=>{"type"=>"boolean", "description"=>"Should the request block until the cancellation of the task and its descendant tasks is completed. Defaults to false"}}} request(api_name, api_spec, params) end # tasks.get # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/tasks.html", "description"=>"Returns information about a task."} def tasks_get(params = {}) api_name = 'tasks.get' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/tasks.html", "description"=>"Returns information about a task."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_tasks/{task_id}", "methods"=>["GET"], "parts"=>{"task_id"=>{"type"=>"string", "description"=>"Return the task with specified id (node_id:task_number)"}}}]}, "params"=>{"wait_for_completion"=>{"type"=>"boolean", "description"=>"Wait for the matching tasks to complete (default: false)"}, "timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout"}}} request(api_name, api_spec, params) end # tasks.list # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/tasks.html", "description"=>"Returns a list of tasks."} def tasks_list(params = {}) api_name = 'tasks.list' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/tasks.html", "description"=>"Returns a list of tasks."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_tasks", "methods"=>["GET"]}]}, "params"=>{"nodes"=>{"type"=>"list", "description"=>"A comma-separated list of node IDs or names to limit the returned information; use `_local` to return information from the node you're connecting to, leave empty to get information from all nodes"}, "actions"=>{"type"=>"list", "description"=>"A comma-separated list of actions that should be returned. Leave empty to return all."}, "detailed"=>{"type"=>"boolean", "description"=>"Return detailed task information (default: false)"}, "parent_task_id"=>{"type"=>"string", "description"=>"Return tasks with specified parent task id (node_id:task_number). Set to -1 to return all."}, "wait_for_completion"=>{"type"=>"boolean", "description"=>"Wait for the matching tasks to complete (default: false)"}, "group_by"=>{"type"=>"enum", "description"=>"Group tasks by nodes or parent/child relationships", "options"=>["nodes", "parents", "none"], "default"=>"nodes"}, "timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout"}}} request(api_name, api_spec, params) end # termvectors # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/docs-termvectors.html", "description"=>"Returns information and statistics about terms in the fields of a particular document."} def termvectors(params = {}) api_name = 'termvectors' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/docs-termvectors.html", "description"=>"Returns information and statistics about terms in the fields of a particular document."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/{index}/_termvectors/{id}", "methods"=>["GET", "POST"], "parts"=>{"index"=>{"type"=>"string", "description"=>"The index in which the document resides."}, "id"=>{"type"=>"string", "description"=>"The id of the document, when not specified a doc param should be supplied."}}}, {"path"=>"/{index}/_termvectors", "methods"=>["GET", "POST"], "parts"=>{"index"=>{"type"=>"string", "description"=>"The index in which the document resides."}}}, {"path"=>"/{index}/{type}/{id}/_termvectors", "methods"=>["GET", "POST"], "parts"=>{"index"=>{"type"=>"string", "description"=>"The index in which the document resides.", "required"=>true}, "type"=>{"type"=>"string", "description"=>"The type of the document.", "required"=>false}, "id"=>{"type"=>"string", "description"=>"The id of the document, when not specified a doc param should be supplied."}}, "deprecated"=>{"version"=>"7.0.0", "description"=>"Specifying types in urls has been deprecated"}}, {"path"=>"/{index}/{type}/_termvectors", "methods"=>["GET", "POST"], "parts"=>{"index"=>{"type"=>"string", "description"=>"The index in which the document resides.", "required"=>true}, "type"=>{"type"=>"string", "description"=>"The type of the document.", "required"=>false}}, "deprecated"=>{"version"=>"7.0.0", "description"=>"Specifying types in urls has been deprecated"}}]}, "params"=>{"term_statistics"=>{"type"=>"boolean", "description"=>"Specifies if total term frequency and document frequency should be returned.", "default"=>false}, "field_statistics"=>{"type"=>"boolean", "description"=>"Specifies if document count, sum of document frequencies and sum of total term frequencies should be returned.", "default"=>true}, "fields"=>{"type"=>"list", "description"=>"A comma-separated list of fields to return."}, "offsets"=>{"type"=>"boolean", "description"=>"Specifies if term offsets should be returned.", "default"=>true}, "positions"=>{"type"=>"boolean", "description"=>"Specifies if term positions should be returned.", "default"=>true}, "payloads"=>{"type"=>"boolean", "description"=>"Specifies if term payloads should be returned.", "default"=>true}, "preference"=>{"type"=>"string", "description"=>"Specify the node or shard the operation should be performed on (default: random)."}, "routing"=>{"type"=>"string", "description"=>"Specific routing value."}, "realtime"=>{"type"=>"boolean", "description"=>"Specifies if request is real-time as opposed to near-real-time (default: true)."}, "version"=>{"type"=>"number", "description"=>"Explicit version number for concurrency control"}, "version_type"=>{"type"=>"enum", "options"=>["internal", "external", "external_gte", "force"], "description"=>"Specific version type"}}, "body"=>{"description"=>"Define parameters and or supply a document to get termvectors for. See documentation.", "required"=>false}} request(api_name, api_spec, params) end # update # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/docs-update.html", "description"=>"Updates a document with a script or partial document."} def update(params = {}) api_name = 'update' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/docs-update.html", "description"=>"Updates a document with a script or partial document."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/{index}/_update/{id}", "methods"=>["POST"], "parts"=>{"id"=>{"type"=>"string", "description"=>"Document ID"}, "index"=>{"type"=>"string", "description"=>"The name of the index"}}}, {"path"=>"/{index}/{type}/{id}/_update", "methods"=>["POST"], "parts"=>{"id"=>{"type"=>"string", "description"=>"Document ID"}, "index"=>{"type"=>"string", "description"=>"The name of the index"}, "type"=>{"type"=>"string", "description"=>"The type of the document", "deprecated"=>true}}, "deprecated"=>{"version"=>"7.0.0", "description"=>"Specifying types in urls has been deprecated"}}]}, "params"=>{"wait_for_active_shards"=>{"type"=>"string", "description"=>"Sets the number of shard copies that must be active before proceeding with the update operation. Defaults to 1, meaning the primary shard only. Set to `all` for all shard copies, otherwise set to any non-negative value less than or equal to the total number of copies for the shard (number of replicas + 1)"}, "_source"=>{"type"=>"list", "description"=>"True or false to return the _source field or not, or a list of fields to return"}, "_source_excludes"=>{"type"=>"list", "description"=>"A list of fields to exclude from the returned _source field"}, "_source_includes"=>{"type"=>"list", "description"=>"A list of fields to extract and return from the _source field"}, "lang"=>{"type"=>"string", "description"=>"The script language (default: painless)"}, "refresh"=>{"type"=>"enum", "options"=>["true", "false", "wait_for"], "description"=>"If `true` then refresh the affected shards to make this operation visible to search, if `wait_for` then wait for a refresh to make this operation visible to search, if `false` (the default) then do nothing with refreshes."}, "retry_on_conflict"=>{"type"=>"number", "description"=>"Specify how many times should the operation be retried when a conflict occurs (default: 0)"}, "routing"=>{"type"=>"string", "description"=>"Specific routing value"}, "timeout"=>{"type"=>"time", "description"=>"Explicit operation timeout"}, "if_seq_no"=>{"type"=>"number", "description"=>"only perform the update operation if the last operation that has changed the document has the specified sequence number"}, "if_primary_term"=>{"type"=>"number", "description"=>"only perform the update operation if the last operation that has changed the document has the specified primary term"}}, "body"=>{"description"=>"The request definition requires either `script` or partial `doc`", "required"=>true}} request(api_name, api_spec, params) end # update_by_query # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/docs-update-by-query.html", "description"=>"Performs an update on every document in the index without changing the source,\nfor example to pick up a mapping change."} def update_by_query(params = {}) api_name = 'update_by_query' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/master/docs-update-by-query.html", "description"=>"Performs an update on every document in the index without changing the source,\nfor example to pick up a mapping change."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/{index}/_update_by_query", "methods"=>["POST"], "parts"=>{"index"=>{"type"=>"list", "description"=>"A comma-separated list of index names to search; use `_all` or empty string to perform the operation on all indices"}}}, {"path"=>"/{index}/{type}/_update_by_query", "methods"=>["POST"], "parts"=>{"index"=>{"required"=>true, "type"=>"list", "description"=>"A comma-separated list of index names to search; use `_all` or empty string to perform the operation on all indices"}, "type"=>{"type"=>"list", "description"=>"A comma-separated list of document types to search; leave empty to perform the operation on all types"}}, "deprecated"=>{"version"=>"7.0.0", "description"=>"Specifying types in urls has been deprecated"}}]}, "params"=>{"analyzer"=>{"type"=>"string", "description"=>"The analyzer to use for the query string"}, "analyze_wildcard"=>{"type"=>"boolean", "description"=>"Specify whether wildcard and prefix queries should be analyzed (default: false)"}, "default_operator"=>{"type"=>"enum", "options"=>["AND", "OR"], "default"=>"OR", "description"=>"The default operator for query string query (AND or OR)"}, "df"=>{"type"=>"string", "description"=>"The field to use as default where no field prefix is given in the query string"}, "from"=>{"type"=>"number", "description"=>"Starting offset (default: 0)"}, "ignore_unavailable"=>{"type"=>"boolean", "description"=>"Whether specified concrete indices should be ignored when unavailable (missing or closed)"}, "allow_no_indices"=>{"type"=>"boolean", "description"=>"Whether to ignore if a wildcard indices expression resolves into no concrete indices. (This includes `_all` string or when no indices have been specified)"}, "conflicts"=>{"type"=>"enum", "options"=>["abort", "proceed"], "default"=>"abort", "description"=>"What to do when the update by query hits version conflicts?"}, "expand_wildcards"=>{"type"=>"enum", "options"=>["open", "closed", "hidden", "none", "all"], "default"=>"open", "description"=>"Whether to expand wildcard expression to concrete indices that are open, closed or both."}, "lenient"=>{"type"=>"boolean", "description"=>"Specify whether format-based query failures (such as providing text to a numeric field) should be ignored"}, "pipeline"=>{"type"=>"string", "description"=>"Ingest pipeline to set on index requests made by this action. (default: none)"}, "preference"=>{"type"=>"string", "description"=>"Specify the node or shard the operation should be performed on (default: random)"}, "q"=>{"type"=>"string", "description"=>"Query in the Lucene query string syntax"}, "routing"=>{"type"=>"list", "description"=>"A comma-separated list of specific routing values"}, "scroll"=>{"type"=>"time", "description"=>"Specify how long a consistent view of the index should be maintained for scrolled search"}, "search_type"=>{"type"=>"enum", "options"=>["query_then_fetch", "dfs_query_then_fetch"], "description"=>"Search operation type"}, "search_timeout"=>{"type"=>"time", "description"=>"Explicit timeout for each search request. Defaults to no timeout."}, "size"=>{"type"=>"number", "description"=>"Deprecated, please use `max_docs` instead"}, "max_docs"=>{"type"=>"number", "description"=>"Maximum number of documents to process (default: all documents)"}, "sort"=>{"type"=>"list", "description"=>"A comma-separated list of : pairs"}, "_source"=>{"type"=>"list", "description"=>"True or false to return the _source field or not, or a list of fields to return"}, "_source_excludes"=>{"type"=>"list", "description"=>"A list of fields to exclude from the returned _source field"}, "_source_includes"=>{"type"=>"list", "description"=>"A list of fields to extract and return from the _source field"}, "terminate_after"=>{"type"=>"number", "description"=>"The maximum number of documents to collect for each shard, upon reaching which the query execution will terminate early."}, "stats"=>{"type"=>"list", "description"=>"Specific 'tag' of the request for logging and statistical purposes"}, "version"=>{"type"=>"boolean", "description"=>"Specify whether to return document version as part of a hit"}, "version_type"=>{"type"=>"boolean", "description"=>"Should the document increment the version number (internal) on hit or not (reindex)"}, "request_cache"=>{"type"=>"boolean", "description"=>"Specify if request cache should be used for this request or not, defaults to index level setting"}, "refresh"=>{"type"=>"boolean", "description"=>"Should the affected indexes be refreshed?"}, "timeout"=>{"type"=>"time", "default"=>"1m", "description"=>"Time each individual bulk request should wait for shards that are unavailable."}, "wait_for_active_shards"=>{"type"=>"string", "description"=>"Sets the number of shard copies that must be active before proceeding with the update by query operation. Defaults to 1, meaning the primary shard only. Set to `all` for all shard copies, otherwise set to any non-negative value less than or equal to the total number of copies for the shard (number of replicas + 1)"}, "scroll_size"=>{"type"=>"number", "default"=>100, "description"=>"Size on the scroll request powering the update by query"}, "wait_for_completion"=>{"type"=>"boolean", "default"=>true, "description"=>"Should the request should block until the update by query operation is complete."}, "requests_per_second"=>{"type"=>"number", "default"=>0, "description"=>"The throttle to set on this request in sub-requests per second. -1 means no throttle."}, "slices"=>{"type"=>"number|string", "default"=>1, "description"=>"The number of slices this task should be divided into. Defaults to 1, meaning the task isn't sliced into subtasks. Can be set to `auto`."}}, "body"=>{"description"=>"The search definition using the Query DSL"}} request(api_name, api_spec, params) end # update_by_query_rethrottle # {"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/current/docs-update-by-query.html", "description"=>"Changes the number of requests per second for a particular Update By Query operation."} def update_by_query_rethrottle(params = {}) api_name = 'update_by_query_rethrottle' api_spec = @api_specs[api_name] ||= {"documentation"=>{"url"=>"https://www.elastic.co/guide/en/elasticsearch/reference/current/docs-update-by-query.html", "description"=>"Changes the number of requests per second for a particular Update By Query operation."}, "stability"=>"stable", "url"=>{"paths"=>[{"path"=>"/_update_by_query/{task_id}/_rethrottle", "methods"=>["POST"], "parts"=>{"task_id"=>{"type"=>"string", "description"=>"The task id to rethrottle"}}}]}, "params"=>{"requests_per_second"=>{"type"=>"number", "required"=>true, "description"=>"The throttle to set on this request in floating sub-requests per second. -1 means set no throttle."}}} request(api_name, api_spec, params) end end end end