Most cluster level APIs allow to specify which nodes to execute on (for example, getting the node stats for a node). Nodes can be identified in the APIs either using their internal node id, the node name, address, custom attributes, or just the
_local node receiving the request. For example, here are some sample executions of nodes info:
# Local curl localhost:9200/_cluster/nodes/_local # Address curl localhost:9200/_cluster/nodes/10.0.0.3,10.0.0.4 curl localhost:9200/_cluster/nodes/10.0.0.* # Names curl localhost:9200/_cluster/nodes/node_name_goes_here curl localhost:9200/_cluster/nodes/node_name_goes_* # Attributes (set something like node.rack: 2 in the config) curl localhost:9200/_cluster/nodes/rack:2 curl localhost:9200/_cluster/nodes/ra*:2 curl localhost:9200/_cluster/nodes/ra*:2*
Many APIs support execution across multiple indices, using simple
test1,test2,test3 notation (or
_all for all indices). It also support wildcards, for example:
test*, and the ability to “add” (
+) and “remove” (
-), for example:
All multi indices API support the
ignore_indices option. Setting it to
missing will cause indices that do not exists to be ignored from the execution. By default, when its not set, the request will fail. Note, this feature is available since 0.20 vesrion.
?pretty=true to any request made, the JSON returned will be pretty formatted (use it for debugging only!. Another option is to set
format=yaml which will cause the result to be returned in the (sometimes) more readable yaml format.
Rest parameters (when using HTTP, map to HTTP URL parameters) follow the convention of using underscore casing.
All REST APIs parameters (both request parameters and JSON body) support providing boolean “false” as the values:
off. All other values are considered “true”. Note, this is not related to fields within a document indexed treated as boolean fields.
All REST APIs support providing numbered parameters as
string on top of supporting the native JSON number types.
All REST APIs accept the
case parameter. When set to
camelCase, all field names in the result will be returned in camel casing, otherwise, underscore casing will be used. Note, this does not apply to the source document indexed.
All REST APIs accept a
callback parameter resulting in a JSONP result.
Request body in query string
For libraries that don’t accept a request body for non-POST requests, you can pass the request body as the
source query string parameter instead.