VPS.org API

REST-API-Dokumentation

Backups-API

Server-Backups programmatisch verwalten. Backups Ihrer Server auflisten, erstellen, wiederherstellen und löschen.

Endpunkte 3 endpoints
Basispfad /api/v1/backups
ERHALTEN /api/v1/backups/

Alle Backups auflisten

Ruft eine Liste aller Backups auf Ihren Servern ab.

Abfrageparameter

Parameter Typ Erforderlich Beschreibung
server_id integer NEIN Backups nach Server-ID filtern
backup_type string NEIN Nach Typ filtern: manual , automatic

Beispielanfrage

cURL
Python
JavaScript
curl -X GET "https://admin.vps.org/api/v1/backups/?server_id=12345" \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -H "Content-Type: application/json"
import requests

url = "https://admin.vps.org/api/v1/backups/"
headers = {
    "Authorization": "Bearer YOUR_API_TOKEN",
    "Content-Type": "application/json"
}
params = {"server_id": 12345}

response = requests.get(url, headers=headers, params=params)
print(response.json())
const response = await fetch('https://admin.vps.org/api/v1/backups/?server_id=12345', {
  method: 'GET',
  headers: {
    'Authorization': 'Bearer YOUR_API_TOKEN',
    'Content-Type': 'application/json'
  }
});

const backups = await response.json();
console.log(backups);

Beispielantwort

{
  "count": 3,
  "results": [
    {
      "id": 501,
      "server": {
        "id": 12345,
        "name": "web-server-01"
      },
      "backup_type": "automatic",
      "status": "completed",
      "size_mb": 4523,
      "created_at": "2025-01-16T03:00:00Z",
      "expires_at": "2025-02-16T03:00:00Z",
      "description": "Automatic daily backup"
    },
    {
      "id": 499,
      "server": {
        "id": 12345,
        "name": "web-server-01"
      },
      "backup_type": "manual",
      "status": "completed",
      "size_mb": 4456,
      "created_at": "2025-01-14T10:30:00Z",
      "expires_at": null,
      "description": "Pre-update backup"
    },
    {
      "id": 495,
      "server": {
        "id": 12345,
        "name": "web-server-01"
      },
      "backup_type": "automatic",
      "status": "completed",
      "size_mb": 4389,
      "created_at": "2025-01-15T03:00:00Z",
      "expires_at": "2025-02-15T03:00:00Z",
      "description": "Automatic daily backup"
    }
  ]
}

Antwortstatuscodes

200 Sicherungsliste erfolgreich abgerufen
401 Nicht autorisiert – Ungültiges oder fehlendes Authentifizierungstoken
POST /api/v1/backups/

Manuelle Sicherung erstellen

Erstellen Sie eine manuelle Sicherung des Servers. Manuelle Sicherungen verfallen nicht automatisch.

Anfragekörperparameter

Parameter Typ Erforderlich Beschreibung
server_id integer Ja ID des zu sichernden Servers
description string NEIN Optionale Beschreibung für das Backup

Beispielanfrage

cURL
Python
JavaScript
PHP
curl -X POST "https://admin.vps.org/api/v1/backups/" \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "server_id": 12345,
    "description": "Pre-deployment backup"
  }'
import requests

url = "https://admin.vps.org/api/v1/backups/"
headers = {
    "Authorization": "Bearer YOUR_API_TOKEN",
    "Content-Type": "application/json"
}
data = {
    "server_id": 12345,
    "description": "Pre-deployment backup"
}

response = requests.post(url, headers=headers, json=data)
print(response.json())
const response = await fetch('https://admin.vps.org/api/v1/backups/', {
  method: 'POST',
  headers: {
    'Authorization': 'Bearer YOUR_API_TOKEN',
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
    server_id: 12345,
    description: 'Pre-deployment backup'
  })
});

const backup = await response.json();
console.log(backup);
$data = [
    'server_id' => 12345,
    'description' => 'Pre-deployment backup'
];

$ch = curl_init('https://admin.vps.org/api/v1/backups/');
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
curl_setopt($ch, CURLOPT_HTTPHEADER, [
    'Authorization: Bearer YOUR_API_TOKEN',
    'Content-Type: application/json'
]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

$response = curl_exec($ch);
$backup = json_decode($response, true);
curl_close($ch);

Beispielantwort

{
  "id": 502,
  "server": {
    "id": 12345,
    "name": "web-server-01"
  },
  "backup_type": "manual",
  "status": "in_progress",
  "size_mb": null,
  "created_at": "2025-01-16T15:45:00Z",
  "expires_at": null,
  "description": "Pre-deployment backup",
  "message": "Backup is being created. This may take several minutes depending on server size."
}

Antwortstatuscodes

201 Die Erstellung der Sicherung wurde erfolgreich gestartet.
400 Fehlerhafte Anfrage – Ungültige Parameter oder fehlerhafte Anfrage
401 Nicht autorisiert – Ungültiges oder fehlendes Authentifizierungstoken
404 Nicht gefunden – Server existiert nicht
Notiz: Sie können maximal 10 manuelle Backups pro Server erstellen. Automatische Backups werden gemäß den Aufbewahrungsrichtlinien Ihres Tarifs gespeichert (in der Regel 7–30 Tage).
LÖSCHEN /api/v1/backups/{backup_id}/

Sicherung löschen

Eine Sicherungskopie wird endgültig gelöscht. Dieser Vorgang kann nicht rückgängig gemacht werden.

Pfadparameter

Parameter Typ Erforderlich Beschreibung
backup_id integer Ja Eindeutige Backup-ID

Beispielanfrage

cURL
Python
JavaScript
curl -X DELETE "https://admin.vps.org/api/v1/backups/501/" \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -H "Content-Type: application/json"
import requests

backup_id = 501
url = f"https://admin.vps.org/api/v1/backups/{backup_id}/"
headers = {
    "Authorization": "Bearer YOUR_API_TOKEN",
    "Content-Type": "application/json"
}

response = requests.delete(url, headers=headers)
print(response.status_code)
const backupId = 501;
const response = await fetch(`https://admin.vps.org/api/v1/backups/${backupId}/`, {
  method: 'DELETE',
  headers: {
    'Authorization': 'Bearer YOUR_API_TOKEN',
    'Content-Type': 'application/json'
  }
});

console.log(response.status);

Antwortstatuscodes

204 Sicherung erfolgreich gelöscht
401 Nicht autorisiert – Ungültiges oder fehlendes Authentifizierungstoken
404 Nicht gefunden – Backup existiert nicht.
Warnung: Das Löschen einer Sicherungskopie ist endgültig und kann nicht rückgängig gemacht werden. Stellen Sie sicher, dass Sie diese Sicherungskopie nicht mehr benötigen, bevor Sie sie löschen.

Wiederherstellen aus Backups

Um einen Server aus einer Sicherung wiederherzustellen, verwenden Sie den Wiederherstellungsendpunkt der Server-API :

POST /api/v1/servers/{server_id}/restore/
{
  "backup_id": 501
}

Detaillierte Informationen zur Serverwiederherstellung finden Sie unter Server-API-Dokumentation.

Bewährte Methoden zur Datensicherung