Liệt kê tất cả ảnh chụp nhanh
Truy xuất danh sách tất cả các ảnh chụp nhanh trên các máy chủ của bạn.
Tham số truy vấn
Tham số
Kiểu
Yêu cầu
Sự miêu tả
server_id
integer
KHÔNG
Lọc ảnh chụp nhanh theo ID máy chủ
Ví dụ về yêu cầu
curl -X GET "https://admin.vps.org/api/v1/snapshots/?server_id=12345" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json"
Copy
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())
Copy
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);
Copy
Ví dụ về câu trả lời
{
"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"
}
]
}
Mã trạng thái phản hồi
200
Đã truy xuất thành công danh sách ảnh chụp nhanh
401
Không được phép - Mã xác thực không hợp lệ hoặc bị thiếu.
Tạo ảnh chụp nhanh
Create a snapshot of a server's current state. Snapshots are point-in-time copies of the entire server.
Các tham số thân yêu cầu
Tham số
Kiểu
Yêu cầu
Sự miêu tả
server_id
integer
Đúng
ID của máy chủ cần chụp ảnh
name
string
Đúng
Tên cho ảnh chụp (chữ và số, dấu gạch ngang, dấu gạch dưới)
description
string
KHÔNG
Mô tả tùy chọn cho ảnh chụp nhanh
Ví dụ về yêu cầu
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"
}'
Copy
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())
Copy
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);
Copy
Ví dụ về câu trả lời
{
"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."
}
Mã trạng thái phản hồi
201
Quá trình tạo ảnh chụp nhanh đã bắt đầu thành công.
400
Bad Request - Invalid parameters or snapshot limit reached
401
Không được phép - Mã xác thực không hợp lệ hoặc bị thiếu.
404
Not Found - Server does not exist
Ghi chú: 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.
Khôi phục từ ảnh chụp nhanh
Restore a server to the state captured in a snapshot. This will overwrite all current data on the server.
Tham số đường dẫn
Tham số
Kiểu
Yêu cầu
Sự miêu tả
snapshot_id
integer
Đúng
ID ảnh chụp duy nhất
Ví dụ về yêu cầu
curl -X POST "https://admin.vps.org/api/v1/snapshots/801/restore/" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json"
Copy
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())
Copy
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);
Copy
Ví dụ về câu trả lời
{
"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"
}
}
Mã trạng thái phản hồi
200
Quá trình khôi phục đã bắt đầu thành công.
400
Bad Request - Server is not in a valid state for restoration
401
Không được phép - Mã xác thực không hợp lệ hoặc bị thiếu.
404
Không tìm thấy - Ảnh chụp màn hình không tồn tại
Cảnh báo: 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.
Xóa ảnh chụp nhanh
Xóa vĩnh viễn ảnh chụp màn hình. Thao tác này không thể hoàn tác.
Tham số đường dẫn
Tham số
Kiểu
Yêu cầu
Sự miêu tả
snapshot_id
integer
Đúng
ID ảnh chụp duy nhất
Ví dụ về yêu cầu
curl -X DELETE "https://admin.vps.org/api/v1/snapshots/801/" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json"
Copy
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)
Copy
Mã trạng thái phản hồi
204
Ảnh chụp màn hình đã được xóa thành công
401
Không được phép - Mã xác thực không hợp lệ hoặc bị thiếu.
404
Không tìm thấy - Ảnh chụp màn hình không tồn tại
Snapshots vs Backups
Understanding when to use snapshots versus backups:
API ảnh chụp nhanh
Mục đích: Quick point-in-time recovery
Tốc độ: Faster to create and restore (3-15 min)
Trường hợp sử dụng: Before risky operations (updates, config changes)
Kho: Stored on same infrastructure
Giới hạn: 5 snapshots per server
Phù hợp nhất cho: Short-term rollback capability
API sao lưu
Mục đích: Long-term data protection
Tốc độ: Slower to create and restore (varies)
Trường hợp sử dụng: Regular automated data protection
Kho: Separate backup storage
Giới hạn: 10 manual + automatic backups
Phù hợp nhất cho: Disaster recovery and compliance
Best Practices
Before Updates: Create a snapshot before major system updates
Testing: Use snapshots when testing configuration changes
Combined Strategy: Use both snapshots (short-term) and backups (long-term)
Clean Up: Delete old snapshots after successful updates
Server State: Consider stopping the server before creating critical snapshots