# Return One Collection Restore Job for One Cluster **GET /api/atlas/v2/groups/{groupId}/clusters/{clusterName}/collectionRestoreJobs/{jobId}** Returns one collection restore job for one cluster from the specified project. ## Role requirements - Project Backup Manager ## Servers - https://cloud.mongodb.com: https://cloud.mongodb.com () ## Authentication methods - Service accounts - Digest auth ## Parameters ### Path parameters - **groupId** (string) Unique 24-hexadecimal digit string that identifies your project. Use the [/groups](#tag/Projects/operation/listProjects) endpoint to retrieve all projects to which the authenticated user has access. **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. - **clusterName** (string) Human-readable label that identifies the cluster with the collection restore jobs you want to return. - **jobId** (string) Unique 24-hexadecimal digit string that identifies the collection restore job to return. ### Query parameters - **envelope** (boolean) Flag that indicates whether Application wraps the response in an `envelope` JSON object. 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. Application adds the status parameter to the response body. - **pretty** (boolean) Flag that indicates whether the response body should be in the prettyprint format. ## Responses ### 200 OK #### Headers - **RateLimit-Limit** () The maximum number of requests that a user can make within a specific time window. - **RateLimit-Remaining** () The number of requests remaining in the current rate limit window before the limit is reached. #### Body: application/vnd.atlas.2025-03-12+json (object) - **collectionSuffix** (string) Suffix applied to restored collection names. - **collections** (array[object]) List of collections in the restore scope (up to 100 items). - **createdAt** (string(date-time)) Date and time when the restore job was created (ISO 8601 format in UTC). - **databaseSuffix** (string) Suffix applied to restored database names. - **databases** (array[object]) List of databases in the restore scope (up to 100 items). - **errorMessage** (string) Error message when the job has failed or been canceled. - **finishedAt** (string(date-time)) Date and time when the restore job finished (ISO 8601 format in UTC). - **id** (string) Unique 24-hexadecimal digit string that identifies the collection restore job. - **indexStatus** (object) Overall index build status for a collection restore job. - **indexStrategy** (string) Strategy for restoring indexes (all, none, or all except TTL). - **oplogInc** (integer(int32)) Oplog increment for point-in-time restore. - **oplogTs** (integer(int32)) Oplog timestamp (seconds part) for point-in-time restore. - **pointInTimeUtcSeconds** (integer(int32)) Point-in-time restore time in seconds since UNIX epoch. - **restoredDocuments** (integer(int64)) Number of documents restored so far across all supported collections. - **snapshotId** (string) Unique 24-hexadecimal digit string that identifies the snapshot being restored. - **state** (string) Current state of the collection restore job. - **targetClusterName** (string) Human-readable label that identifies the target cluster. - **targetGroupId** (string) Unique 24-hexadecimal digit string that identifies the target group. - **totalDocuments** (integer(int64)) Total number of documents across all supported collections in the restore job. This value may initially reflect an estimate based on collection metadata and can change as accurate document counts become available during the restore. - **writeStrategy** (string) Strategy for writing data on the target (create as new or overwrite existing). With `OVERWRITE_EXISTING`, any writes to the affected databases or collections during the restore will be lost when the existing namespaces are dropped and replaced. To avoid data loss, stop writes to the affected namespaces before starting the restore. ### 400 Bad Request. #### Body: application/json (object) - **badRequestDetail** (object | null) Bad request detail. - **detail** (string | null) Describes the specific conditions or reasons that cause each type of error. - **error** (integer(int32)) HTTP status code returned with this error. - **errorCode** (string) Application error code returned with this error. - **parameters** (array[object]) Parameters used to give more information about the error. - **reason** (string | null) Application error message returned with this error. ### 401 Unauthorized. #### Body: application/json (object) - **badRequestDetail** (object | null) Bad request detail. - **detail** (string | null) Describes the specific conditions or reasons that cause each type of error. - **error** (integer(int32)) HTTP status code returned with this error. - **errorCode** (string) Application error code returned with this error. - **parameters** (array[object]) Parameters used to give more information about the error. - **reason** (string | null) Application error message returned with this error. ### 403 Forbidden. #### Body: application/json (object) - **badRequestDetail** (object | null) Bad request detail. - **detail** (string | null) Describes the specific conditions or reasons that cause each type of error. - **error** (integer(int32)) HTTP status code returned with this error. - **errorCode** (string) Application error code returned with this error. - **parameters** (array[object]) Parameters used to give more information about the error. - **reason** (string | null) Application error message returned with this error. ### 404 Not Found. #### Body: application/json (object) - **badRequestDetail** (object | null) Bad request detail. - **detail** (string | null) Describes the specific conditions or reasons that cause each type of error. - **error** (integer(int32)) HTTP status code returned with this error. - **errorCode** (string) Application error code returned with this error. - **parameters** (array[object]) Parameters used to give more information about the error. - **reason** (string | null) Application error message returned with this error. ### 429 Too Many Requests. #### Headers - **RateLimit-Limit** () The maximum number of requests that a user can make within a specific time window. - **RateLimit-Remaining** () The number of requests remaining in the current rate limit window before the limit is reached. - **Retry-After** () The minimum time you should wait, in seconds, before retrying the API request. This header might be returned for 429 or 503 error responses. #### Body: application/json (object) - **badRequestDetail** (object | null) Bad request detail. - **detail** (string | null) Describes the specific conditions or reasons that cause each type of error. - **error** (integer(int32)) HTTP status code returned with this error. - **errorCode** (string) Application error code returned with this error. - **parameters** (array[object]) Parameters used to give more information about the error. - **reason** (string | null) Application error message returned with this error. ### 500 Internal Server Error. #### Body: application/json (object) - **badRequestDetail** (object | null) Bad request detail. - **detail** (string | null) Describes the specific conditions or reasons that cause each type of error. - **error** (integer(int32)) HTTP status code returned with this error. - **errorCode** (string) Application error code returned with this error. - **parameters** (array[object]) Parameters used to give more information about the error. - **reason** (string | null) Application error message returned with this error. [Powered by Bump.sh](https://bump.sh)