Stop datafeeds
Generally available; Added in 5.4.0
A datafeed that is stopped ceases to retrieve data from Elasticsearch. A datafeed can be started and stopped multiple times throughout its lifecycle.
Required authorization
- Cluster privileges:
manage_ml
Path parameters
-
datafeed_id
string Required Identifier for the datafeed. You can stop multiple datafeeds in a single API request by using a comma-separated list of datafeeds or a wildcard expression. You can close all datafeeds by using
_all
or by specifying*
as the identifier.
Query parameters
-
allow_no_match
boolean Specifies what to do when the request:
- Contains wildcard expressions and there are no datafeeds that match.
- Contains the
_all
string or no identifiers and there are no matches. - Contains wildcard expressions and there are only partial matches.
If
true
, the API returns an empty datafeeds array when there are no matches and the subset of results when there are partial matches. Iffalse
, the API returns a 404 status code when there are no matches or only partial matches. -
force
boolean If
true
, the datafeed is stopped forcefully. -
timeout
string Specifies the amount of time to wait until a datafeed stops.
Values are
-1
or0
.
Body
-
allow_no_match
boolean Refer to the description for the
allow_no_match
query parameter. -
force
boolean Refer to the description for the
force
query parameter. -
timeout
string A duration. Units can be
nanos
,micros
,ms
(milliseconds),s
(seconds),m
(minutes),h
(hours) andd
(days). Also accepts "0" without a unit and "-1" to indicate an unspecified value.
POST _ml/datafeeds/datafeed-low_request_rate/_stop
{
"timeout": "30s"
}
resp = client.ml.stop_datafeed(
datafeed_id="datafeed-low_request_rate",
timeout="30s",
)
const response = await client.ml.stopDatafeed({
datafeed_id: "datafeed-low_request_rate",
timeout: "30s",
});
response = client.ml.stop_datafeed(
datafeed_id: "datafeed-low_request_rate",
body: {
"timeout": "30s"
}
)
$resp = $client->ml()->stopDatafeed([
"datafeed_id" => "datafeed-low_request_rate",
"body" => [
"timeout" => "30s",
],
]);
curl -X POST -H "Authorization: ApiKey $ELASTIC_API_KEY" -H "Content-Type: application/json" -d '{"timeout":"30s"}' "$ELASTICSEARCH_URL/_ml/datafeeds/datafeed-low_request_rate/_stop"
{
"timeout": "30s"
}