| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394 | [role="xpack"][[ml-delete-job]]= Delete {anomaly-jobs} API++++<titleabbrev>Delete jobs</titleabbrev>++++Deletes an existing {anomaly-job}.[[ml-delete-job-request]]== {api-request-title}`DELETE _ml/anomaly_detectors/<job_id>`[[ml-delete-job-prereqs]]== {api-prereq-title}* Requires the `manage_ml` cluster privilege. This privilege is included in the `machine_learning_admin` built-in role.* Before you can delete a job, you must close it (unless you specify the `force` parameter). See <<ml-close-job>>.[[ml-delete-job-desc]]== {api-description-title}All job configuration, model state and results are deleted.IMPORTANT:  Deleting an {anomaly-job} must be done via this API only. Do notdelete the job directly from the `.ml-*` indices using the {es} delete documentAPI. When {es} {security-features} are enabled, make sure no `write` privilegesare granted to anyone over the `.ml-*` indices.It is not currently possible to delete multiple jobs using wildcards or a commaseparated list.If you delete a job that has a {dfeed}, the request first tries to delete the{dfeed}. This behavior is equivalent to calling<<ml-delete-datafeed,delete {dfeed}>> with the same `timeout` and `force`parameters as the delete job request.[[ml-delete-job-path-parms]]== {api-path-parms-title}`<job_id>`::(Required, string)include::{es-repo-dir}/ml/ml-shared.asciidoc[tag=job-id-anomaly-detection][[ml-delete-job-query-parms]]== {api-query-parms-title}`force`::  (Optional, Boolean) Use to forcefully delete an opened job; this method is  quicker than closing and deleting the job.`wait_for_completion`::  (Optional, Boolean) Specifies whether the request should return immediately or  wait until the job deletion completes. Defaults to `true`.[[ml-delete-job-example]]== {api-examples-title}[source,console]--------------------------------------------------DELETE _ml/anomaly_detectors/total-requests--------------------------------------------------// TEST[skip:setup:server_metrics_job]When the job is deleted, you receive the following results:[source,console-result]----{  "acknowledged": true}----In the next example we delete the `total-requests` job asynchronously:[source,console]--------------------------------------------------DELETE _ml/anomaly_detectors/total-requests?wait_for_completion=false--------------------------------------------------// TEST[skip:setup:server_metrics_job]When `wait_for_completion` is set to `false`, the response contains the idof the job deletion task:[source,console-result]----{  "task": "oTUltX4IQMOUUVeiohTt8A:39"}----// TESTRESPONSE[s/"task": "oTUltX4IQMOUUVeiohTt8A:39"/"task": $body.task/]
 |