Checkpoints
On this page
- OAuth 2.0 authentication for programmatic access to Cloud Manager is available as a Preview feature.
- The feature and the corresponding documentation might change at any time during the Preview period. To use OAuth 2.0 authentication, create a service account to use in your requests to the Cloud Manager Public API.
Note
Groups and projects are synonymous terms. Your {PROJECT-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 when
referring to descriptions. The endpoint remains as stated in the
document.
This resource allows you to view Checkpoints metadata. You can use checkpoints to create custom snapshots of a cluster at points in time between regular snapshots.
Important
You may use checkpoints for clusters that run MongoDB with
Feature Compatibility Version
of 4.0 or earlier. Checkpoints were removed from
MongoDB instances with FCV 4.2 or later.
Endpoints
Get All Checkpoints
Get all checkpoints for a cluster.
GET /groups/{PROJECT-ID}/clusters/CLUSTER-ID/checkpoints
Get One Checkpoint
Get a single checkpoint.
GET /groups/{PROJECT-ID}/clusters/CLUSTER-ID/checkpoints/CHECKPOINT-ID
Sample Entity
1 { 2 "clusterId" : "{CLUSTER-ID}", 3 "completed" : "2015-07-31T23:19:51Z", 4 "groupId" : "{GROUP-ID}", 5 "id" : "{CHECKPOINT-ID}", 6 "parts" : [ { 7 "replicaSetName" : "shard_1", 8 "shardName" : "shard_1", 9 "tokenDiscovered" : true, 10 "tokenTimestamp" : { 11 "date" : "2015-07-31T23:19:51Z", 12 "increment" : 1 13 }, 14 "typeName" : "REPLICA_SET" 15 }, { 16 "replicaSetName" : "shard_0", 17 "shardName" : "shard_0", 18 "tokenDiscovered" : true, 19 "tokenTimestamp" : { 20 "date" : "2015-07-31T23:19:51Z", 21 "increment" : 1 22 }, 23 "typeName" : "REPLICA_SET" 24 }, { 25 "hostId" : "{HOST-ID}", 26 "tokenDiscovered" : true, 27 "tokenTimestamp" : { 28 "date" : "2015-07-31T23:19:51Z", 29 "increment" : 6 30 }, 31 "typeName" : "CONFIG_SERVER" 32 } ], 33 "restorable" : true, 34 "started" : "2015-07-31T23:19:51Z", 35 "timestamp" : "2015-07-31T23:19:47Z" 36 }
Entity Fields
Name | Type | Description |
---|---|---|
| string | Unique identifier of the cluster represented by the checkpoint. |
| string | Timestamp in ISO 8601 date and time format in UTC for the point-in-time when the checkpoint completed and the balancer restarted. |
| string | Unique identifier of the group that owns the checkpoint. |
| string | Unique identifier of the checkpoint. |
| array of objects | Individual parts that comprise the complete checkpoint. There will be one element for each shard plus one element for the config servers. |
parts .replicaSetName | string | Name of the replica set. Not present for a config server. |
parts .shardName | string | Name of the shard. |
parts .tokenDiscovered | Boolean | Flag that indicates whether the token exists. |
parts .tokenTimestamp | object | |
parts .typeName | string | Type of server represented by the part. Possible values are:
|
| Boolean | Flag that indicates whether the checkpoint can be used for a restore. |
| string | |
| string | Timestamp in ISO 8601 date and time format in UTC for the point-in-time to which the checkpoint restores data. |
Links
Relation | Description |
---|---|
| Checkpoint |
| Cluster the checkpoint belongs to. |
| Project that owns the checkpoint. |
Examples
Get All Checkpoints
Request
curl --user "{PUBLIC-KEY}:{PRIVATE-KEY}" --digest \ --header "Accept: application/json" \ --include \ --request GET "https://cloud.mongodb.com/api/public/v1.0/groups/{GROUP-ID}/clusters/{CLUSTER-ID}/checkpoints"
Response
Response Header
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
200 OK Vary: Accept-Encoding Content-Type: application/json Strict-Transport-Security: max-age=300 Date: {dateInUnixFormat} Connection: keep-alive Content-Length: {requestLengthInBytes} X-MongoDB-Service-Version: gitHash={gitHash}; versionString={ApplicationVersion}
Response Body
1 { 2 "links" : [], 3 "results" : [ { 4 "clusterId" : "{CLUSTER-ID}", 5 "completed" : "2015-07-31T23:35:52Z", 6 "groupId" : "{GROUP-ID}", 7 "id" : "55bc0658e4b097a3efe06f1f", 8 "links" : [], 9 "parts" : [ { 10 "replicaSetName" : "shard_1", 11 "shardName" : "shard_1", 12 "tokenDiscovered" : true, 13 "tokenTimestamp" : { 14 "date" : "2015-07-31T23:35:52Z", 15 "increment" : 1 16 }, 17 "typeName" : "REPLICA_SET" 18 }, { 19 "replicaSetName" : "shard_0", 20 "shardName" : "shard_0", 21 "tokenDiscovered" : true, 22 "tokenTimestamp" : { 23 "date" : "2015-07-31T23:35:52Z", 24 "increment" : 1 25 }, 26 "typeName" : "REPLICA_SET" 27 }, { 28 "hostId" : "{HOST-ID}", 29 "tokenDiscovered" : true, 30 "tokenTimestamp" : { 31 "date" : "2015-07-31T23:35:52Z", 32 "increment" : 2 33 }, 34 "typeName" : "CONFIG_SERVER" 35 } ], 36 "restorable" : true, 37 "started" : "2015-07-31T23:35:52Z", 38 "timestamp" : "2015-07-31T23:34:47Z" 39 }, 40 ... 41 ], 42 "totalCount" : 6 43 }
Get One Checkpoint
Request
curl --user "{PUBLIC-KEY}:{PRIVATE-KEY}" --digest \ --header "Accept: application/json" \ --include \ --request GET "https://cloud.mongodb.com/api/public/v1.0/groups/{GROUP-ID}/clusters/{CLUSTER-ID}/checkpoints/{CHECKPOINT-ID}"
Response
Response Header
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
200 OK Vary: Accept-Encoding Content-Type: application/json Strict-Transport-Security: max-age=300 Date: {dateInUnixFormat} Connection: keep-alive Content-Length: {requestLengthInBytes} X-MongoDB-Service-Version: gitHash={gitHash}; versionString={ApplicationVersion}
Response Body
1 { 2 "clusterId" : "{CLUSTER-ID}", 3 "completed" : "2015-07-31T23:19:51Z", 4 "groupId" : "{GROUP-ID}", 5 "id" : "{CHECKPOINT-ID}", 6 "links" : [], 7 "parts" : [ { 8 "replicaSetName" : "shard_1", 9 "shardName" : "shard_1", 10 "tokenDiscovered" : true, 11 "tokenTimestamp" : { 12 "date" : "2015-07-31T23:19:51Z", 13 "increment" : 1 14 }, 15 "typeName" : "REPLICA_SET" 16 }, { 17 "replicaSetName" : "shard_0", 18 "shardName" : "shard_0", 19 "tokenDiscovered" : true, 20 "tokenTimestamp" : { 21 "date" : "2015-07-31T23:19:51Z", 22 "increment" : 1 23 }, 24 "typeName" : "REPLICA_SET" 25 }, { 26 "hostId" : "{HOST-ID}", 27 "tokenDiscovered" : true, 28 "tokenTimestamp" : { 29 "date" : "2015-07-31T23:19:51Z", 30 "increment" : 6 31 }, 32 "typeName" : "CONFIG_SERVER" 33 } ], 34 "restorable" : true, 35 "started" : "2015-07-31T23:19:51Z", 36 "timestamp" : "2015-07-31T23:19:47Z" 37 }