Jera Duk Hotunan Hotuna
Nemo jerin duk hotunan da aka ɗauka a cikin sabar ku.
Sigogin Tambaya
Parameters
Nau'i
Ana buƙata
@ action
server_id
integer
QDialogButtonBox
Tace hotuna ta hanyar ID na sabar
Buƙatar Misali
curl -X GET "https://admin.vps.org/api/v1/snapshots/?server_id=12345" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json"
@ action
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())
@ action
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);
@ action
Misalin Amsar
{
"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"
}
]
}
Lambobin Matsayin Amsawa
200
An sami nasarar dawo da jerin hotuna
401
Ba a ba da izini ba - Alamar tabbatarwa mara inganci ko ba ta ɓace ba
Ƙirƙiri Hoto
Yi wani hoton halin da ke ciki na mai ba da sabis na yanzu. Hoton na cikin lokaci na kwafin mai ba da sabis gaba ɗaya.
Sigogin Jiki na Neman
Parameters
Nau'i
Ana buƙata
@ action
server_id
integer
Ee
ID na uwar garken don ɗaukar hoto
name
string
Ee
Suna don hoton (lakabi, jan layi, ƙasan layi)
description
string
QDialogButtonBox
Bayanin zaɓi don hoton
Buƙatar Misali
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"
}'
@ action
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())
@ action
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);
@ action
Misalin Amsar
{
"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."
}
Lambobin Matsayin Amsawa
201
An fara ƙirƙirar hoto cikin nasara
400
Bad Request - Invalid parameters or snapshot limit reached
401
Ba a ba da izini ba - Alamar tabbatarwa mara inganci ko ba ta ɓace ba
404
Not Found - Server does not exist
@ action 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.
Dawo da shi daga Snapshot
Mai da mai ba da sabis zuwa halin da aka kama a cikin hoto na lokaci. Wannan zai sake rubuta duk bayanan da ke cikin mai ba da sabis.
Sigogi na Hanya
Parameters
Nau'i
Ana buƙata
@ action
snapshot_id
integer
Ee
ID na musamman na hoto
Buƙatar Misali
curl -X POST "https://admin.vps.org/api/v1/snapshots/801/restore/" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json"
@ action
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())
@ action
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);
@ action
Misalin Amsar
{
"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"
}
}
Lambobin Matsayin Amsawa
200
An fara dawo da kayan cikin nasara
400
Bad Request - Server is not in a valid state for restoration
401
Ba a ba da izini ba - Alamar tabbatarwa mara inganci ko ba ta ɓace ba
404
Ba a Samu ba - Hotunan hoto ba su wanzu ba
Gargaɗi: 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.
Share Hoton Hotuna
Share hoton hoto na dindindin. Ba za a iya soke wannan aikin ba.
Sigogi na Hanya
Parameters
Nau'i
Ana buƙata
@ action
snapshot_id
integer
Ee
ID na musamman na hoto
Buƙatar Misali
curl -X DELETE "https://admin.vps.org/api/v1/snapshots/801/" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json"
@ action
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)
@ action
Lambobin Matsayin Amsawa
204
An goge hoto cikin nasara
401
Ba a ba da izini ba - Alamar tabbatarwa mara inganci ko ba ta ɓace ba
404
Ba a Samu ba - Hotunan hoto ba su wanzu ba
Snapshots vs Backups
Fahimtar lokacin da za'a yi amfani da hotunan hoto da na riga-kafi:
Hotunan API na Hotuna
Manufa: Quick point-in-time recovery
Sauri: Faster to create and restore (3-15 min)
Amfani da Shari'a: Before risky operations (updates, config changes)
Ajiya: Stored on same infrastructure
QDialogButtonBox 5 snapshots per server
Mafi Kyau Ga: Short-term rollback capability
API na Ajiyayyen Bayanai
Manufa: Long-term data protection
Sauri: Slower to create and restore (varies)
Amfani da Shari'a: Regular automated data protection
Ajiya: Separate backup storage
QDialogButtonBox 10 manual + automatic backups
Mafi Kyau Ga: Disaster recovery and compliance
QDialogButtonBox
Bayan sabuntawa: Yi wani hoton kwanan wata kafin sabunta tsarin
QDialogButtonBox Yi amfani da hotunan lokaci yayin gwajin canji a cikin tsari
Tsarin: Yi amfani da hotunan hoto (na lokaci mai tsawo) da kuma na ajiya (na lokaci mai tsawo)
@ action Cire hotunan da aka dauka bayan an sabunta su da nasara
Jigon Masana'anta: Ka yi tunani game da dakatar da mai ba da sabis kafin ka yi hotunan kwanan wata masu muhimmanci