Clean up snapshot repository API

Clean up snapshot repository API

New API reference

For the most up-to-date API details, refer to Snapshot and restore APIs.

Triggers the review of a snapshot repository’s contents and deletes any stale data that is not referenced by existing snapshots. See Clean up a repository.

  1. resp = client.snapshot.cleanup_repository(
  2. name="my_repository",
  3. )
  4. print(resp)
  1. response = client.snapshot.cleanup_repository(
  2. repository: 'my_repository'
  3. )
  4. puts response
  1. const response = await client.snapshot.cleanupRepository({
  2. name: "my_repository",
  3. });
  4. console.log(response);
  1. POST /_snapshot/my_repository/_cleanup

Request

POST /_snapshot/<repository>/_cleanup

Prerequisites

  • If the Elasticsearch security features are enabled, you must have the manage cluster privilege to use this API.

Path parameters

<repository>

(Required, string) Name of the snapshot repository to review and clean up.

Query parameters

master_timeout

(Optional, time units) Period to wait for the master node. If the master node is not available before the timeout expires, the request fails and returns an error. Defaults to 30s. Can also be set to -1 to indicate that the request should never timeout.

timeout

(Optional, time units) Period to wait for a response from all relevant nodes in the cluster after updating the cluster metadata. If no response is received before the timeout expires, the cluster metadata update still applies but the response will indicate that it was not completely acknowledged. Defaults to 30s. Can also be set to -1 to indicate that the request should never timeout.

Response body

results

(object) Contains statistics for cleanup operations.

Properties of results

  • deleted_bytes

    (integer) Number of bytes freed by cleanup operations.

    deleted_blobs

    (integer) Number of binary large objects (blobs) removed from the snapshot repository during cleanup operations. Any non-zero value implies that unreferenced blobs were found and subsequently cleaned up.

Examples

  1. resp = client.snapshot.cleanup_repository(
  2. name="my_repository",
  3. )
  4. print(resp)
  1. response = client.snapshot.cleanup_repository(
  2. repository: 'my_repository'
  3. )
  4. puts response
  1. const response = await client.snapshot.cleanupRepository({
  2. name: "my_repository",
  3. });
  4. console.log(response);
  1. POST /_snapshot/my_repository/_cleanup

The API returns the following response:

  1. {
  2. "results": {
  3. "deleted_bytes": 20,
  4. "deleted_blobs": 5
  5. }
  6. }