VPS.org API

REST API दस्तावेज़ीकरण

बैकअप एपीआई

सर्वर बैकअप को प्रोग्रामेटिक रूप से प्रबंधित करें। अपने सर्वरों के लिए बैकअप की सूची बनाएं, बनाएं, पुनर्स्थापित करें और हटाएं।

अंतिमबिंदुओं 3 endpoints
आधार पथ /api/v1/backups
पाना /api/v1/backups/

सभी बैकअप की सूची बनाएं

अपने सभी सर्वरों पर मौजूद बैकअप की सूची प्राप्त करें।

क्वेरी पैरामीटर

पैरामीटर प्रकार आवश्यक विवरण
server_id integer नहीं सर्वर आईडी के आधार पर बैकअप को फ़िल्टर करें
backup_type string नहीं प्रकार के अनुसार फ़िल्टर करें: manual , automatic

उदाहरण अनुरोध

cURL
Python
JavaScript
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 बैकअप सूची सफलतापूर्वक प्राप्त कर ली गई है
401 अनधिकृत - अमान्य या अनुपलब्ध प्रमाणीकरण टोकन
डाक /api/v1/backups/

मैन्युअल बैकअप बनाएं

सर्वर का मैन्युअल बैकअप बनाएं। मैन्युअल बैकअप अपने आप समाप्त नहीं होते हैं।

अनुरोध निकाय पैरामीटर

पैरामीटर प्रकार आवश्यक विवरण
server_id integer हाँ बैकअप लेने के लिए सर्वर की आईडी
description string नहीं बैकअप के लिए वैकल्पिक विवरण

उदाहरण अनुरोध

cURL
Python
JavaScript
PHP
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 बैकअप निर्माण सफलतापूर्वक शुरू हो गया है
400 गलत अनुरोध - अमान्य पैरामीटर या गलत तरीके से बनाया गया अनुरोध
401 अनधिकृत - अमान्य या अनुपलब्ध प्रमाणीकरण टोकन
404 नहीं मिला - सर्वर मौजूद नहीं है
टिप्पणी: आप प्रति सर्वर अधिकतम 10 मैन्युअल बैकअप ले सकते हैं। स्वचालित बैकअप आपके प्लान की बैकअप रिटेंशन पॉलिसी के आधार पर रखे जाते हैं (आमतौर पर 7-30 दिन)।
मिटाना /api/v1/backups/{backup_id}/

बैकअप हटाएं

बैकअप को स्थायी रूप से हटा दिया गया है। इस कार्रवाई को पूर्ववत नहीं किया जा सकता है।

पथ पैरामीटर

पैरामीटर प्रकार आवश्यक विवरण
backup_id integer हाँ अद्वितीय बैकअप आईडी

उदाहरण अनुरोध

cURL
Python
JavaScript
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 बैकअप सफलतापूर्वक हटा दिया गया
401 अनधिकृत - अमान्य या अनुपलब्ध प्रमाणीकरण टोकन
404 नहीं मिला - बैकअप मौजूद नहीं है
चेतावनी: बैकअप को हटाना स्थायी होता है और इसे वापस नहीं लाया जा सकता। इसे हटाने से पहले सुनिश्चित कर लें कि अब आपको इस बैकअप की आवश्यकता नहीं है।

बैकअप से पुनर्स्थापित करना

बैकअप से सर्वर को पुनर्स्थापित करने के लिए, सर्वर एपीआई पुनर्स्थापना एंडपॉइंट का उपयोग करें:

POST /api/v1/servers/{server_id}/restore/
{
  "backup_id": 501
}

सर्वर पुनर्स्थापना के बारे में विस्तृत जानकारी के लिए, देखें सर्वर एपीआई दस्तावेज़ीकरण.

बैकअप के लिए सर्वोत्तम अभ्यास