[role="xpack"]
[[ml-stop-datafeed]]
=== Stop {dfeeds-cap} API
++++
<titleabbrev>Stop {dfeeds-cap}</titleabbrev>
++++

This API enables you to stop one or more {dfeeds}.

A {dfeed} that is stopped ceases to retrieve data from {es}.
A {dfeed} can be started and stopped multiple times throughout its lifecycle.

==== Request

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

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

`POST _xpack/ml/datafeeds/_all/_stop`

//TBD: Can there be spaces between the items in the list?

===== Description

You can stop multiple {dfeeds} in a single API request by using a
comma-separated list of {dfeeds} or a wildcard expression. You can close all
{dfeeds} by using `_all` or by specifying `*` as the `<feed_id>`.


==== Path Parameters

`feed_id`::
  (string) Identifier for the {dfeed}. It can be a {dfeed} identifier or a
  wildcard expression.


==== Request Body

`force`::
  (boolean) If true, the {dfeed} is stopped forcefully.

`timeout`::
  (time) Controls the amount of time to wait until a {dfeed} stops.
  The default value is 20 seconds.


==== Authorization

You must have `manage_ml`, or `manage` cluster privileges to use this API.
For more information, see
{xpack-ref}/security-privileges.html[Security Privileges].


==== Examples

The following example stops the `datafeed-total-requests` {dfeed}:

[source,js]
--------------------------------------------------
POST _xpack/ml/datafeeds/datafeed-total-requests/_stop
{
  "timeout": "30s"
}
--------------------------------------------------
// CONSOLE
// TEST[setup:server_metrics_startdf]

When the {dfeed} stops, you receive the following results:
[source,js]
----
{
  "stopped": true
}
----
// CONSOLE
// TESTRESPONSE
