VPS.org API

Τεκμηρίωση REST API

API αντιγράφων ασφαλείας

Διαχειριστείτε τα αντίγραφα ασφαλείας των διακομιστών μέσω προγραμματισμού. Καταγράψτε, δημιουργήστε, επαναφέρετε και διαγράψτε αντίγραφα ασφαλείας για τους διακομιστές σας.

Τελικά σημεία 3 endpoints
Βασική διαδρομή /api/v1/backups
ΠΑΙΡΝΩ /api/v1/backups/

Λίστα όλων των αντιγράφων ασφαλείας

Ανακτήστε μια λίστα με όλα τα αντίγραφα ασφαλείας στους διακομιστές σας.

Παράμετροι ερωτήματος

Παράμετρος Τύπος Υποχρεούμαι Περιγραφή
server_id integer Οχι Φιλτράρισμα αντιγράφων ασφαλείας κατά ID διακομιστή
backup_type string Οχι Φιλτράρισμα κατά τύπο: manual , automatic

Παράδειγμα Αιτήματος

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);

Παράδειγμα απάντησης

{
  "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"
    }
  ]
}

Κωδικοί κατάστασης απόκρισης

200 Η λίστα αντιγράφων ασφαλείας ανακτήθηκε με επιτυχία
401 Μη εξουσιοδοτημένο - Μη έγκυρο ή λείπει το διακριτικό ελέγχου ταυτότητας
ΘΕΣΗ /api/v1/backups/

Δημιουργία χειροκίνητης δημιουργίας αντιγράφων ασφαλείας

Δημιουργήστε ένα μη αυτόματο αντίγραφο ασφαλείας ενός διακομιστή. Τα μη αυτόματα αντίγραφα ασφαλείας δεν λήγουν αυτόματα.

Παράμετροι σώματος αιτήματος

Παράμετρος Τύπος Υποχρεούμαι Περιγραφή
server_id integer Ναί Αναγνωριστικό διακομιστή για δημιουργία αντιγράφων ασφαλείας
description string Οχι Προαιρετική περιγραφή για το αντίγραφο ασφαλείας

Παράδειγμα Αιτήματος

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);

Παράδειγμα απάντησης

{
  "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."
}

Κωδικοί κατάστασης απόκρισης

201 Η δημιουργία αντιγράφων ασφαλείας ξεκίνησε με επιτυχία.
400 Λανθασμένο αίτημα - Μη έγκυρες παράμετροι ή λανθασμένη μορφή αιτήματος
401 Μη εξουσιοδοτημένο - Μη έγκυρο ή λείπει το διακριτικό ελέγχου ταυτότητας
404 Δεν βρέθηκε - Ο διακομιστής δεν υπάρχει
Σημείωμα: Μπορείτε να έχετε έως και 10 μη αυτόματα αντίγραφα ασφαλείας ανά διακομιστή. Τα αυτόματα αντίγραφα ασφαλείας διατηρούνται με βάση την πολιτική διατήρησης αντιγράφων ασφαλείας του προγράμματός σας (συνήθως 7-30 ημέρες).
ΔΙΑΓΡΑΦΩ /api/v1/backups/{backup_id}/

Διαγραφή αντιγράφου ασφαλείας

Οριστική διαγραφή ενός αντιγράφου ασφαλείας. Αυτή η ενέργεια δεν μπορεί να αναιρεθεί.

Παράμετροι διαδρομής

Παράμετρος Τύπος Υποχρεούμαι Περιγραφή
backup_id integer Ναί Μοναδικό αναγνωριστικό αντιγράφου ασφαλείας

Παράδειγμα Αιτήματος

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);

Κωδικοί κατάστασης απόκρισης

204 Το αντίγραφο ασφαλείας διαγράφηκε με επιτυχία.
401 Μη εξουσιοδοτημένο - Μη έγκυρο ή λείπει το διακριτικό ελέγχου ταυτότητας
404 Δεν βρέθηκε - Δεν υπάρχει αντίγραφο ασφαλείας
Προειδοποίηση: Η διαγραφή ενός αντιγράφου ασφαλείας είναι οριστική και δεν μπορεί να αναιρεθεί. Βεβαιωθείτε ότι δεν χρειάζεστε πλέον αυτό το αντίγραφο ασφαλείας πριν το διαγράψετε.

Επαναφορά από αντίγραφα ασφαλείας

Για να επαναφέρετε έναν διακομιστή από ένα αντίγραφο ασφαλείας, χρησιμοποιήστε το τελικό σημείο επαναφοράς του Servers API :

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

Για λεπτομερείς πληροφορίες σχετικά με την επαναφορά διακομιστή, ανατρέξτε στο Τεκμηρίωση API διακομιστών.

Βέλτιστες πρακτικές δημιουργίας αντιγράφων ασφαλείας