[role="xpack"] [testenv="platinum"] [[ml-delete-expired-data]] = Delete expired data API ++++ Delete expired data ++++ Deletes expired and unused machine learning data. [[ml-delete-expired-data-request]] == {api-request-title} `DELETE _ml/_delete_expired_data` + `DELETE _ml/_delete_expired_data/` [[ml-delete-expired-data-prereqs]] == {api-prereq-title} * If the {es} {security-features} are enabled, you must have `manage_ml` or `manage` cluster privileges to use this API. See <> and {ml-docs-setup-privileges}. [[ml-delete-expired-data-desc]] == {api-description-title} Deletes all job results, model snapshots and forecast data that have exceeded their `retention days` period. Machine learning state documents that are not associated with any job are also deleted. You can limit the request to a single or set of {anomaly-jobs} by using a job identifier, a group name, a comma-separated list of jobs, or a wildcard expression. You can delete expired data for all {anomaly-jobs} by using `_all`, by specifying `*` as the ``, or by omitting the ``. [[ml-delete-expired-data-path-parms]] == {api-path-parms-title} ``:: (Optional, string) Identifier for an {anomaly-job}. It can be a job identifier, a group name, or a wildcard expression. [[ml-delete-expired-data-request-body]] == {api-request-body-title} `requests_per_second`:: (Optional, float) The desired requests per second for the deletion processes. The default behavior is no throttling. `timeout`:: (Optional, string) How long can the underlying delete processes run until they are canceled. The default value is `8h` (8 hours). [[ml-delete-expired-data-example]] == {api-examples-title} The endpoint takes no arguments: [source,console] -------------------------------------------------- DELETE _ml/_delete_expired_data -------------------------------------------------- // TEST When the expired data is deleted, you receive the following response: [source,console-result] ---- { "deleted": true } ----