[[transport-reference]] == Transport === request(params, [callback]) ==== Params [horizontal] `method`:: `String` -- The HTTP method to use for this request. All of the API methods have their own default. `path`:: `String` -- The path/endpoint for the request `query`:: `String|Object` -- The query string params `body`:: `String|Object|Array` -- The request body to be sent to elasticsearch `requestTimeout`:: `Number` -- The number of milliseconds before this request should "timeout" `headers`:: `Object` -- An object of string keys and values to use as the headers for this request. `ignore`:: `Number, Number[]` -- HTTP status codes which should not be treated as errors `requestTimeout`:: `Number` -- Milliseconds this request has to complete. The default can be set using the client's `requestTimeout:` config parameter. `castExists`:: `Boolean` -- This is used by methods like `indices.exists()` to provide a `true`/`false` return value based on the status of the response. When set to `true` 200 responses are converted to `true`, and 404s to `false`. Any other error will still be passed through to the response handler but all other response data is discarded. `bulkBody`:: `Boolean` -- Set to `true` if the body should be formatted using the newline delimited JSON format used by the `bulk` API. === setHosts(hostConfigs) Use this method to dynamically change the list or hosts the client uses. ==== args [horizontal] `hostConfigs`:: `Array` -- any valid host config value, as accepted by the client constructor. Each value can be either a url string, an object describing the values detailed in the host[host] docs, or an instance of the `Host` class.