VPS.org API

Dokumentimi i API REST

API-ja e kopjeve rezervë

Listo backup-et e serverit, fillo një backup të ri dhe rikthe serverin nga njëri.

Pikat fundore 4
Shtegu Bazë /api/v1/backups
MERR /api/v1/backups/

Listo të gjitha kopjet rezervë

Kthen backup-et e të gjithë server-ëve tuaj, më të fundit në fillim, 25 për faqe. Nuk ka filtrim server: përdor server_hostname për t'i grupuar ato.

Të drejta të nevojshme: backups:list

Parametrat e pyetjes

Parametrat Lloji E detyrueshme Përshkrimi
page integer Jo. Numri i faqes, duke filluar nga 1

Shembull Kërkese

cURL
Python
JavaScript
curl -X GET "https://admin.vps.org/api/v1/backups/" \
  -H "Authorization: Bearer YOUR_API_TOKEN"
import requests

url = "https://admin.vps.org/api/v1/backups/"
headers = {"Authorization": "Bearer YOUR_API_TOKEN"}

response = requests.get(url, headers=headers)
for backup in response.json()["results"]:
    print(backup["id"], backup["server_hostname"], backup["created_at"])
const response = await fetch('https://admin.vps.org/api/v1/backups/', {
  headers: { 'Authorization': 'Bearer YOUR_API_TOKEN' }
});

const data = await response.json();
console.log(data.results);

Shembull Përgjigjeje

{
  "count": 96,
  "next": "https://admin.vps.org/api/v1/backups/?page=2",
  "previous": null,
  "results": [
    {
      "id": 5512,
      "server_hostname": "web-01",
      "name": "vzdump-qemu-1042-2026_09_14-16_44_10.vma.zst",
      "size_gb": 3.12,
      "deletion_date": "2026-09-21T20:45:40.697512Z",
      "days_remaining": 6,
      "created_at": "2026-09-14T20:45:40.699494Z"
    }
  ]
}

Fushat e Përgjigjes

Fusha Lloji Përshkrimi
id integer Identifikuesi i backup, përdoret nga pikat e fundit të marrjes dhe restaurimit
server_hostname string Emri i host i serverit nga i cili është marrë backup
name string Emri i file të arkivit të backup
size_gb number Madhësia e kompresuar në gigabyte
deletion_date datetime Kur backup do të hiqet automatikisht
days_remaining integer Ditë të plota mbeten deri në date_deletion
created_at datetime Ora e krijimit (ISO 8601, UTC)

Kodet e Statusit të Përgjigjes

200 Lista e backup u rimerr me sukses
403 Token i munguar apo i pavlefshëm API, ose token nuk ka të drejtat e kërkuara
MERR /api/v1/backups/{id}/

Merr një backup

Kthen një objekt backup me fushat e mësipërme.

curl -X GET "https://admin.vps.org/api/v1/backups/5512/" \
  -H "Authorization: Bearer YOUR_API_TOKEN"
POST /api/v1/servers/{uuid}/backup/

Krijo një backup

Rreshton një backup të një serveri të vendosur. Nuk kërkohet trup kërkese. Backup shfaqet në listë sapo të përfundojë, gjë që mund të marrë disa minuta në varësi të përdorimit të diskës.

Të drejta të nevojshme: servers:backup

cURL
Python
curl -X POST "https://admin.vps.org/api/v1/servers/8c4f2a1e-5b3d-4e6f-9a7b-1c2d3e4f5a6b/backup/" \
  -H "Authorization: Bearer YOUR_API_TOKEN"
import requests

server_uuid = "8c4f2a1e-5b3d-4e6f-9a7b-1c2d3e4f5a6b"
url = f"https://admin.vps.org/api/v1/servers/{server_uuid}/backup/"
headers = {"Authorization": "Bearer YOUR_API_TOKEN"}

response = requests.post(url, headers=headers)
print(response.json())

Shembull Përgjigjeje

{
  "message": "Backup queued successfully"
}

Kodet e Statusit të Përgjigjes

200 Veprimi u vendos në rradhë
400 Serveri nuk është vendosur ende
402 Asnjë metodë pagese në file, apo faturat e papaguara
404 Nuk u gjet ose i përket një llogarie tjetër
POST /api/v1/backups/{id}/restore/

Rivendos një server nga një backup

Ndalon serverin nga i cili është marrë backup, mbishkruan diskët e tij me backup dhe e rinis atë. Nuk kërkohet trup kërkese. Gjendja e serverit është në pritje ndërsa rivendosja është në proces.

Të drejta të nevojshme: backups:restore

curl -X POST "https://admin.vps.org/api/v1/backups/5512/restore/" \
  -H "Authorization: Bearer YOUR_API_TOKEN"
{
  "message": "Backup restore queued. The server will be stopped, restored, and restarted.",
  "backup": "vzdump-qemu-1042-2026_09_14-16_44_10.vma.zst",
  "job_id": "b6f1c7e2-3a4d-4f5e-8b9c-0d1e2f3a4b5c"
}
Paralajmërim: Gjithçka që është shkruar në server pasi është bërë backup do të humbas. Një rikthim nuk mund të anullohet.

Kodet e Statusit të Përgjigjes

200 Veprimi u vendos në rradhë
400 Serveri nuk është vendosur ende
404 Nuk u gjet ose i përket një llogarie tjetër

Shënim