VPS.org API

REST API Documentation

API پشتیبان‌گیری

فهرست پشتیبان‌های سرور خود را بنویسید، پشتیبان جدیدی را شروع کنید و سرور را از یکی بازیابی کنید.

نقاط پایانی 4
مسیر پایه /api/v1/backups
دریافت کنید /api/v1/backups/

فهرست کردن تمام نسخه‌های پشتیبان

بازگرداندن پشتیبانهای همۀ کارسازهای شما ، اول جدیدترین ، ۲۵ در هر صفحه. هیچ پالایه کارساز وجود ندارد: از server_ hostname برای گروه‌بندی آنها استفاده کنید.

مجوز مورد نیاز: backups:list

پارامترهای پرس و جو

Parameter نوع مورد نیاز Description
page integer No شماره صفحه، از ۱ شروع می‌شود

درخواست نمونه

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

پاسخ نمونه

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

فیلدهای پاسخ

میدان نوع Description
id integer شناسۀ پشتیبان، توسط نقاط پایانی گرفتن و بازگردانی استفاده می‌شود
server_hostname string نام میزبان کارساز که از آن پشتیبان گرفته شده
name string نام پرونده بایگانی پشتیبان
size_gb number اندازه فشرده به گیگابایت
deletion_date datetime زمانی که پشتیبان به طور خودکار حذف شود
days_remaining integer روزهای کامل باقی‌مانده تا تاریخ حذف
created_at datetime زمان ایجاد) ISO 8601 ، UTC (

کدهای وضعیت پاسخ

200 فهرست پشتیبان با موفقیت بازیابی شد
403 نشان API مفقود یا نامعتبر، یا نشان اجازه مورد نیاز را ندارد
دریافت کنید /api/v1/backups/{id}/

گرفتن پشتیبان

یک شیء پشتیبان با فیلدهای بالا را برمی‌گرداند.

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

ایجاد پشتیبان

صف پشتیبان‌گیری از کارساز پراکنده را در صف قرار می‌دهد. بدنۀ درخواست نیازی نیست. پشتیبان‌گیری هنگامی که تمام شد ، در فهرست ظاهر می‌شود ، که ممکن است چند دقیقه بستگی به استفاده از دیسک طول بکشد.

مجوز مورد نیاز: 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())

پاسخ نمونه

{
  "message": "Backup queued successfully"
}

کدهای وضعیت پاسخ

200 عمل در صف قرار گرفت
400 کارساز هنوز پراکنده نشده است
402 روش پرداخت در پرونده وجود ندارد، یا فاکتورهای پرداخت نشده
404 پیدا نشد یا متعلق به حساب دیگری است
POST /api/v1/backups/{id}/restore/

بازگرداندن کارساز از یک پشتیبان

کارساز را که از آن پشتیبان گرفته شده متوقف می‌کند ، دیسک آن را با پشتیبان جای‌نوشت می‌کند و دوباره شروع می‌کند. بدنۀ درخواست نیازی نیست. وضعیت کارساز صف است ، در حالی که بازگردانی در حال اجراست.

مجوز مورد نیاز: 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"
}
هشدار: همه چیزهایی که پس از گرفتن پشتیبان روی کارساز نوشته شده، از بین می‌رود. بازگردانی را نمی‌توان برگرداند.

کدهای وضعیت پاسخ

200 عمل در صف قرار گرفت
400 کارساز هنوز پراکنده نشده است
404 پیدا نشد یا متعلق به حساب دیگری است

یادداشتها