VPS.org API

Takardun API na REST

API na Ajiyayyen Bayanai

Sarrafa madadin uwar garken ta hanyar shirye-shirye. Jera, ƙirƙira, dawo da, da kuma share madadin uwar garken.

Ƙarshen maki 3 endpoints
Hanyar Tushe /api/v1/backups
SAMU /api/v1/backups/

Jera Duk Ajiyar Bayanai

Dauko jerin duk madadin da aka adana a cikin sabar ku.

Sigogin Tambaya

Sigogi Nau'i Ana buƙata Bayani
server_id integer A'a Tace madadin ta hanyar ID na sabar
backup_type string A'a Tace ta nau'in: manual , automatic

Buƙatar Misali

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);

Misalin Amsar

{
  "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"
    }
  ]
}

Lambobin Matsayin Amsawa

200 An yi nasarar dawo da jerin madadin
401 Ba a ba da izini ba - Alamar tabbatarwa mara inganci ko ba ta ɓace ba
POST /api/v1/backups/

Ƙirƙiri Ajiyayyen da hannu

Ƙirƙiri madadin uwar garken da hannu. Ajiyewa da hannu ba ya ƙarewa ta atomatik.

Sigogin Jiki na Neman

Sigogi Nau'i Ana buƙata Bayani
server_id integer Ee ID na uwar garken don madadin
description string A'a Bayanin zaɓi don madadin

Buƙatar Misali

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);

Misalin Amsar

{
  "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."
}

Lambobin Matsayin Amsawa

201 An fara ƙirƙirar madadin cikin nasara
400 Buƙata mara kyau - Sigogi marasa inganci ko buƙatar da ba ta dace ba
401 Ba a ba da izini ba - Alamar tabbatarwa mara inganci ko ba ta ɓace ba
404 Ba a Samu Ba - Ba a Samu Sabar Ba
Lura: Za ka iya samun matsakaicin madadin bayanai 10 da hannu a kowace sabar. Ana ajiye madadin bayanai ta atomatik bisa ga manufar riƙe madadin bayanai na shirinka (yawanci kwanaki 7-30).
Goge /api/v1/backups/{backup_id}/

Share Ajiyayyen

Share madadin har abada. Ba za a iya soke wannan aikin ba.

Sigogi na Hanya

Sigogi Nau'i Ana buƙata Bayani
backup_id integer Ee ID na musamman na madadin

Buƙatar Misali

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);

Lambobin Matsayin Amsawa

204 An yi nasarar share madadin cikin nasara
401 Ba a ba da izini ba - Alamar tabbatarwa mara inganci ko ba ta ɓace ba
404 Ba a Samu Ba - Ajiyar Bayanai Ba Ta Nan
Gargaɗi: Share madadin abu ne na dindindin kuma ba za a iya gyara shi ba. Tabbatar ba kwa buƙatar wannan madadin kafin share shi.

Ana dawo da bayanai daga Backups

Don dawo da sabar daga madadin ajiya, yi amfani da ƙarshen mayar da sabar API :

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

Don cikakken bayani game da dawo da sabar, duba Takardun API na sabar.

Mafi Kyawun Ayyuka na Ajiyar Kuɗi