Close Jobs

The close job API enables you to close a job. A job can be opened and closed multiple times throughout its lifecycle.

A closed job cannot receive data or perform analysis operations, but you can still explore and navigate results.


POST _xpack/ml/anomaly_detectors/<job_id>/_close


When you close a job, it runs housekeeping tasks such as pruning the model history, flushing buffers, calculating final results and persisting the model snapshots. Depending upon the size of the job, it could take several minutes to close and the equivalent time to re-open.

After it is closed, the job has a minimal overhead on the cluster except for maintaining its meta data. Therefore it is a best practice to close jobs that are no longer required to process data.

When a datafeed that has a specified end date stops, it automatically closes the job.


If you use the force query parameter, the request returns before the associated actions such as flushing buffers and persisting the model snapshots complete. Therefore, do not use that parameter in a script that expects the job to be in a consistent state after the close job API returns.

Path Parameters

job_id (required)
(string) Identifier for the job

Query Parameters

(boolean) Use to close a failed job, or to forcefully close a job which has not responded to its initial close request.
(time units) Controls the time to wait until a job has closed. The default value is 30 minutes.


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


The following example closes the event_rate job:

POST _xpack/ml/anomaly_detectors/event_rate/_close

When the job is closed, you receive the following results:

  "closed": true