VPS.org API

REST API Documentation

Սերվերների API

Ծրագրային կերպով կառավարեք ձեր VPS սերվերները: Ստեղծեք, կարգավորեք, վերահսկեք և վերահսկեք ձեր վիրտուալ մասնավոր սերվերները:

Վերջնակետեր 9
Հիմնական ուղի /api/v1/servers
ՍՏԱՆԱԼ /api/v1/servers/

Ցանկագրել բոլոր սերվերները

Ստացեք ձեր հաշվի բոլոր սերվերների ցանկը։

Հարցման պարամետրեր

Parameter Տեսակ Պարտադիր Description
status լար No Զտել սերվերի կարգավիճակով՝ ակտիվ, դադարեցված, կասեցված
location լար No Զտել ըստ տվյալների կենտրոնի գտնվելու վայրի

Օրինակի հարցում

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

Օրինակ պատասխան

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

Պատասխանի կարգավիճակի կոդեր

200 Հաջողությամբ ստացվեց սերվերների ցանկը
401 Անթույլատրելի - Անվավեր կամ բացակայող API տոկեն
POST /api/v1/servers/

Ստեղծել նոր սերվեր

Տեղակայեք նոր VPS սերվեր՝ նշված կոնֆիգուրացիայով։

Հարցման մարմնի պարամետրեր

Parameter Տեսակ Պարտադիր Description
name լար Այո Սերվերի անունը (տառատառային, թույլատրվում են գծիկներ)
plan_id ամբողջ թիվ Այո VPS պլանի ID-ն
os_id ամբողջ թիվ Այո Օպերացիոն համակարգի ID-ն
location լար Այո Տվյալների կենտրոնի գտնվելու վայրի կոդը
hostname լար No Սերվերի հոսթի անունը (FQDN)
ssh_key_id ամբողջ թիվ No Տեղադրվող SSH բանալու ID
backups_enabled բուլյան No Միացնել ավտոմատ պահուստավորումները (նախնական՝ կեղծ)

Օրինակի հարցում

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

Օրինակ պատասխան

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

Պատասխանի կարգավիճակի կոդեր

201 Սերվերը հաջողությամբ ստեղծվեց
400 Սխալ հարցում - Անվավեր պարամետրեր
401 Անթույլատրելի - Անվավեր կամ բացակայող API տոկեն
402 Պահանջվում է վճարում - Անբավարար կրեդիտներ
ՍՏԱՆԱԼ /api/v1/servers/{server_id}/

Ստանալ սերվերի մանրամասները

Ստացեք մանրամասն տեղեկություններ որոշակի սերվերի մասին։

Ուղիի պարամետրեր

Parameter Տեսակ Պարտադիր Description
server_id ամբողջ թիվ Այո Միակ սերվերի ID

Օրինակի հարցում

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

Օրինակ պատասխան

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

Պատասխանի կարգավիճակի կոդեր

200 Հաջողությամբ ստացվեցին սերվերի տվյալները
401 Անթույլատրելի - Անվավեր կամ բացակայող API տոկեն
404 Չի գտնվել - Սերվերը գոյություն չունի
ԴՐԵԼ /api/v1/servers/{server_id}/

Թարմացման սերվեր

Թարմացրեք սերվերի կարգավորումները։ Բոլոր դաշտերը պարտադիր են լրացնելու համար։

Ուղիի պարամետրեր

Parameter Type Required Description
server_id integer Yes Միակ սերվերի ID

Հարցման մարմնի պարամետրեր

Parameter Տեսակ Պարտադիր Description
name լար Այո Սերվերի անունը
hostname լար Այո Սերվերի հոսթի անունը (FQDN)
backups_enabled բուլյան Այո Միացնել/անջատել ավտոմատ պահուստավորումները

Օրինակի հարցում

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

Պատասխանի կարգավիճակի կոդեր

200 Սերվերը հաջողությամբ թարմացվեց
400 Սխալ հարցում - Անվավեր պարամետրեր
404 Չի գտնվել - Սերվերը գոյություն չունի
PATCH /api/v1/servers/{server_id}/

Մասնակի թարմացում սերվերի համար

Թարմացրեք սերվերի որոշակի դաշտերը: Միայն տրամադրված դաշտերը կթարմացվեն:

Օրինակի հարցում

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())
ՋՆՋԵԼ /api/v1/servers/{server_id}/

Ջնջել սերվերը

Մշտապես ջնջել սերվերը։ Այս գործողությունը չի կարող հետարկվել։

Օրինակի հարցում

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)

Պատասխանի կարգավիճակի կոդեր

204 Սերվերը հաջողությամբ ջնջվեց
404 Չի գտնվել - Սերվերը գոյություն չունի
POST /api/v1/servers/{server_id}/start/

Սկսել սերվերը

Միացրեք անջատված սերվերը։

Օրինակի հարցում

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

Օրինակ պատասխան

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

Պատասխանի կարգավիճակի կոդեր

200 Սերվերի մեկնարկի հրամանը հաջողությամբ ուղարկվեց
400 Սխալ հարցում - Սերվերն արդեն աշխատում է
404 Չի գտնվել - Սերվերը գոյություն չունի
POST /api/v1/servers/{server_id}/stop/

Դադարեցրեք սերվերը

Հեզորեն անջատեք աշխատող սերվերը։

Օրինակի հարցում

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

Օրինակ պատասխան

{
  "status": "success",
  "message": "Server is stopping",
  "server": {
    "id": 12345,
    "name": "web-server-01",
    "status": "stopping"
  }
}
POST /api/v1/servers/{server_id}/reboot/

Վերագործարկեք սերվերը

Հաճելիորեն վերագործարկեք աշխատող սերվերը։

Օրինակի հարցում

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

Օրինակ պատասխան

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

Պատասխանի կարգավիճակի կոդեր

200 Սերվերի վերագործարկման հրամանը հաջողությամբ ուղարկվեց
400 Սխալ հարցում - Սերվերը չի աշխատում
404 Չի գտնվել - Սերվերը գոյություն չունի