Zobraziť všetky snímky
Získajte zoznam všetkých snímok na vašich serveroch.
Parametre dopytu
Parameter
Typ
Povinné
Opis
server_id
integer
Nie
Filtrovať snímky podľa ID servera
Príklad žiadosti
curl -X GET "https://admin.vps.org/api/v1/snapshots/?server_id=12345" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json"
Kopírovať
import requests
url = "https://admin.vps.org/api/v1/snapshots/"
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())
Kopírovať
const response = await fetch('https://admin.vps.org/api/v1/snapshots/?server_id=12345', {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Content-Type': 'application/json'
}
});
const snapshots = await response.json();
console.log(snapshots);
Kopírovať
Príklad odpovede
{
"count": 2,
"results": [
{
"id": 801,
"server": {
"id": 12345,
"name": "web-server-01"
},
"name": "pre-migration-snapshot",
"status": "completed",
"size_mb": 5120,
"created_at": "2025-01-15T18:30:00Z",
"description": "Before major migration"
},
{
"id": 798,
"server": {
"id": 12345,
"name": "web-server-01"
},
"name": "weekly-snapshot-2025-01-08",
"status": "completed",
"size_mb": 4856,
"created_at": "2025-01-08T12:00:00Z",
"description": "Weekly snapshot"
}
]
}
Kódy stavu odpovede
200
Zoznam snímok bol úspešne načítaný
401
Neoprávnené – neplatný alebo chýbajúci autentifikačný token
Vytvoriť snímku
Vytvorenie snímky aktuálneho stavu servera.Snímky sú kópie celého servera v určitom čase.
Parametre tela požiadavky
Parameter
Typ
Povinné
Opis
server_id
integer
Áno
ID servera na vytvorenie snímky
name
string
Áno
Názov snímky (abenchmark, pomlčky, podčiarkovníky)
description
string
Nie
Voliteľný popis snímky
Príklad žiadosti
curl -X POST "https://admin.vps.org/api/v1/snapshots/" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"server_id": 12345,
"name": "before-update-snapshot",
"description": "Snapshot before system update"
}'
Kopírovať
import requests
url = "https://admin.vps.org/api/v1/snapshots/"
headers = {
"Authorization": "Bearer YOUR_API_TOKEN",
"Content-Type": "application/json"
}
data = {
"server_id": 12345,
"name": "before-update-snapshot",
"description": "Snapshot before system update"
}
response = requests.post(url, headers=headers, json=data)
print(response.json())
Kopírovať
const response = await fetch('https://admin.vps.org/api/v1/snapshots/', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Content-Type': 'application/json'
},
body: JSON.stringify({
server_id: 12345,
name: 'before-update-snapshot',
description: 'Snapshot before system update'
})
});
const snapshot = await response.json();
console.log(snapshot);
Kopírovať
Príklad odpovede
{
"id": 802,
"server": {
"id": 12345,
"name": "web-server-01"
},
"name": "before-update-snapshot",
"status": "in_progress",
"size_mb": null,
"created_at": "2025-01-16T16:15:00Z",
"description": "Snapshot before system update",
"message": "Snapshot is being created. This may take 3-10 minutes depending on server size."
}
Kódy stavu odpovede
201
Vytvorenie snímky sa úspešne začalo
400
Bad Request - Invalid parameters or snapshot limit reached
401
Neoprávnené – neplatný alebo chýbajúci autentifikačný token
404
Not Found - Server does not exist
Poznámka: You can have a maximum of 5 snapshots per server. Creating a snapshot while the server is running may result in filesystem inconsistencies. For best results, stop the server before creating a snapshot.
Obnoviť zo snímky
Obnovenie servera do stavu zachyteného v snímke, čím sa prepíšu všetky aktuálne údaje na serveri.
Parametre cesty
Parameter
Typ
Povinné
Opis
snapshot_id
integer
Áno
Jedinečné ID snímky
Príklad žiadosti
curl -X POST "https://admin.vps.org/api/v1/snapshots/801/restore/" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json"
Kopírovať
import requests
snapshot_id = 801
url = f"https://admin.vps.org/api/v1/snapshots/{snapshot_id}/restore/"
headers = {
"Authorization": "Bearer YOUR_API_TOKEN",
"Content-Type": "application/json"
}
response = requests.post(url, headers=headers)
print(response.json())
Kopírovať
const snapshotId = 801;
const response = await fetch(`https://admin.vps.org/api/v1/snapshots/${snapshotId}/restore/`, {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Content-Type': 'application/json'
}
});
const result = await response.json();
console.log(result);
Kopírovať
Príklad odpovede
{
"status": "success",
"message": "Server is being restored from snapshot. This may take 5-15 minutes.",
"snapshot": {
"id": 801,
"name": "pre-migration-snapshot",
"created_at": "2025-01-15T18:30:00Z"
},
"server": {
"id": 12345,
"name": "web-server-01",
"status": "restoring"
}
}
Kódy stavu odpovede
200
Obnova sa úspešne spustila
400
Bad Request - Server is not in a valid state for restoration
401
Neoprávnené – neplatný alebo chýbajúci autentifikačný token
404
Nenájdené – Snímka neexistuje
POZOR: Restoring from a snapshot will overwrite all current data on the server. This action cannot be undone. The server will be automatically stopped before restoration begins.
Odstrániť snímku
Natrvalo odstrániť snímku. Túto akciu nie je možné vrátiť späť.
Parametre cesty
Parameter
Typ
Povinné
Opis
snapshot_id
integer
Áno
Jedinečné ID snímky
Príklad žiadosti
curl -X DELETE "https://admin.vps.org/api/v1/snapshots/801/" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json"
Kopírovať
import requests
snapshot_id = 801
url = f"https://admin.vps.org/api/v1/snapshots/{snapshot_id}/"
headers = {
"Authorization": "Bearer YOUR_API_TOKEN",
"Content-Type": "application/json"
}
response = requests.delete(url, headers=headers)
print(response.status_code)
Kopírovať
Kódy stavu odpovede
204
Snímka bola úspešne odstránená
401
Neoprávnené – neplatný alebo chýbajúci autentifikačný token
404
Nenájdené – Snímka neexistuje
Snapshots vs Backups
Pochopenie, kedy používať snímky a kedy zálohy:
Rozhranie API pre snímky
Účel: Quick point-in-time recovery
Rýchlosť: Faster to create and restore (3-15 min)
Prípad použitia: Before risky operations (updates, config changes)
Skladovanie: Stored on same infrastructure
Limit: 5 snapshots per server
Najlepšie pre: Short-term rollback capability
Zálohovacie API
Účel: Long-term data protection
Rýchlosť: Slower to create and restore (varies)
Prípad použitia: Regular automated data protection
Skladovanie: Separate backup storage
Limit: 10 manual + automatic backups
Najlepšie pre: Disaster recovery and compliance
Najlepšie postupy
Pred aktualizáciami: Vytvorenie snímky pred hlavnými aktualizáciami systému
Testovanie: Použitie snímok pri testovaní zmien konfigurácie
Kombinovaná stratégia: Používajte snímky (krátkodobé) aj zálohy (dlhodobé)
Vyčistiť: Odstránenie starých snímok po úspešnej aktualizácii
Štát servera: Zvážte zastavenie servera pred vytvorením kritických snímok