VPS.org API

Tài liệu API REST

API máy chủ

Quản lý máy chủ VPS của bạn bằng lập trình. Tạo, cấu hình, điều khiển và giám sát các máy chủ ảo riêng của bạn.

Điểm cuối 9 endpoints
Đường cơ sở /api/v1/servers
LẤY /api/v1/servers/

Liệt kê tất cả máy chủ

Lấy danh sách tất cả các máy chủ trong tài khoản của bạn.

Tham số truy vấn

Tham số Kiểu Yêu cầu Sự miêu tả
status sợi dây KHÔNG Lọc theo trạng thái máy chủ: đang hoạt động, đã dừng, tạm dừng
location sợi dây KHÔNG Lọc theo vị trí trung tâm dữ liệu

Ví dụ về yêu cầu

cURL
Python
JavaScript
PHP
curl -X GET "https://admin.vps.org/api/v1/servers/" \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -H "Content-Type: application/json"
import requests

url = "https://admin.vps.org/api/v1/servers/"
headers = {
    "Authorization": "Bearer YOUR_API_TOKEN",
    "Content-Type": "application/json"
}

response = requests.get(url, headers=headers)
print(response.json())
const response = await fetch('https://admin.vps.org/api/v1/servers/', {
  method: 'GET',
  headers: {
    'Authorization': 'Bearer YOUR_API_TOKEN',
    'Content-Type': 'application/json'
  }
});

const servers = await response.json();
console.log(servers);
$ch = curl_init('https://admin.vps.org/api/v1/servers/');
curl_setopt($ch, CURLOPT_HTTPHEADER, [
    'Authorization: Bearer YOUR_API_TOKEN',
    'Content-Type: application/json'
]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

$response = curl_exec($ch);
$servers = json_decode($response, true);
curl_close($ch);

Ví dụ về câu trả lời

{
  "count": 2,
  "results": [
    {
      "id": 12345,
      "name": "web-server-01",
      "hostname": "web01.example.com",
      "status": "active",
      "ip_address": "203.0.113.10",
      "location": "us-west",
      "plan": {
        "id": 1,
        "name": "Standard VPS",
        "vcpus": 2,
        "memory": 4096,
        "storage": 80
      },
      "os": {
        "id": 5,
        "name": "Ubuntu 22.04 LTS"
      },
      "created_at": "2025-01-10T14:30:00Z",
      "updated_at": "2025-01-15T10:20:00Z"
    },
    {
      "id": 12346,
      "name": "db-server-01",
      "hostname": "db01.example.com",
      "status": "active",
      "ip_address": "203.0.113.11",
      "location": "us-east",
      "plan": {
        "id": 2,
        "name": "Performance VPS",
        "vcpus": 4,
        "memory": 8192,
        "storage": 160
      },
      "os": {
        "id": 3,
        "name": "Debian 12"
      },
      "created_at": "2025-01-12T09:15:00Z",
      "updated_at": "2025-01-16T08:45:00Z"
    }
  ]
}

Mã trạng thái phản hồi

200 Đã truy xuất danh sách máy chủ thành công
401 Không được phép - Mã thông báo API không hợp lệ hoặc bị thiếu
BƯU KIỆN /api/v1/servers/

Tạo máy chủ mới

Triển khai máy chủ VPS mới với cấu hình đã chỉ định.

Các tham số thân yêu cầu

Tham số Kiểu Yêu cầu Sự miêu tả
name sợi dây Đúng Tên máy chủ (chữ và số, cho phép dấu gạch ngang)
plan_id số nguyên Đúng Mã định danh của gói VPS
os_id số nguyên Đúng Mã định danh của hệ điều hành
location sợi dây Đúng Mã vị trí trung tâm dữ liệu
hostname sợi dây KHÔNG Tên máy chủ (FQDN)
ssh_key_id số nguyên KHÔNG ID khóa SSH cần cài đặt
backups_enabled boolean KHÔNG Bật tính năng sao lưu tự động (mặc định: false)

Ví dụ về yêu cầu

cURL
Python
JavaScript
PHP
curl -X POST "https://admin.vps.org/api/v1/servers/" \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "web-server-02",
    "plan_id": 1,
    "os_id": 5,
    "location": "us-west",
    "hostname": "web02.example.com",
    "backups_enabled": true
  }'
import requests

url = "https://admin.vps.org/api/v1/servers/"
headers = {
    "Authorization": "Bearer YOUR_API_TOKEN",
    "Content-Type": "application/json"
}
data = {
    "name": "web-server-02",
    "plan_id": 1,
    "os_id": 5,
    "location": "us-west",
    "hostname": "web02.example.com",
    "backups_enabled": True
}

response = requests.post(url, headers=headers, json=data)
print(response.json())
const response = await fetch('https://admin.vps.org/api/v1/servers/', {
  method: 'POST',
  headers: {
    'Authorization': 'Bearer YOUR_API_TOKEN',
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
    name: 'web-server-02',
    plan_id: 1,
    os_id: 5,
    location: 'us-west',
    hostname: 'web02.example.com',
    backups_enabled: true
  })
});

const server = await response.json();
console.log(server);
$data = [
    'name' => 'web-server-02',
    'plan_id' => 1,
    'os_id' => 5,
    'location' => 'us-west',
    'hostname' => 'web02.example.com',
    'backups_enabled' => true
];

$ch = curl_init('https://admin.vps.org/api/v1/servers/');
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);
$server = json_decode($response, true);
curl_close($ch);

Ví dụ về câu trả lời

{
  "id": 12347,
  "name": "web-server-02",
  "hostname": "web02.example.com",
  "status": "provisioning",
  "ip_address": null,
  "location": "us-west",
  "plan": {
    "id": 1,
    "name": "Standard VPS",
    "vcpus": 2,
    "memory": 4096,
    "storage": 80
  },
  "os": {
    "id": 5,
    "name": "Ubuntu 22.04 LTS"
  },
  "backups_enabled": true,
  "created_at": "2025-01-16T15:30:00Z",
  "updated_at": "2025-01-16T15:30:00Z",
  "message": "Server is being provisioned. This may take 2-5 minutes."
}

Mã trạng thái phản hồi

201 Máy chủ đã được tạo thành công
400 Yêu cầu không hợp lệ - Tham số không hợp lệ
401 Không được phép - Mã thông báo API không hợp lệ hoặc bị thiếu
402 Yêu cầu thanh toán - Số dư tín dụng không đủ
LẤY /api/v1/servers/{server_id}/

Lấy thông tin chi tiết máy chủ

Truy xuất thông tin chi tiết về một máy chủ cụ thể.

Tham số đường dẫn

Tham số Kiểu Yêu cầu Sự miêu tả
server_id số nguyên Đúng ID máy chủ duy nhất

Ví dụ về yêu cầu

cURL
Python
JavaScript
curl -X GET "https://admin.vps.org/api/v1/servers/12345/" \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -H "Content-Type: application/json"
import requests

server_id = 12345
url = f"https://admin.vps.org/api/v1/servers/{server_id}/"
headers = {
    "Authorization": "Bearer YOUR_API_TOKEN",
    "Content-Type": "application/json"
}

response = requests.get(url, headers=headers)
print(response.json())
const serverId = 12345;
const response = await fetch(`https://admin.vps.org/api/v1/servers/${serverId}/`, {
  method: 'GET',
  headers: {
    'Authorization': 'Bearer YOUR_API_TOKEN',
    'Content-Type': 'application/json'
  }
});

const server = await response.json();
console.log(server);

Ví dụ về câu trả lời

{
  "id": 12345,
  "name": "web-server-01",
  "hostname": "web01.example.com",
  "status": "active",
  "ip_address": "203.0.113.10",
  "ipv6_address": "2001:0db8::1",
  "location": "us-west",
  "plan": {
    "id": 1,
    "name": "Standard VPS",
    "vcpus": 2,
    "memory": 4096,
    "storage": 80,
    "bandwidth": 2048
  },
  "os": {
    "id": 5,
    "name": "Ubuntu 22.04 LTS"
  },
  "backups_enabled": true,
  "resource_usage": {
    "cpu_percent": 23.5,
    "memory_used": 2048,
    "disk_used": 35,
    "bandwidth_used": 450
  },
  "created_at": "2025-01-10T14:30:00Z",
  "updated_at": "2025-01-16T15:45:00Z"
}

Mã trạng thái phản hồi

200 Đã truy xuất thành công thông tin chi tiết máy chủ
401 Không được phép - Mã thông báo API không hợp lệ hoặc bị thiếu
404 Không tìm thấy - Máy chủ không tồn tại
ĐẶT /api/v1/servers/{server_id}/

Máy chủ cập nhật

Cập nhật cấu hình máy chủ. Tất cả các trường đều bắt buộc.

Tham số đường dẫn

Parameter Type Required Description
server_id integer Yes ID máy chủ duy nhất

Các tham số thân yêu cầu

Tham số Kiểu Yêu cầu Sự miêu tả
name sợi dây Đúng Tên máy chủ
hostname sợi dây Đúng Tên máy chủ (FQDN)
backups_enabled boolean Đúng Bật/tắt tính năng sao lưu tự động

Ví dụ về yêu cầu

cURL
Python
curl -X PUT "https://admin.vps.org/api/v1/servers/12345/" \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "web-server-updated",
    "hostname": "web-updated.example.com",
    "backups_enabled": true
  }'
import requests

server_id = 12345
url = f"https://admin.vps.org/api/v1/servers/{server_id}/"
headers = {
    "Authorization": "Bearer YOUR_API_TOKEN",
    "Content-Type": "application/json"
}
data = {
    "name": "web-server-updated",
    "hostname": "web-updated.example.com",
    "backups_enabled": True
}

response = requests.put(url, headers=headers, json=data)
print(response.json())

Mã trạng thái phản hồi

200 Máy chủ đã được cập nhật thành công.
400 Yêu cầu không hợp lệ - Tham số không hợp lệ
404 Không tìm thấy - Máy chủ không tồn tại
/api/v1/servers/{server_id}/

Cập nhật một phần máy chủ

Cập nhật các trường thông tin cụ thể của máy chủ. Chỉ những trường được cung cấp mới được cập nhật.

Ví dụ về yêu cầu

cURL
Python
curl -X PATCH "https://admin.vps.org/api/v1/servers/12345/" \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "new-server-name"
  }'
import requests

server_id = 12345
url = f"https://admin.vps.org/api/v1/servers/{server_id}/"
headers = {
    "Authorization": "Bearer YOUR_API_TOKEN",
    "Content-Type": "application/json"
}
data = {"name": "new-server-name"}

response = requests.patch(url, headers=headers, json=data)
print(response.json())
XÓA BỎ /api/v1/servers/{server_id}/

Xóa máy chủ

Xóa vĩnh viễn một máy chủ. Hành động này không thể hoàn tác.

Ví dụ về yêu cầu

cURL
Python
curl -X DELETE "https://admin.vps.org/api/v1/servers/12345/" \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -H "Content-Type: application/json"
import requests

server_id = 12345
url = f"https://admin.vps.org/api/v1/servers/{server_id}/"
headers = {
    "Authorization": "Bearer YOUR_API_TOKEN",
    "Content-Type": "application/json"
}

response = requests.delete(url, headers=headers)
print(response.status_code)

Mã trạng thái phản hồi

204 Máy chủ đã được xóa thành công
404 Không tìm thấy - Máy chủ không tồn tại
BƯU KIỆN /api/v1/servers/{server_id}/start/

Khởi động máy chủ

Khởi động lại máy chủ đã dừng.

Ví dụ về yêu cầu

cURL
Python
JavaScript
curl -X POST "https://admin.vps.org/api/v1/servers/12345/start/" \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -H "Content-Type: application/json"
import requests

server_id = 12345
url = f"https://admin.vps.org/api/v1/servers/{server_id}/start/"
headers = {
    "Authorization": "Bearer YOUR_API_TOKEN",
    "Content-Type": "application/json"
}

response = requests.post(url, headers=headers)
print(response.json())
const serverId = 12345;
const response = await fetch(`https://admin.vps.org/api/v1/servers/${serverId}/start/`, {
  method: 'POST',
  headers: {
    'Authorization': 'Bearer YOUR_API_TOKEN',
    'Content-Type': 'application/json'
  }
});

const result = await response.json();
console.log(result);

Ví dụ về câu trả lời

{
  "status": "success",
  "message": "Server is starting",
  "server": {
    "id": 12345,
    "name": "web-server-01",
    "status": "starting"
  }
}

Mã trạng thái phản hồi

200 Lệnh khởi động máy chủ đã được gửi thành công.
400 Yêu cầu không hợp lệ - Máy chủ đang hoạt động
404 Không tìm thấy - Máy chủ không tồn tại
BƯU KIỆN /api/v1/servers/{server_id}/stop/

Dừng máy chủ

Tắt máy chủ đang chạy một cách an toàn.

Ví dụ về yêu cầu

cURL
Python
curl -X POST "https://admin.vps.org/api/v1/servers/12345/stop/" \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -H "Content-Type: application/json"
import requests

server_id = 12345
url = f"https://admin.vps.org/api/v1/servers/{server_id}/stop/"
headers = {
    "Authorization": "Bearer YOUR_API_TOKEN",
    "Content-Type": "application/json"
}

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

Ví dụ về câu trả lời

{
  "status": "success",
  "message": "Server is stopping",
  "server": {
    "id": 12345,
    "name": "web-server-01",
    "status": "stopping"
  }
}
BƯU KIỆN /api/v1/servers/{server_id}/reboot/

Khởi động lại máy chủ

Khởi động lại máy chủ đang chạy một cách nhẹ nhàng.

Ví dụ về yêu cầu

cURL
Python
curl -X POST "https://admin.vps.org/api/v1/servers/12345/reboot/" \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -H "Content-Type: application/json"
import requests

server_id = 12345
url = f"https://admin.vps.org/api/v1/servers/{server_id}/reboot/"
headers = {
    "Authorization": "Bearer YOUR_API_TOKEN",
    "Content-Type": "application/json"
}

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

Ví dụ về câu trả lời

{
  "status": "success",
  "message": "Server is rebooting",
  "server": {
    "id": 12345,
    "name": "web-server-01",
    "status": "rebooting"
  }
}

Mã trạng thái phản hồi

200 Lệnh khởi động lại máy chủ đã được gửi thành công.
400 Yêu cầu không hợp lệ - Máy chủ không hoạt động
404 Không tìm thấy - Máy chủ không tồn tại