Navigation

Change a Snapshot Expiration

Note

Groups and projects are synonymous terms. Your {GROUP-ID} is the same as your project id. For existing groups, your group/project id remains the same. This page uses the more familiar term group. The endpoints are as stated on the page.

The Atlas API uses HTTP Digest Authentication. Provide your Atlas username and group API key as the username and password when constructing the HTTP request.

For complete documentation on configuring API access for an Atlas group, see Configure Atlas API Access.

Base URL: https://cloud.mongodb.com/

Syntax

PATCH /api/atlas/v1.0/groups/{GROUP-ID}/clusters/{CLUSTER-NAME}/snapshots/{SNAPSHOT-ID}

Request Parameters

Request Path Parameters

Path Element Required/Optional Description
GROUP-ID Required The unique identifier of the group that owns the snapshots.
CLUSTER-NAME Required The name of the cluster that contains the snapshots that you want to retrieve.
SNAPSHOT-ID Required The ID of the desired snapshot.

Request Query Parameters

This endpoint may use any of the HTTP request query parameters available to all Atlas API resources. These are all optional.

Name Type Description Default
pageNum integer Page number (1-based). 1
itemsPerPage integer Maximum number of items to return, up to a maximum of 100. 100
pretty boolean Display response in a prettyprint format. false

Request Body Parameters

Name Type Description
doNotDelete boolean

Indicator that the snapshot cannot be deleted.

Important

You cannot set doNotDelete to true and set a timestamp for expires in the same request. If you do, Cloud Manager returns an error: Cannot modify snapshot because of invalid fields.

expires timestamp

The date in ISO 8601 date and time format in UTC after which this snapshot can be deleted.

If doNotDelete is set to true, any existing value in expires is removed.

If expires is set to a timestamp at or before the current date and time, Cloud Manager deletes the snapshot at its next opportunity. There is no guarantee that the snapshot would be deleted immediately.

If the current expires timestamp has already passed, the snapshot cannot be edited.

Response Elements

Name Type Description
clusterId string The unique ID of the cluster that the snapshot represents.
complete boolean Indicates whether the snapshot exists. This is false if the snapshot creation job is in progress.
created Document The components of a timestamp.
created.date timestamp The exact point in time when the snapshot was taken in ISO 8601 date and time format in UTC.
created.increment integer The operation order in which this snapshot took place at this exact point in time. To learn how timestamps work in MongoDB, see timestamp.
doNotDelete boolean Specifies whether the snapshot can be deleted.
expires timestamp

The date in ISO 8601 date and time format in UTC after which Atlas deletes the snapshot.

If doNotDelete is set to true, any value in expires is removed.

If the expires value is earlier than the current date and time, the snaphot cannot be edited.

groupId objectId ID of the group that owns the snapshot.
id objectId ID of the snapshot.
lastOplogAppliedTimestamp document The components of the timestamp of the last oplog entry was applied.
lastOplogAppliedTimestamp.date timestamp The exact point in time when the last oplog was applied in ISO 8601 date and time format in UTC.
lastOplogAppliedTimestamp.increment integer The operation order in which the last oplog was applied at this exact point in time. To learn how timestamps work in MongoDB, see timestamp.
links document array One or more links to sub-resources and/or related resources. The relations between URLs are explained in the Web Linking Specification.
parts document array

The individual parts that comprise the complete snapshot.

parts.clusterId objectId ID of the replica set.
parts.compressionSetting string Method of compression for the snapshot.
parts.dataSizeBytes number The total size of the data in the snapshot in bytes.
parts.encryptionEnabled boolean Indicates whether the snapshot is encrypted.
parts.fileSizeBytes number The total size of the data files in bytes.
parts.masterKeyUUID objectId

The KMIP master key ID used to encrypt the snapshot data.

Note

This appears only if parts.encryptionEnabled is true.

parts.mongodVersion string The version of MongoDB that the replica set primary was running when the snapshot was created.
parts.replicaSetName string Name of the replica set.
parts.storageSizeBytes number The total size of space allocated for document storage.
parts.typeName string

The type of server that the part represents:

  • REPLICA_SET
  • CONFIG_SERVER_REPLICA_SET

Examples

Example Request

curl -X PATCH -i -u "{username}:{apiKey}" -H "Content-Type: application/json" --digest "https://cloud.mongodb.com/api/atlas/v1.0/groups/6c7498dg87d9e6526801572b/clusters/Cluster0/snapshots/6b5380e6jvn128560506942b" --data '{"expires":"2018-12-01"}'

Example Response

{
     "clusterId": "57c2487d833e9e75286093696",
     "complete": true,
     "created": {
             "date": "2017-12-26T16:32:16Z",
             "increment": 1
     },
     "doNotDelete": false,
     "expires": "2018-12-01T00:00:00Z",
     "groupId": "56c7498dg87d9e6526801572b",
     "id": "5a4279d4fcc178500596745a",
     "lastOplogAppliedTimestamp": {
             "date": "2017-12-26T16:32:15Z",
             "increment": 1
     },
     "links": [{
             "href": "https://cloud.mongodb.com/api/atlas/v1.0/groups/6c7498dg87d9e6526801572b/clusters/Cluster0/snapshots/5a4279d4fcc178500596745a",
             "rel": "self"
     }],
     "parts": [{
             "clusterId": "57c2487d833e9e75286093696",
             "compressionSetting": "GZIP",
             "dataSizeBytes": 4502,
             "encryptionEnabled": false,
             "fileSizeBytes": 324760,
             "mongodVersion": "3.4.10",
             "replicaSetName": "Cluster0-shard-0",
             "storageSizeBytes": 53248,
             "typeName": "REPLICA_SET"
     }]
}