Skip to content

The Container Snapshots API lets you manage point-in-time snapshots of a container’s filesystem. Use these endpoints to list existing snapshots, create new ones, restore a container from a snapshot, update snapshot aliases, and delete snapshots you no longer need.

Get all snapshots for a container.

NameInTypeRequiredDescription
idpathstringYesUnique identifier of the container to retrieve snapshots for
Terminal window
curl -X GET "https://api.hoody.com/api/v1/containers/507f1f77bcf86cd799439011/snapshots" \
-H "Authorization: Bearer <token>"

Create a new snapshot for a container. Optionally provide an alias for human-friendly identification and an expiry in days.

NameInTypeRequiredDescription
idpathstringYesUnique identifier of the container to create snapshot for
FieldTypeRequiredDescription
aliasstringNoOptional user-friendly alias for the snapshot (max 100 characters)
expirynumberNoExpiry in days
Terminal window
curl -X POST "https://api.hoody.com/api/v1/containers/507f1f77bcf86cd799439011/snapshots" \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
-d '{
"alias": "pre-deployment-backup",
"expiry": 30
}'

PUT /api/v1/containers/{id}/snapshots/{name}

Section titled “PUT /api/v1/containers/{id}/snapshots/{name}”

Restore a container from a specified snapshot. This replaces the container’s current filesystem state with the contents of the snapshot.

NameInTypeRequiredDescription
idpathstringYesUnique identifier of the container to restore
namepathstringYesName of the snapshot to restore from
Terminal window
curl -X PUT "https://api.hoody.com/api/v1/containers/507f1f77bcf86cd799439011/snapshots/snap-20250115-103000" \
-H "Authorization: Bearer <token>"

PUT /api/v1/containers/{id}/snapshots/{name}/alias

Section titled “PUT /api/v1/containers/{id}/snapshots/{name}/alias”

Update the alias of an existing snapshot. Pass null for the alias to remove an existing alias.

NameInTypeRequiredDescription
idpathstringYesUnique identifier of the container
namepathstringYesName of the snapshot to update
FieldTypeRequiredDescription
aliasstring | nullYesNew alias for the snapshot. Set to null to remove alias (max 100 characters)
Terminal window
curl -X PUT "https://api.hoody.com/api/v1/containers/507f1f77bcf86cd799439011/snapshots/snap-20250115-103000/alias" \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
-d '{
"alias": "production-baseline"
}'

DELETE /api/v1/containers/{id}/snapshots/{name}

Section titled “DELETE /api/v1/containers/{id}/snapshots/{name}”

Delete a snapshot. This action cannot be undone.

NameInTypeRequiredDescription
idpathstringYesUnique identifier of the container
namepathstringYesName of the snapshot to delete
Terminal window
curl -X DELETE "https://api.hoody.com/api/v1/containers/507f1f77bcf86cd799439011/snapshots/snap-20250110-080000" \
-H "Authorization: Bearer <token>"