Stop datafeeds APIedit

Stops one or more datafeeds.

A datafeed that is stopped ceases to retrieve data from Elasticsearch. A datafeed can be started and stopped multiple times throughout its lifecycle.


POST _xpack/ml/datafeeds/<feed_id>/_stop

POST _xpack/ml/datafeeds/<feed_id>,<feed_id>/_stop

POST _xpack/ml/datafeeds/_all/_stop


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 <feed_id>.

Path Parametersedit

(string) Identifier for the datafeed. It can be a datafeed identifier or a wildcard expression.

Query parametersedit


(Optional, 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.

The default value is true, which returns an empty datafeeds array when there are no matches and the subset of results when there are partial matches. If this parameter is false, the request returns a 404 status code when there are no matches or only partial matches.

Request Bodyedit

(boolean) If true, the datafeed is stopped forcefully.
(time) Controls the amount of time to wait until a datafeed stops. The default value is 20 seconds.

Response codesedit

404 (Missing resources)
If allow_no_datafeeds is false, this code indicates that there are no resources that match the request or only partial matches for the request.


You must have manage_ml, or manage cluster privileges to use this API. For more information, see Security privileges.


The following example stops the datafeed-total-requests datafeed:

POST _xpack/ml/datafeeds/datafeed-total-requests/_stop
  "timeout": "30s"

When the datafeed stops, you receive the following results:

  "stopped": true