VPS.org API

Dokumentacioni i REST API

API-ja e kopjeve rezervë

Menaxhoni kopjet rezervë të serverit në mënyrë programore. Renditni, krijoni, rivendosni dhe fshini kopjet rezervë për serverët tuaj.

Pikat fundore 3 endpoints
Shtegu Bazë /api/v1/backups
MERR /api/v1/backups/

Listo të gjitha kopjet rezervë

Merrni një listë të të gjitha kopjeve rezervë në të gjithë serverët tuaj.

Parametrat e pyetjes

Parametri Lloji E detyrueshme Përshkrimi
server_id integer Jo Filtro kopjet rezervë sipas ID-së së serverit
backup_type string Jo Filtro sipas llojit: manual , automatic

Shembull Kërkese

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

Shembull Përgjigjeje

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

Kodet e Statusit të Përgjigjes

200 Lista rezervë u mor me sukses
401 I paautorizuar - Token vërtetimi i pavlefshëm ose mungon
POSTO /api/v1/backups/

Krijo kopje rezervë manuale

Krijo një kopje rezervë manuale të një serveri. Kopjet rezervë manuale nuk skadojnë automatikisht.

Parametrat e Trupit të Kërkesës

Parametri Lloji E detyrueshme Përshkrimi
server_id integer Po ID-ja e serverit për të bërë kopje rezervë
description string Jo Përshkrim opsional për kopjen rezervë

Shembull Kërkese

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

Shembull Përgjigjeje

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

Kodet e Statusit të Përgjigjes

201 Krijimi i kopjes rezervë filloi me sukses
400 Kërkesë e gabuar - Parametra të pavlefshëm ose kërkesë e keqformuar
401 I paautorizuar - Token vërtetimi i pavlefshëm ose mungon
404 Nuk u gjet - Serveri nuk ekziston
Shënim: Mund të keni maksimumi 10 kopje rezervë manuale për server. Kopjet rezervë automatike mbahen bazuar në politikën e ruajtjes së kopjeve rezervë të planit tuaj (zakonisht 7-30 ditë).
FSHIR /api/v1/backups/{backup_id}/

Fshi kopjen rezervë

Fshi përgjithmonë një kopje rezervë. Ky veprim nuk mund të zhbëhet.

Parametrat e Shtegut

Parametri Lloji E detyrueshme Përshkrimi
backup_id integer Po ID unike e rezervimit

Shembull Kërkese

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

Kodet e Statusit të Përgjigjes

204 Rezerva u fshi me sukses
401 I paautorizuar - Token vërtetimi i pavlefshëm ose mungon
404 Nuk u gjet - Rezerva nuk ekziston
Paralajmërim: Fshirja e një kopjeje rezervë është e përhershme dhe nuk mund të zhbëhet. Sigurohuni që nuk keni më nevojë për këtë kopje rezervë përpara se ta fshini.

Rivendosja nga kopjet rezervë

Për të rivendosur një server nga një kopje rezervë, përdorni pikën fundore të rivendosjes së Servers API :

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

Për informacion të detajuar rreth restaurimit të serverit, shihni Dokumentacioni i API-t të serverëve.

Praktikat më të Mira të Rezervimit