LaserData Cloud
API Reference

Backups

Create, restore, and delete point-in-time storage volume backups via the Supervisor API.

API Variables
ld-api-key
{tenant_id}

Set variables to auto-fill all examples and run requests in-browser.

Experimental. The Backups feature is under active development. Endpoints, request and response shapes, and behavior may change without notice.

Backups are point-in-time copies of a deployment's storage volumes that you can restore to recover from data loss or roll back after a problematic upgrade. Internally each backup is an EBS volume snapshot at the AWS level, taken from the deployment's node disks.

Backups are not the same as diagnostic snapshots. Snapshots capture a node's runtime state for troubleshooting; backups capture the data on disk so it can be restored later.

All endpoints use the Supervisor API ({supervisor_url}).

Available for AWS deployments with network storage only. Local NVMe SSD deployments do not support backups. Requires the Pro or Enterprise plan.

Required permission: deployment:read to list, deployment:manage to create, restore, or delete.

Backup statuses
pendingin_progresscompletedfaileddeleting
Backup types
manualscheduledpre_upgrade

Only one backup can be in progress per deployment at a time.


List Backups

GET
{supervisor_url}/deployments/{deployment_id}/backups

List all backups for the deployment.

bash
curl {supervisor_url}/deployments/{deployment_id}/backups \
-H "ld-api-key: YOUR_API_KEY"
[
  {
    "id": 1,
    "deployment_id": 611298765432109056,
    "node_id": 1,
    "name": "pre-migration",
    "backup_type": "manual",
    "status": "completed",
    "snapshot_ids": ["snap-0abc123def456789a"],
    "volume_ids": ["vol-0abc123def456789a"],
    "size_bytes": 53687091200,
    "region": "us-west-1",
    "remarks": null,
    "started_at": "2025-01-15T10:30:00Z",
    "completed_at": "2025-01-15T10:45:00Z",
    "expires_at": "2025-02-14T10:30:00Z",
    "created_at": "2025-01-15T10:30:00Z"
  }
]

snapshot_ids and volume_ids reference the underlying AWS resources held by the backup; they are returned for traceability.

Create a Backup

POST
{supervisor_url}/deployments/{deployment_id}/backups

Trigger an on-demand backup. Only one backup can be in progress per deployment at a time.

bash
curl -X POST {supervisor_url}/deployments/{deployment_id}/backups \
-H "ld-api-key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
  "name": "pre-migration",
  "remarks": "Captured before schema migration",
  "expires_in_days": 30
}'
FieldRequiredDescription
nameYesHuman-readable backup name
node_idNoSpecific node to back up. Omit to back up every node
backup_typeNomanual (default), scheduled, or pre_upgrade
remarksNoOptional free-form description
expires_in_daysNoAuto-delete after this many days

Returns 204 No Content. The backup runs asynchronously and transitions through pending to in_progress to completed.

Restore from a Backup

POST
{supervisor_url}/deployments/{deployment_id}/backups/{backup_id}/restore

Restore the deployment to the state captured in the backup. The deployment is stopped during the restore and restarted automatically.

bash
curl -X POST {supervisor_url}/deployments/{deployment_id}/backups/{backup_id}/restore \
-H "ld-api-key: YOUR_API_KEY"

Returns 204 No Content. Only one restore can run at a time per deployment.

Restore replaces the current storage volumes with the backup's. Any data written after the backup was created is lost. Capture a fresh backup before restoring if that data matters.

Delete a Backup

DELETE
{supervisor_url}/deployments/{deployment_id}/backups/{backup_id}

Delete a backup. Backups in `pending` or `in_progress` cannot be deleted - wait for them to finish first.

bash
curl -X DELETE {supervisor_url}/deployments/{deployment_id}/backups/{backup_id} \
-H "ld-api-key: YOUR_API_KEY"

Returns 204 No Content.

On this page