Gestisci i backup dei server in modo programmatico. Elenca, crea, ripristina ed elimina i backup dei tuoi server.
Recupera un elenco di tutti i backup sui tuoi server.
| Parametro | Tipo | Necessario | Descrizione |
|---|---|---|---|
server_id |
integer | NO | Filtra i backup in base all'ID del server |
backup_type |
string | NO | Filtra per tipo: manual , automatic |
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 | Elenco di backup recuperato con successo |
| 401 | Non autorizzato - Token di autenticazione non valido o mancante |
Crea un backup manuale di un server. I backup manuali non scadono automaticamente.
| Parametro | Tipo | Necessario | Descrizione |
|---|---|---|---|
server_id |
integer | SÌ | ID del server di cui eseguire il backup |
description |
string | NO | Descrizione facoltativa per il backup |
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 | Creazione del backup avviata con successo |
| 400 | Richiesta non valida - Parametri non validi o richiesta malformata |
| 401 | Non autorizzato - Token di autenticazione non valido o mancante |
| 404 | Non trovato - Il server non esiste |
Elimina definitivamente un backup. Questa azione non può essere annullata.
| Parametro | Tipo | Necessario | Descrizione |
|---|---|---|---|
backup_id |
integer | SÌ | ID di backup univoco |
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 | Backup eliminato correttamente |
| 401 | Non autorizzato - Token di autenticazione non valido o mancante |
| 404 | Non trovato - Il backup non esiste |
Per ripristinare un server da un backup, utilizzare l'endpoint di ripristino dell'API Servers :
POST /api/v1/servers/{server_id}/restore/
{
"backup_id": 501
}
Per informazioni dettagliate sul ripristino del server, vedere Documentazione API dei server.