Logo
OpenScaler

Create backup

POST
/v1/backups

Create a backup of the given Computer (VM). The POST returns the pending backup when the job has started. If you send optional sequence_id, watch progress on GET /v1/events/create-backup/{sequence_id} until 100%. If you omit sequence_id, poll this backup's status endpoint instead.

Authorization

bearer_auth
AuthorizationBearer <token>

Authentication

Create an API token on Profile. Send it in the Authorization header:

Authorization: Bearer os1_...

Do not use the Keycloak web-session JWT as an API token. Keep the secret secure and do not share it.

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Request body for creating a VM backup.

Response Body

application/json

application/json

text/pain

application/json

application/json

curl -X POST "https://example.com/v1/backups" \  -H "Content-Type: application/json" \  -d '{    "name": "backup-of-my-vm",    "description": "Nightly full backup",    "project_id": "default",    "backup_type": "full",    "vm_id": "cc3ccab2-0ae2-11ef-9136-6a0922f6458b"  }'
{  "id": "6ba7b810-9dad-11d1-80b4-00c04fd430c8",  "name": "backup-of-my-vm",  "user_id": "user-abc123",  "project_id": "default",  "created_at": "2024-11-15T10:30:00Z",  "backup_type": "full",  "status": "complete",  "size": 12.5,  "region": "alg1",  "target_type": "vm",  "target_id": "cc3ccab2-0ae2-11ef-9136-6a0922f6458b"}
{  "errors": [    {      "message": "'vcpus' field must be an integer",      "field": "resource_id"    }  ]}
"Access denied"
{  "errors": [    {      "message": "User not initialized. Send POST /v1/init, then retry the request."    }  ]}
{  "errors": [    {      "message": "VM with ID 23 not found"    }  ]}