Skip to content

Volume Snapshot

All operations require authentication.

5 operationsv2/publicCloud/project
Agent setup

List snapshotsProduction

GET
/v2/publicCloud/project/{projectId}/storage/block/snapshot

Returns the volume snapshots of the project.

Path parameters

projectId
required
string

Project ID

Query parameters

volumeId
stringuuid

Filter by source volume ID

Headers

X-Pagination-Cursor
string

Pagination cursor

X-Pagination-Size
integer

Pagination size

Response

200Snapshot[]successful operation
checksum
read-only
string

Computed hash representing the current target specification value

createdAt
read-only
stringdate-time

Creation date of the snapshot

currentState
read-only
SnapshotCurrentState

Current observed state of the snapshot from the infrastructure

currentTasks
read-only
CurrentTask[]

Ongoing asynchronous tasks related to the snapshot

id
read-only
stringuuid

Unique identifier of the snapshot

resourceStatus
read-only
ResourceStatusEnum

Snapshot readiness in the system

ValuesCREATINGCREATION_PLANNEDDELETINGERROROUT_OF_SYNCREADYSUSPENDEDUNKNOWNUPDATING
targetSpec
read-only
SnapshotTargetSpec

Last target specification of the snapshot

updatedAt
read-only
stringdate-time

Last update date of the snapshot

Example uses projectId = string

$ curl https://api.eu.ovhcloud.com/v2/publicCloud/project/{projectId}/storage/block/snapshot \
  -H "authorization: Bearer $OVH_TOKEN"
ResponseExample
[ { "checksum": "string", "createdAt": "2024-01-01T12:00:00Z", "currentState": { "description": "string", "location": { "availabilityZone": "string", "region": "string" }, "name": "string", "size": 0, "status": "AVAILABLE", "volumeId": "00000000-0000-0000-0000-000000000000" }, "currentTasks": [ { "errors": [ { "message": "string" } ], "id": "00000000-0000-0000-0000-000000000000", "link": "string", "status": "ERROR", "type": "string" } ], "id": "00000000-0000-0000-0000-000000000000", "resourceStatus": "CREATING", "targetSpec": { "description": "string", "location": { "availabilityZone": "string", "region": "string" }, "name": "string", "volumeId": "00000000-0000-0000-0000-000000000000" }, "updatedAt": "2024-01-01T12:00:00Z" }]

Get a snapshotProduction

GET
/v2/publicCloud/project/{projectId}/storage/block/snapshot/{id}

Returns the snapshot configuration and its current state, including its size and source volume.

Path parameters

id
required
stringuuid

Id

projectId
required
string

Project ID

Response

200Snapshotsuccessful operation
checksum
read-only
string

Computed hash representing the current target specification value

createdAt
read-only
stringdate-time

Creation date of the snapshot

currentState
read-only
SnapshotCurrentState

Current observed state of the snapshot from the infrastructure

currentTasks
read-only
CurrentTask[]

Ongoing asynchronous tasks related to the snapshot

id
read-only
stringuuid

Unique identifier of the snapshot

resourceStatus
read-only
ResourceStatusEnum

Snapshot readiness in the system

ValuesCREATINGCREATION_PLANNEDDELETINGERROROUT_OF_SYNCREADYSUSPENDEDUNKNOWNUPDATING
targetSpec
read-only
SnapshotTargetSpec

Last target specification of the snapshot

updatedAt
read-only
stringdate-time

Last update date of the snapshot

404objectError 404 response

Example uses id = 00000000-0000-0000-0000-000000000000, projectId = string

$ curl https://api.eu.ovhcloud.com/v2/publicCloud/project/{projectId}/storage/block/snapshot/{id} \
  -H "authorization: Bearer $OVH_TOKEN"
ResponseExample
{ "checksum": "string", "createdAt": "2024-01-01T12:00:00Z", "currentState": { "description": "string", "location": { "availabilityZone": "string", "region": "string" }, "name": "string", "size": 0, "status": "AVAILABLE", "volumeId": "00000000-0000-0000-0000-000000000000" }, "currentTasks": [ { "errors": [ { "message": "string" } ], "id": "00000000-0000-0000-0000-000000000000", "link": "string", "status": "ERROR", "type": "string" } ], "id": "00000000-0000-0000-0000-000000000000", "resourceStatus": "CREATING", "targetSpec": { "description": "string", "location": { "availabilityZone": "string", "region": "string" }, "name": "string", "volumeId": "00000000-0000-0000-0000-000000000000" }, "updatedAt": "2024-01-01T12:00:00Z"}

Create a snapshotProduction

POST
/v2/publicCloud/project/{projectId}/storage/block/snapshot

Creates a snapshot of a volume. A new volume can then be created from it.

Path parameters

projectId
required
string

Project ID

Request body (required)

targetSpec
required
SnapshotTargetSpec

Desired target specification for the snapshot

Response

200Snapshotsuccessful operation
checksum
read-only
string

Computed hash representing the current target specification value

createdAt
read-only
stringdate-time

Creation date of the snapshot

currentState
read-only
SnapshotCurrentState

Current observed state of the snapshot from the infrastructure

currentTasks
read-only
CurrentTask[]

Ongoing asynchronous tasks related to the snapshot

id
read-only
stringuuid

Unique identifier of the snapshot

resourceStatus
read-only
ResourceStatusEnum

Snapshot readiness in the system

ValuesCREATINGCREATION_PLANNEDDELETINGERROROUT_OF_SYNCREADYSUSPENDEDUNKNOWNUPDATING
targetSpec
read-only
SnapshotTargetSpec

Last target specification of the snapshot

updatedAt
read-only
stringdate-time

Last update date of the snapshot

409objectError 409 response

Example uses projectId = string

$ curl https://api.eu.ovhcloud.com/v2/publicCloud/project/{projectId}/storage/block/snapshot \
  -H "authorization: Bearer $OVH_TOKEN"
ResponseExample
{ "checksum": "string", "createdAt": "2024-01-01T12:00:00Z", "currentState": { "description": "string", "location": { "availabilityZone": "string", "region": "string" }, "name": "string", "size": 0, "status": "AVAILABLE", "volumeId": "00000000-0000-0000-0000-000000000000" }, "currentTasks": [ { "errors": [ { "message": "string" } ], "id": "00000000-0000-0000-0000-000000000000", "link": "string", "status": "ERROR", "type": "string" } ], "id": "00000000-0000-0000-0000-000000000000", "resourceStatus": "CREATING", "targetSpec": { "description": "string", "location": { "availabilityZone": "string", "region": "string" }, "name": "string", "volumeId": "00000000-0000-0000-0000-000000000000" }, "updatedAt": "2024-01-01T12:00:00Z"}

Delete a snapshotProduction

DELETE
/v2/publicCloud/project/{projectId}/storage/block/snapshot/{id}

Deletes the snapshot.

Path parameters

id
required
stringuuid

Id

projectId
required
string

Project ID

Response

200Snapshotsuccessful operation
checksum
read-only
string

Computed hash representing the current target specification value

createdAt
read-only
stringdate-time

Creation date of the snapshot

currentState
read-only
SnapshotCurrentState

Current observed state of the snapshot from the infrastructure

currentTasks
read-only
CurrentTask[]

Ongoing asynchronous tasks related to the snapshot

id
read-only
stringuuid

Unique identifier of the snapshot

resourceStatus
read-only
ResourceStatusEnum

Snapshot readiness in the system

ValuesCREATINGCREATION_PLANNEDDELETINGERROROUT_OF_SYNCREADYSUSPENDEDUNKNOWNUPDATING
targetSpec
read-only
SnapshotTargetSpec

Last target specification of the snapshot

updatedAt
read-only
stringdate-time

Last update date of the snapshot

404objectError 404 response
409objectError 409 response

Example uses id = 00000000-0000-0000-0000-000000000000, projectId = string

$ curl https://api.eu.ovhcloud.com/v2/publicCloud/project/{projectId}/storage/block/snapshot/{id} \
  -H "authorization: Bearer $OVH_TOKEN"
ResponseExample
{ "checksum": "string", "createdAt": "2024-01-01T12:00:00Z", "currentState": { "description": "string", "location": { "availabilityZone": "string", "region": "string" }, "name": "string", "size": 0, "status": "AVAILABLE", "volumeId": "00000000-0000-0000-0000-000000000000" }, "currentTasks": [ { "errors": [ { "message": "string" } ], "id": "00000000-0000-0000-0000-000000000000", "link": "string", "status": "ERROR", "type": "string" } ], "id": "00000000-0000-0000-0000-000000000000", "resourceStatus": "CREATING", "targetSpec": { "description": "string", "location": { "availabilityZone": "string", "region": "string" }, "name": "string", "volumeId": "00000000-0000-0000-0000-000000000000" }, "updatedAt": "2024-01-01T12:00:00Z"}

Update a snapshotProduction

PUT
/v2/publicCloud/project/{projectId}/storage/block/snapshot/{id}

Updates the snapshot name and description. Send the current checksum to prevent overwriting a concurrent change.

Path parameters

id
required
stringuuid

Id

projectId
required
string

Project ID

Request body (required)

checksum
string

Optional concurrency-control checksum. When supplied, it must match the resource's current checksum or the request is rejected with a 409 checksum-mismatch conflict. When omitted or empty, the concurrency check is skipped and the write is forced (last-write-wins).

targetSpec
required
SnapshotUpdateTargetSpec

Desired target specification for the snapshot

Response

200Snapshotsuccessful operation
checksum
read-only
string

Computed hash representing the current target specification value

createdAt
read-only
stringdate-time

Creation date of the snapshot

currentState
read-only
SnapshotCurrentState

Current observed state of the snapshot from the infrastructure

currentTasks
read-only
CurrentTask[]

Ongoing asynchronous tasks related to the snapshot

id
read-only
stringuuid

Unique identifier of the snapshot

resourceStatus
read-only
ResourceStatusEnum

Snapshot readiness in the system

ValuesCREATINGCREATION_PLANNEDDELETINGERROROUT_OF_SYNCREADYSUSPENDEDUNKNOWNUPDATING
targetSpec
read-only
SnapshotTargetSpec

Last target specification of the snapshot

updatedAt
read-only
stringdate-time

Last update date of the snapshot

404objectError 404 response
409objectError 409 response

Example uses id = 00000000-0000-0000-0000-000000000000, projectId = string

$ curl https://api.eu.ovhcloud.com/v2/publicCloud/project/{projectId}/storage/block/snapshot/{id} \
  -H "authorization: Bearer $OVH_TOKEN"
ResponseExample
{ "checksum": "string", "createdAt": "2024-01-01T12:00:00Z", "currentState": { "description": "string", "location": { "availabilityZone": "string", "region": "string" }, "name": "string", "size": 0, "status": "AVAILABLE", "volumeId": "00000000-0000-0000-0000-000000000000" }, "currentTasks": [ { "errors": [ { "message": "string" } ], "id": "00000000-0000-0000-0000-000000000000", "link": "string", "status": "ERROR", "type": "string" } ], "id": "00000000-0000-0000-0000-000000000000", "resourceStatus": "CREATING", "targetSpec": { "description": "string", "location": { "availabilityZone": "string", "region": "string" }, "name": "string", "volumeId": "00000000-0000-0000-0000-000000000000" }, "updatedAt": "2024-01-01T12:00:00Z"}