지정된 프로젝트 에서 한 클러스터 의 스냅샷 하나를 복원합니다. Atlas 온디맨드 스냅샷을 즉시 생성하고 정기적으로 예약된 스냅샷을 생성합니다. queued 또는 inProgress 상태의 온디맨드 스냅샷 있는 경우, 다른 스냅샷 찍기 전에 Atlas 이전에 만든 온디맨드 스냅샷 처리 완료할 때까지 기다립니다.
이 리소스를 사용하려면 요청 서비스 계정 또는 API 키에 프로젝트 백업 관리자 역할이 있어야 합니다.
경로 매개변수
-
프로젝트 식별하는 고유한 24-16진수 문자열입니다. 인증된 사용자가 액세스 할 수 있는 모든 프로젝트를 조회 하려면 /groups 엔드포인트를 사용합니다.
참고: 그룹과 프로젝트는 동의어입니다. 그룹 ID는 프로젝트 ID와 동일합니다. 기존 그룹의 경우, 그룹/프로젝트 ID는 동일하게 유지됩니다. 리소스 및 해당 엔드포인트는 그룹이라는 용어를 사용합니다.
형식은
^([a-f0-9]{24})$패턴 과 일치해야 합니다. -
클러스터를 식별하는 사람이 읽을 수 있는 라벨입니다.
형식은
^[a-zA-Z0-9][a-zA-Z0-9-]*$패턴 과 일치해야 합니다.
쿼리 매개변수
-
애플리케이션이 응답을
envelopeJSON 객체로 래핑할지 여부를 나타내는 플래그입니다. 일부 API 클라이언트는 HTTP 응답 헤더 또는 상태 코드에 액세스할 수 없습니다. 이 문제를 해결하려면 쿼리에서 envelope=true를 설정합니다. 결과 목록을 반환하는 엔드포인트는 결과 객체를 엔벨로프로 사용합니다. 애플리케이션은 응답 본문에 상태 매개변수를 추가합니다.기본값은
false입니다. -
응답 본문이 프리티프린트 형식이어야 하는지 여부를 나타내는 플래그입니다.
기본값은
false입니다.Prettyprint
body
필수 사항
지정된 프로젝트에서 한 클러스터의 스냅샷 하나를 복원합니다.
-
생성할 복원 작업을 분류하는 인간 판독 가능 레이블.
값은
automated,download또는pointInTime입니다. -
이 스냅샷 복원 할 Oplog 작업 번호입니다. 이 숫자는 Oplog 타임스탬프의 두 번째 부분을 나타냅니다. 리소스
"deliveryType" : "pointInTime"및oplogTs가0를 초과할 때 이 매개 변수를 반환합니다.최소값은
1입니다. -
이 스냅샷 복원 할 날짜 및 시간입니다. 이 매개변수는 유닉스 시간 이후 경과된 시간(초)으로 이 타임스탬프를 표현합니다. 이 숫자는 Oplog 타임스탬프의 첫 번째 부분을 나타냅니다. 리소스
"deliveryType" : "pointInTime"및oplogTs가0를 초과할 때 이 매개 변수를 반환합니다.최소값은
1199145600입니다. -
MongoDB 클라우드가 이 스냅샷 복원한 날짜 및 시간입니다. 이 매개변수는 유닉스 시간 이후 경과된 시간(초)으로 이 타임스탬프를 표현합니다. 리소스
"deliveryType" : "pointInTime"및pointInTimeUTCSeconds가0를 초과할 때 이 매개 변수를 반환합니다.최소값은
1199145600입니다. -
스냅샷을 식별하는 고유한 24자리 16진수 문자열.
형식은
^([a-f0-9]{24})$패턴 과 일치해야 합니다. -
복원 작업이 스냅샷을 복원하는 대상 클러스터를 식별하는 인간 판독 가능 레이블. 리소스는
"deliveryType":"automated"일 때 이 매개 변수를 반환합니다.automated및pointInTime복원 유형에 필요합니다.형식은
^[a-zA-Z0-9][a-zA-Z0-9-]*$패턴 과 일치해야 합니다. -
지정된
targetClusterName의 대상 프로젝트 식별하는 고유한 24-16진수 문자열입니다.automated및pointInTime복원 유형에 필요합니다.형식은
^([a-f0-9]{24})$패턴 과 일치해야 합니다.
atlas api cloudBackups createBackupRestoreJob --help
import (
"os"
"context"
"log"
sdk "go.mongodb.org/atlas-sdk/v20250312001/admin"
)
func main() {
ctx := context.Background()
clientID := os.Getenv("MONGODB_ATLAS_CLIENT_ID")
clientSecret := os.Getenv("MONGODB_ATLAS_CLIENT_SECRET")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.CreateGroupClusterBackupRestoreJobApiParams{}
sdkResp, httpResp, err := client.CloudBackupsApi.
CreateGroupClusterBackupRestoreJobWithParams(ctx, params).
Execute()
}
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/backup/restoreJobs" \
-d '{ <Payload> }'
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/backup/restoreJobs" \
-d '{ <Payload> }'
{
"deliveryType": "automated",
"oplogInc": 1,
"oplogTs": 42,
"pointInTimeUTCSeconds": 42,
"snapshotId": "32b6e34b3d91647abb20e7b8",
"targetClusterName": "string",
"targetGroupId": "32b6e34b3d91647abb20e7b8"
}
{
"cancelled": true,
"components": [
{
"downloadUrl": "string",
"privateDownloadDeliveryUrls": [
{
"deliveryUrl": "string",
"endpointId": "vpce-3bf78b0ddee411ba1"
}
],
"replicaSetName": "string"
}
],
"deliveryType": "automated",
"deliveryUrl": [
"string"
],
"desiredTimestamp": {
"date": "2026-05-04T09:42:00Z",
"increment": 1199145600
},
"expired": true,
"expiresAt": "2026-05-04T09:42:00Z",
"failed": true,
"finishedAt": "2026-05-04T09:42:00Z",
"id": "32b6e34b3d91647abb20e7b8",
"links": [
{
"href": "https://cloud.mongodb.com/api/atlas",
"rel": "self"
}
],
"oplogInc": 1,
"oplogTs": 42,
"pointInTimeUTCSeconds": 42,
"privateDownloadDeliveryUrls": [
{
"deliveryUrl": "string",
"endpointId": "vpce-3bf78b0ddee411ba1"
}
],
"snapshotId": "32b6e34b3d91647abb20e7b8",
"targetClusterName": "string",
"targetGroupId": "32b6e34b3d91647abb20e7b8",
"timestamp": "2026-05-04T09:42:00Z"
}
{
"error": 400,
"detail": "(This is just an example, the exception may not be related to this endpoint) No provider AWS exists.",
"reason": "Bad Request",
"errorCode": "VALIDATION_ERROR"
}
{
"error": 401,
"detail": "(This is just an example, the exception may not be related to this endpoint)",
"reason": "Unauthorized",
"errorCode": "NOT_ORG_GROUP_CREATOR"
}
{
"error": 403,
"detail": "(This is just an example, the exception may not be related to this endpoint)",
"reason": "Forbidden",
"errorCode": "CANNOT_CHANGE_GROUP_NAME"
}
{
"error": 404,
"detail": "(This is just an example, the exception may not be related to this endpoint) Cannot find resource AWS",
"reason": "Not Found",
"errorCode": "RESOURCE_NOT_FOUND"
}
{
"error": 409,
"detail": "(This is just an example, the exception may not be related to this endpoint) Cannot delete organization link while there is active migration in following project ids: 60c4fd418ebe251047c50554",
"reason": "Conflict",
"errorCode": "CANNOT_DELETE_ORG_ACTIVE_LIVE_MIGRATION_ATLAS_ORG_LINK"
}
{
"error": 500,
"detail": "(This is just an example, the exception may not be related to this endpoint)",
"reason": "Internal Server Error",
"errorCode": "UNEXPECTED_ERROR"
}