123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101 |
- [[api-conventions]]
- = API Conventions
- [partintro]
- --
- The *elasticsearch* REST APIs are exposed using:
- * <<modules-http,JSON over HTTP>>,
- * <<modules-thrift,thrift>>,
- * <<modules-memcached,memcached>>.
- The conventions listed in this chapter can be applied throughout the REST
- API, unless otherwise specified.
- * <<multi-index>>
- * <<common-options>>
- --
- [[multi-index]]
- == Multiple Indices
- Most APIs that refer to an `index` paramter 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: `+test*,-test3`.
- 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: Single index APIs such as the <<docs>> and the
- <<indices-aliases,single-index `alias` APIs>> do not support multiple indices.
- [[common-options]]
- == Common options
- The following options can be applied to all of the REST APIs.
- [float]
- === Pretty Results
- When appending `?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.
- [float]
- === Human readable output
- Statistics are returned in a format suitable for humans
- (eg `"exists_time": "1h"` or `"size": "1kb"`) and for computers
- (eg `"exists_time_in_millis": 3600000`` or `"size_in_bytes": 1024`).
- The human readable values can be turned off by adding `?human=false`
- to the query string. This makes sense when the stats results are
- being consumed by a monitoring tool, rather than intended for human
- consumption. The default for the `human` flag is
- `false`. added[1.00.Beta,Previously defaulted to `true`]
- [float]
- === Parameters
- Rest parameters (when using HTTP, map to HTTP URL parameters) follow the
- convention of using underscore casing.
- [float]
- === Boolean Values
- All REST APIs parameters (both request parameters and JSON body) support
- providing boolean "false" as the values: `false`, `0`, `no` and `off`.
- All other values are considered "true". Note, this is not related to
- fields within a document indexed treated as boolean fields.
- [float]
- === Number Values
- All REST APIs support providing numbered parameters as `string` on top
- of supporting the native JSON number types.
- [float]
- === Result Casing
- 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.
- [float]
- === JSONP
- All REST APIs accept a `callback` parameter resulting in a
- http://en.wikipedia.org/wiki/JSONP[JSONP] result.
- [float]
- === 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.
|