List opp alle øyeblikksbilder
Hent en liste over alle øyeblikksbilder på tvers av serverne dine.
Spørringsparametere
Parameter
Type
Obligatorisk
Beskrivelse
server_id
integer
Nei
Filtrer øyeblikksbilder etter server-ID
Eksempelforespørsel
curl -X GET "https://admin.vps.org/api/v1/snapshots/?server_id=12345" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json"
Kopier
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())
Kopier
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);
Kopier
Eksempelsvar
{
"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"
}
]
}
Svarstatuskoder
200
Hentet øyeblikksbildeliste
401
Uautorisert – Ugyldig eller manglende autentiseringstoken
Lag øyeblikksbilde
Lag et skjermbilde av tjenerens nåværende tilstand. Skjermbilder er punkt- i- tid- kopier av hele tjeneren.
Forespørselsparametere
Parameter
Type
Obligatorisk
Beskrivelse
server_id
integer
Ja
ID til serveren som skal tas
name
string
Ja
Navn på øyeblikksbildet (alfanumerisk, bindestreker, understrek)
description
string
Nei
Valgfri beskrivelse for øyeblikksbildet
Eksempelforespørsel
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"
}'
Kopier
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())
Kopier
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);
Kopier
Eksempelsvar
{
"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."
}
Svarstatuskoder
201
Oppretting av øyeblikksbilde startet
400
Bad Request - Invalid parameters or snapshot limit reached
401
Uautorisert – Ugyldig eller manglende autentiseringstoken
404
Not Found - Server does not exist
Merk: 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.
Gjenopprett fra øyeblikksbilde
Gjenopprett en tjener tilbake til tilstanden tatt i et skjermbilde. Dette vil overskrive alle gjeldende data på tjeneren.
Baneparametere
Parameter
Type
Obligatorisk
Beskrivelse
snapshot_id
integer
Ja
Unik snapshot-ID
Eksempelforespørsel
curl -X POST "https://admin.vps.org/api/v1/snapshots/801/restore/" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json"
Kopier
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())
Kopier
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);
Kopier
Eksempelsvar
{
"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"
}
}
Svarstatuskoder
200
Gjenoppretting startet
400
Bad Request - Server is not in a valid state for restoration
401
Uautorisert – Ugyldig eller manglende autentiseringstoken
404
Ikke funnet – Øyeblikksbildet finnes ikke
Advarsel: 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.
Slett øyeblikksbilde
Slett et øyeblikksbilde permanent. Denne handlingen kan ikke angres.
Baneparametere
Parameter
Type
Obligatorisk
Beskrivelse
snapshot_id
integer
Ja
Unik snapshot-ID
Eksempelforespørsel
curl -X DELETE "https://admin.vps.org/api/v1/snapshots/801/" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json"
Kopier
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)
Kopier
Svarstatuskoder
204
Øyeblikksbildet er slettet
401
Uautorisert – Ugyldig eller manglende autentiseringstoken
404
Ikke funnet – Øyeblikksbildet finnes ikke
Snapshots vs Backups
Forståelse av når skjermbilder skal brukes mot sikkerhetskopier:
API- bilder
Hensikt: Quick point-in-time recovery
Fart: Faster to create and restore (3-15 min)
Brukstilfelle: Before risky operations (updates, config changes)
Lagring: Stored on same infrastructure
Grense: 5 snapshots per server
Best for: Short-term rollback capability
Sikkerhetskopierings-API
Hensikt: Long-term data protection
Fart: Slower to create and restore (varies)
Brukstilfelle: Regular automated data protection
Lagring: Separate backup storage
Grense: 10 manual + automatic backups
Best for: Disaster recovery and compliance
Beste praksis
Før oppdateringer: Lag et skjermbilde før større systemoppdateringer
Prøving: Bruk skjermbilder når oppsettet testes
Kombinert strategi: Bruk både skjermbilder (korttids) og sikkerhetskopier (langsiktig)
Rydd opp: Slett gamle skjermbilder etter vellykkede oppdateringer
Tjenertilstand: Tenk på å stoppe tjeneren før det lages kritiske skjermbilder