Navigation

Get All Cloud Backups

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. The resource and corresponding endpoints use the term groups.

The Atlas API authenticates using HTTP Digest Authentication. Provide a programmatic API public key and corresponding private key as the username and password when constructing the HTTP request.

To learn how to configure API access for an Atlas project, see Configure Atlas API Access.

Required Roles

You must grant your API Key the Project Read Only role to successfully call this endpoint.

Resource

Base URL: https://cloud.mongodb.com/api/atlas/v1.0

GET /groups/{GROUP-ID}/clusters/{CLUSTER-NAME}/backup/snapshots

Request

Path Parameters

Path Element Type Necessity Description
GROUP-ID string Required Unique identifier of the project for the Atlas cluster.
CLUSTER-NAME string Required Name of the Atlas cluster that contains the snapshots you want to retrieve.

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 Necessity Description Default
pageNum integer Optional Page number, starting with one, that Atlas returns of the total number of objects. 1
itemsPerPage integer Optional Number of items that Atlas returns per page, up to a maximum of 500. 100
includeCount boolean Optional Flag that indicates whether Atlas returns the totalCount parameter in the response body. true
pretty boolean Optional Flag that indicates whether Atlas returns the JSON response in the prettyprint format. false
envelope boolean Optional

Flag that indicates whether Atlas wraps the response in an envelope.

Some API clients cannot access the HTTP response headers or status code. To remediate this, set envelope=true in the query.

Endpoints that return a list of results use the results object as an envelope. Atlas adds the status parameter to the response body.

false

Body Parameters

This endpoint doesn’t use HTTP request body parameters.

Response

Response Document

The response JSON document includes an array of result objects, an array of link objects and a count of the total number of result objects retrieved.

Name Type Description
results array of objects One object for each item detailed in the results Embedded Document section.
links array of objects One or more links to sub-resources and/or related resources. The relations between URLs are explained in the Web Linking Specification
totalCount integer Count of the total number of items in the result set. It may be greater than the number of objects in the results array if the entire result set is paginated.

results Embedded Document

Name Type Description
cloudProvider string Cloud provider that stores this snapshot. Atlas returns this parameter when “type”: “replicaSet”.
createdAt string Timestamp in ISO 8601 date and time format in UTC when Atlas took the snapshot.
description string Description of the snapshot. Atlas returns this parameter when “status”: “onDemand”.
expiresAt string Timestamp in ISO 8601 date and time format in UTC when Atlas deletes the snapshot.
id string Unique identifier of the snapshot.
links array One or more links to sub-resources and/or related resources. The relations between URLs are explained in the Web Linking Specification
masterKeyUUID string Unique identifier of the AWS KMS Customer Master Key used to encrypt the snapshot. Atlas returns this value for clusters using Encryption at Rest via Customer KMS.
members array of objects List of snapshots and the cloud provider where the snapshots are stored. Atlas returns this parameter when “type”: “shardedCluster”.
members[n]
.cloudProvider
string Cloud provider that stores this snapshot.
members[n].id string Unique identifier for the sharded cluster snapshot.
members[n].replicaSetName string Label given to a shard or config server from which Atlas took this snapshot.
mongodVersion string Version of the MongoDB server.
replicaSetName string Label given to the replica set from which Atlas took this snapshot. Atlas returns this parameter when “type”: “replicaSet”.
snapshotIds array of strings Unique identifiers of the snapshots created for the shards and config server for a sharded cluster. Atlas returns this parameter when “type”: “shardedCluster”. These identifiers should match those given in the members[n].id parameters. This allows you to map a snapshot to its shard or config server name.
snapshotType string Type of snapshot. Atlas can return onDemand or scheduled.
status string

Current status of the snapshot. Atlas can return one of the following values:

  • queued
  • inProgress
  • completed
  • failed
storageSizeBytes integer Size of the snapshot in bytes.
type string Type of cluster. Atlas can return replicaSet or shardedCluster.

Example Request

curl --user "{PUBLIC-KEY}:{PRIVATE-KEY}" --digest --include \
     --header "Accept: application/json" \
     --header "Content-Type: application/json" \
     --request GET "https://cloud.mongodb.com/api/atlas/v1.0/groups/{PROJECT-ID}/clusters/{CLUSTER-NAME}/backup/snapshots?pretty=true"

Example Response

Response Header

HTTP/1.1 401 Unauthorized
Content-Type: application/json;charset=ISO-8859-1
Date: {dateInUnixFormat}
WWW-Authenticate: Digest realm="MMS Public API", domain="", nonce="{nonce}", algorithm=MD5, op="auth", stale=false
Content-Length: {requestLengthInBytes}
Connection: keep-alive
HTTP/1.1 200 OK
Vary: Accept-Encoding
Content-Type: application/json
Strict-Transport-Security: max-age=300
Date: {dateInUnixFormat}
Connection: keep-alive
Content-Length: {requestLengthInBytes}

Response Body

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
{
  "links": [
    {
      "href": "https://cloud.mongodb.com/api/atlas/v1.0/groups/{PROJECT-ID}/clusters/{CLUSTER-NAME}/backup/snapshots?pageNum=1&itemsPerPage=100",
      "rel": "self"
    }
  ],
  "results": [
    {
      "cloudProvider" : "AZURE",
      "createdAt": "2018-08-01T20:02:07Z",
      "expiresAt": "2018-08-04T20:03:11Z",
      "id": "{SNAPSHOT-ID}",
      "links": [
        {
          "href": "https://cloud.mongodb.com/api/atlas/v1.0/groups/{PROJECT-ID}/clusters/{CLUSTER-NAME}/backup/snapshots/{SNAPSHOT-ID}",
          "rel": "self"
        },
        {
          "href": "https://cloud.mongodb.com/api/atlas/v1.0/groups/{PROJECT-ID}/clusters/{CLUSTER-NAME}",
          "rel": "http://mms.mongodb.com/cluster"
        }
      ],
      "mongodVersion": "4.0.20",
      "replicaSetName" : "newCluster",
      "snapshotType" : "scheduled",
      "status" : "completed",
      "storageSizeBytes": 1778012160,
      "type" : "replicaSet"
    }
  ],
  "totalCount": 1
}
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
{
  "links" : [ {
    "href" : "http://cloud.mongodb.com/api/atlas/v1.0/groups/{PROJECT-ID}/clusters/{CLUSTER-NAME}/backup/snapshots/shardedClusters?pretty=true&pageNum=1&itemsPerPage=100",
    "rel" : "self"
  } ],
  "results" : [ {
    "createdAt" : "2020-09-24T01:24:02Z",
    "description" : "d",
    "expiresAt" : "2020-09-27T01:25:16Z",
    "id" : "{SNAPSHOT-ID}",
    "links" : [ {
      "href" : "http://cloud.mongodb.com/api/atlas/v1.0/groups/{PROJECT-ID}/clusters/{CLUSTER-NAME}/backup/snapshots/{SNAPSHOT-ID}",
      "rel" : "self"
    }, {
      "href" : "http://cloud.mongodb.com/api/atlas/v1.0/groups/{PROJECT-ID}/clusters/{CLUSTER-NAME}",
      "rel" : "http://mms.mongodb.com/cluster"
    } ],
    "members" : [ {
      "cloudProvider" : "AZURE",
      "id" : "{SNAPSHOT-ID-1}",
      "replicaSetName" : "atlas-f0hyvs-shard-0"
    }, {
      "cloudProvider" : "AZURE",
      "id" : "{SNAPSHOT-ID-2}",
      "replicaSetName" : "atlas-f0hyvs-config-0"
    } ],
    "mongodVersion" : "4.0.20",
    "snapshotIds" : [ "{SNAPSHOT-ID-1}", "{SNAPSHOT-ID-2}" ],
    "snapshotType" : "onDemand",
    "status" : "completed",
    "storageSizeBytes" : 2760466432,
    "type" : "shardedCluster"
  } ],
  "totalCount" : 1
}