Ustvarite, pregledajte, napajajte, spremenite velikost in izbrišete strežnike VPS. Strežniki so identificirani po uuid.
Vrne strežnike v vašem računu, najnovejše, 25 na stran. Strežniki, ki se brišejo, niso vključeni.
Zahtevano dovoljenje: servers:list
| Parameter | Vrsta | Zahtevano | Opis |
|---|---|---|---|
page |
integer | Ne | Številka strani, začetna od 1 |
page_size |
integer | Ne | Rezultati na stran (privzeto 25, največ 100) |
curl -X GET "https://admin.vps.org/api/v1/servers/" \
-H "Authorization: Bearer YOUR_API_TOKEN"
import requests
url = "https://admin.vps.org/api/v1/servers/"
headers = {"Authorization": "Bearer YOUR_API_TOKEN"}
response = requests.get(url, headers=headers)
for server in response.json()["results"]:
print(server["uuid"], server["hostname"], server["status"])
const response = await fetch('https://admin.vps.org/api/v1/servers/', {
headers: { 'Authorization': 'Bearer YOUR_API_TOKEN' }
});
const data = await response.json();
console.log(data.results);
$ch = curl_init('https://admin.vps.org/api/v1/servers/');
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Authorization: Bearer YOUR_API_TOKEN']);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$data = json_decode(curl_exec($ch), true);
curl_close($ch);
foreach ($data['results'] as $server) {
echo $server['hostname'] . ' ' . $server['status'] . "\n";
}
{
"count": 2,
"next": null,
"previous": null,
"results": [
{
"uuid": "8c4f2a1e-5b3d-4e6f-9a7b-1c2d3e4f5a6b",
"hostname": "web-01",
"status": "on",
"error_description": null,
"location_name": "New Jersey",
"plan_name": "1 vCPU / 2 GB RAM / 10 GB",
"os_name": "Ubuntu",
"ipv4_addresses": ["203.0.113.10"],
"ipv6_addresses": ["2001:db8:2:dd::f9:6b"],
"created_at": "2026-07-30T03:54:14.914364Z",
"deployed": true
},
{
"uuid": "2d7e9b40-6c1a-4f3e-8b5d-9a0c1e2f3b4d",
"hostname": "db-01",
"status": "queue",
"error_description": null,
"location_name": "New Jersey",
"os_name": "Debian",
"ipv4_addresses": [],
"ipv6_addresses": [],
"created_at": "2026-09-14T19:33:49.426508Z",
"deployed": false
}
]
}
| Polje | Vrsta | Opis |
|---|---|---|
uuid |
string | Identifikator strežnika, uporabljen v vseh drugih končnih točkah strežnika |
hostname |
string | Ime imennika, ki ste ga izbrali pri ustvarjanju strežnika |
status |
string | Trenutno stanje. Spodaj glej vrednosti stanja strežnika. |
error_description |
string | null | Podrobnosti o zadnji napaki pri napaki statusa, sicer nič |
location_name |
string | Ime lokacije, v kateri teče strežnik |
os_name |
string | Ime operacijskega sistema brez različice |
plan_name |
string | Povzetek načrta, npr. 1 vCPU / 2 GB RAM / 10 GB |
ipv4_addresses |
array | IPv4 naslovi kot nizi. Prazni so, dokler se strežnik ne uporabi, in načrti brez IPv4. |
ipv6_addresses |
array | IPv6 naslovi kot nizi. Prazen je, dokler se strežnik ne uporabi. |
created_at |
datetime | Čas ustvarjanja (ISO 8601, UTC) |
deployed |
boolean | Točno, ko je določba končana |
| 200 | Seznam strežnikov uspešno pridobljen |
| 403 | Manjkajoči ali neveljavni API žeton, ali token manjka zahtevano dovoljenje |
Zaporedje novega strežnika za uvajanje in ga takoj vrne s statusno vrstico. Zagotavljanje nadaljuje v ozadju: anketa stanja opazovati opazovani do začetka uporabe. Ko je strežnik pripravljen, so njegovi podatki o prijavi poslani poštnemu naslovu lastniku računa.
Vaš račun potrebuje shranjeno način plačila. Odvisno od zgodovine vašega računa, se lahko začasna pred-avtorizacija v enem tednu od cene načrta (vsaj 1 USD) na vašo kartico pred ustvarjanjem strežnika.
Zahtevano dovoljenje: servers:create
| Parameter | Vrsta | Zahtevano | Opis |
|---|---|---|---|
hostname |
string | Da | At least 3 characters. Letters, digits, hyphens and periods only. |
location_id |
integer | Da | Id aktivne lokacije iz API lokacije |
plan_uuid |
string | Da | Uuid aktivnega načrta iz načrta API |
operating_system_version_uuid |
string | Da | Uuid aktivnega vnosa v seznamu različic operacijskega sistema |
ssh_key_uuids |
array | Ne | UUIDi SSH ključev iz SSH ključev API za namestitev na strežniku |
ssh_key_ids |
array | Ne | Celokupni id. tipke SSH, kot alternativa ssh_ key_ uuids. Če sta poslana oba, se uporabijo ssh_ key_ id. |
ssh_key_uuid, ssh_key_id |
string, integer | Ne | Kratka roka za en sam ključ SSH |
auth_method |
string | Ne | geslo, ssh_ key ali oboje. Privzeto za geslo ali obema tipkama SSH. |
curl -X POST "https://admin.vps.org/api/v1/servers/" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"hostname": "web-01",
"location_id": 1,
"plan_uuid": "3bc2faf6-8f8b-4978-b62d-b52ed3f858e9",
"operating_system_version_uuid": "c3418f90-80a0-4e00-a7e1-d0ab1822b941",
"ssh_key_uuids": ["YOUR_SSH_KEY_UUID"]
}'
import requests
url = "https://admin.vps.org/api/v1/servers/"
headers = {"Authorization": "Bearer YOUR_API_TOKEN"}
data = {
"hostname": "web-01",
"location_id": 1,
"plan_uuid": "3bc2faf6-8f8b-4978-b62d-b52ed3f858e9",
"operating_system_version_uuid": "c3418f90-80a0-4e00-a7e1-d0ab1822b941",
"ssh_key_uuids": ["YOUR_SSH_KEY_UUID"],
}
response = requests.post(url, headers=headers, json=data)
server = response.json()
print(response.status_code, server["uuid"], server["status"])
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({
hostname: 'web-01',
location_id: 1,
plan_uuid: '3bc2faf6-8f8b-4978-b62d-b52ed3f858e9',
operating_system_version_uuid: 'c3418f90-80a0-4e00-a7e1-d0ab1822b941',
ssh_key_uuids: ['YOUR_SSH_KEY_UUID']
})
});
const server = await response.json();
console.log(server.uuid, server.status);
$data = [
'hostname' => 'web-01',
'location_id' => 1,
'plan_uuid' => '3bc2faf6-8f8b-4978-b62d-b52ed3f858e9',
'operating_system_version_uuid' => 'c3418f90-80a0-4e00-a7e1-d0ab1822b941',
'ssh_key_uuids' => ['YOUR_SSH_KEY_UUID']
];
$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);
$server = json_decode(curl_exec($ch), true);
curl_close($ch);
201 Ustvaril s polnim strežnikom objekt opisano v Get Strežnik Podrobnosti. Naslovi in vmid so polni v enkratni razporeditvi končnice.
{
"uuid": "5f0c8e2a-6b1d-4c3e-9a7f-2d4b6c8e0a1f",
"hostname": "web-01",
"vmid": null,
"status": "queue",
"error_description": null,
"location": {
"id": 1,
"name": "New Jersey",
"country_name": "United States",
"is_active": true
},
"plan": {
"uuid": "3bc2faf6-8f8b-4978-b62d-b52ed3f858e9",
"cpu": 1,
"ram": 2,
"ram_unit": "GB",
"disk_space": 10,
"disk_space_total": 10240,
"transfer": 500,
"price": "3.50",
"cpu_type_name": "Shared",
"is_active": true,
"hourly_price": "0.005",
"monthly_price": "3.50",
"is_gpu": false,
"gpu_count": 0,
"gpu_model": ""
},
"operating_system": {
"id": 1,
"name": "Ubuntu",
"svg_icon": "<svg ...>",
"versions": [ ... ]
},
"operating_system_version": {
"uuid": "c3418f90-80a0-4e00-a7e1-d0ab1822b941",
"name": "24.04 LTS x64",
"os_name": "Ubuntu",
"os_svg_icon": "<svg ...>",
"is_active": true
},
"ipv4_addresses": [],
"ipv6_addresses": [],
"deployed": false,
"created_at": "2026-09-14T21:02:11.402113Z",
"recent_actions": []
}
| 201 | Strežnik je ustvarjen in v vrstici za uporabo |
| 400 | Napaka pri preverjanju, na primer neaktivna lokacija, različica načrta ali operacijskega sistema |
| 402 | Način plačila v datoteki, neplačani računi ali predodobritev kartice ni bila zavrnjena |
| 403 | Manjkajoči ali neveljavni API žeton, ali token manjka zahtevano dovoljenje |
| 429 | Vaš račun je dosegel svojo mejo ustvarjanja strežnika |
Vrne en strežnik z lokacijo, načrtom, operacijskim sistemom, naslovi IP in petimi zadnjimi dejanji.
Zahtevano dovoljenje: servers:list
curl -X GET "https://admin.vps.org/api/v1/servers/8c4f2a1e-5b3d-4e6f-9a7b-1c2d3e4f5a6b/" \
-H "Authorization: Bearer YOUR_API_TOKEN"
{
"uuid": "8c4f2a1e-5b3d-4e6f-9a7b-1c2d3e4f5a6b",
"hostname": "web-01",
"vmid": 1042,
"status": "on",
"error_description": null,
"location": {
"id": 1,
"name": "New Jersey",
"country_name": "United States",
"is_active": true
},
"plan": {
"uuid": "14186969-fbaf-43e1-9ab2-b1f1aeb66674",
"cpu": 1,
"ram": 2,
"ram_unit": "GB",
"disk_space": 25,
"disk_space_total": 25600,
"transfer": 1,
"price": "5.00",
"cpu_type_name": "Shared",
"is_active": true,
"hourly_price": "0.007",
"monthly_price": "5.00",
"is_gpu": false,
"gpu_count": 0,
"gpu_model": ""
},
"operating_system": {
"id": 1,
"name": "Ubuntu",
"svg_icon": "<svg ...>",
"versions": [ ... ]
},
"operating_system_version": {
"uuid": "c3418f90-80a0-4e00-a7e1-d0ab1822b941",
"name": "24.04 LTS x64",
"os_name": "Ubuntu",
"os_svg_icon": "<svg ...>",
"is_active": true
},
"ipv4_addresses": [
{
"ip": "203.0.113.10",
"gateway": "203.0.113.1",
"subnet": "203.0.113.0",
"rdns": "web-01.example.com"
}
],
"ipv6_addresses": [
{
"ip": "2001:db8:2:dd::f9:6b",
"gateway": "2001:db8:2:dd::f9:1",
"subnet": "2001:db8:2:dd::f9:0",
"rdns": "web-01.example.com"
}
],
"deployed": true,
"created_at": "2026-07-30T03:54:14.914364Z",
"recent_actions": [
{
"id": 17028,
"action": "create",
"action_display": "Create",
"description": "Server deployed with VMID 1042",
"user_email": "you@example.com",
"created_at": "2026-07-30T03:54:32.860854Z"
}
]
}
Označevanje ikon SVG in seznam različic se skrajšajo tukaj.
| Polje | Vrsta | Opis |
|---|---|---|
vmid |
integer | null | Številka virtualnega stroja, nastavljena med uvajanjem |
location |
object | Objekt lokacije, kot ga vrne API lokacije |
plan |
object | Načrtni objekt, kot je vrnjen s načrtom API |
operating_system, operating_system_version |
object | Operativni sistem in nameščena različica, kot jo vrne API operacijskih sistemov |
ipv4_addresses, ipv6_addresses |
array | Eden predmet na naslov z ip, bramo, podmeterjo in rdns (reverzno imennika DNS) |
recent_actions |
array | Do petih najnovejših dejanj: id, action, action_display, opis, user_ email, created_at |
| 200 | Podrobnosti strežnika so bile uspešno pridobljene |
| 404 | Ni najden ali pripada drugemu računu |
Lahek klic za anketo po ustvarjanju, moči ali velikosti strežnika.
curl -X GET "https://admin.vps.org/api/v1/servers/8c4f2a1e-5b3d-4e6f-9a7b-1c2d3e4f5a6b/status/" \
-H "Authorization: Bearer YOUR_API_TOKEN"
{
"status": "on",
"deployed": true,
"resizing": false
}
| Vrednost | Opis |
|---|---|
queue |
Aktivnost (začetek, moč, sprememba velikosti, obnova) je v vrsti ali v teku |
deploying |
Ker so strežniki ustvarjeni iz kontrolnega panela uporabljajo to stanje; strežniki, ustvarjeni prek API ostanejo v vrsti, dokler niso pripravljeni. |
on |
Tekoče |
off |
Izklopljen |
error |
Zadnje dejanje ni uspelo. Glejte opis o pomoti. |
suspended_payment |
Odložena zaradi neplačanih računov |
Vrže v vrstico dejanja moči. Status strežnika se spremeni v vrstico, dokler se dejanje ne konča.
Zahtevano dovoljenje: servers:power
| Parameter | Vrsta | Zahtevano | Opis |
|---|---|---|---|
action |
string | Da |
start: vklopljena močshutdown: graciozno izključitev, odgnan, če gost ne ustavirestart: trdi ciklus moči (ustavi, nato zaženi)stop: Trenutno izvaja isti napajalni cikel kot zagon. Uporabite gašenje, da pustite strežnik izključen.
|
curl -X POST "https://admin.vps.org/api/v1/servers/8c4f2a1e-5b3d-4e6f-9a7b-1c2d3e4f5a6b/power/" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{"action": "restart"}'
import requests
server_uuid = "8c4f2a1e-5b3d-4e6f-9a7b-1c2d3e4f5a6b"
url = f"https://admin.vps.org/api/v1/servers/{server_uuid}/power/"
headers = {"Authorization": "Bearer YOUR_API_TOKEN"}
response = requests.post(url, headers=headers, json={"action": "restart"})
print(response.json())
{
"message": "Server restart queued"
}
| 200 | Ukrep je bil v vrsti |
| 400 | Manjkajoče ali nepodprto dejanje |
| 402 | začetek zavrnjen, ker račun ima neplačane račune |
| 404 | Ni najden ali pripada drugemu računu |
Premika strežnik v drug aktivni načrt. Novi načrt ne more imeti manj prostora na disku kot trenutni, in organ za zahtevo mora vključiti nastavitev za spremembo velikosti. Zmogljivost Hypervisora za nov načrt je preverjena, preden se karkoli zaporedi v vrstico, zato zavrnjena zahteva ne spremeni strežnika.
Strežnik je izključen, ko se spremeni velikost in se začne znova. Če sprememba ne uspe, se strežnik vrne nazaj na prejšnji načrt in začne znova, če se teče. Rast diska ni mogoče razveljaviti.
Zahtevano dovoljenje: servers:resize
| Parameter | Vrsta | Zahtevano | Opis |
|---|---|---|---|
action |
string | Da | Spremeni velikost |
new_plan_uuid |
string | Da | Uuid načrta za premik v |
curl -X POST "https://admin.vps.org/api/v1/servers/8c4f2a1e-5b3d-4e6f-9a7b-1c2d3e4f5a6b/resize/" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{"action": "resize", "new_plan_uuid": "5e26a4a6-bd0c-467c-abca-da036c811c3f"}'
{
"message": "Resize queued successfully"
}
Primer zavrnjene spremembe velikosti (409):
{
"error": "Not enough hypervisor capacity for the selected plan; the server was not changed"
}
| 200 | Ukrep je bil v vrsti |
| 400 | Manjkajoče dejanje ali nov_ plan_uuid, neveljaven ali neaktiven načrt, načrt z manj prostora na disku ali načrt GPU (načrtov GPU ni mogoče spremeniti z API) |
| 404 | Ni najden ali pripada drugemu računu |
| 409 | Spremembe ali spremembe v skladiščenju so že v teku, ali pa za nov načrt ni dovolj zmogljivosti hipervizorja |
| 503 | Zmogljivosti trenutno ni bilo moč preveriti. Strežnika ni bilo spremenjeno; ponovno ponovi kasneje. |
Ustvari novo root geslo, vrne ga v odzivu in vrne v vrstice spremembo na strežniku. Novo geslo vam je poslano tudi po pošti. Strežnik je treba uporabiti. Telo ni potrebno.
curl -X POST "https://admin.vps.org/api/v1/servers/8c4f2a1e-5b3d-4e6f-9a7b-1c2d3e4f5a6b/reset-password/" \
-H "Authorization: Bearer YOUR_API_TOKEN"
{
"message": "Password reset queued. New password will also be emailed to you.",
"password": "generated-password",
"job_id": "b6f1c7e2-3a4d-4f5e-8b9c-0d1e2f3a4b5c"
}
| 200 | Ukrep je bil v vrsti |
| 400 | Strežnik še ni nastavljen |
| 404 | Ni najden ali pripada drugemu računu |
Get seznama obrnjenega DNS imena gostitelja vsakega IPv4 in IPv6 naslova na strežniku. POST ga nastavi za en naslov. Pošiljanje praznega imenika ponovno naslov na svoj privzeti obrnjen DNS ime.
Zahtevano dovoljenje: servers:update
| Parameter | Vrsta | Zahtevano | Opis |
|---|---|---|---|
ip |
string | Da | IPv4 ali IPv6 naslov, dodeljen strežniku |
hostname |
string | Ne | Ime imenika PTR. Pustite prazno, da se ponovno nastavi na privzeto. |
curl -X POST "https://admin.vps.org/api/v1/servers/8c4f2a1e-5b3d-4e6f-9a7b-1c2d3e4f5a6b/rdns/" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{"ip": "203.0.113.10", "hostname": "mail.example.com"}'
{
"message": "Reverse DNS for 203.0.113.10 set to mail.example.com",
"ip": "203.0.113.10",
"hostname": "mail.example.com"
}
Odziv dobička:
{
"rdns": [
{"ip": "203.0.113.10", "hostname": "mail.example.com"},
{"ip": "2001:db8:2:dd::f9:6b", "hostname": "mail.example.com"}
]
}
| 400 | ip manjka, ali ni bilo moč nastaviti imenišča |
| 404 | IP naslov ni dodan strežniku |
Poveljuje ukaz v strežniku prek gostujočega agenta QEMU in čaka, da ga konča. Strežnik mora biti razporejen in tečen, in qemu- goest- agent mora biti nameščen in teče v gostu.
Zahtevano dovoljenje: servers:exec
| Parameter | Vrsta | Zahtevano | Opis |
|---|---|---|---|
command |
string | Da | Ukazna vrstica, ki se zažene z /bin/sh - c, do 2000 znakov |
timeout |
integer | Ne | Sekund za čakanje na ukaz, od 1 do 300 (privzeto 30) |
curl -X POST "https://admin.vps.org/api/v1/servers/8c4f2a1e-5b3d-4e6f-9a7b-1c2d3e4f5a6b/exec/" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{"command": "uptime", "timeout": 30}'
{
"stdout": " 21:14:03 up 46 days, 2:10, 0 users, load average: 0.08, 0.03, 0.01\n",
"stderr": "",
"exit_code": 0,
"timed_out": false
}
Če se ukaz še vedno teče, ko se zakasni čas, je odziv nastavljen na true in exectu_ koda nastavljena na null.
| 200 | Ukaz je končan ali je bil potekel čas |
| 400 | Strežnik ni bil uporabljen ali ne deluje, ali neveljavni parametri |
| 409 | QEMU gostujoči agent ne teče na strežniku |
| 503 | Začasna povezava težava. Poskusite po glavnem poglavju Ponovno ponovitev. |
Strežnika za trajno brisanje takoj izgine in ga ni mogoče vrniti.
Zahtevano dovoljenje: servers:delete
curl -X DELETE "https://admin.vps.org/api/v1/servers/8c4f2a1e-5b3d-4e6f-9a7b-1c2d3e4f5a6b/" \
-H "Authorization: Bearer YOUR_API_TOKEN"
{
"message": "Server deletion queued"
}
| 202 | Sprejeto: zahtevek je bil v vrsti |
| 404 | Ni najden ali pripada drugemu računu |
Shranite v račun ključe SSH, nato pa podajte svoje uuids kot ssh_ key_uuids, ko ustvarite strežnik. Get seznama vaše tipke (25 na stran); POST doda enega.
Zahtevano dovoljenje: ssh-keys:list (GET), ssh-keys:create (POST)
| Parameter | Vrsta | Zahtevano | Opis |
|---|---|---|---|
name |
string | Da | Ime, ki prepozna ključ, do 100 znakov |
public_key |
string | Da | Javni ključ v OpenSSH formatu, na primer vsebina id_ed25519.pub |
curl -X POST "https://admin.vps.org/api/v1/ssh-keys/" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{"name": "laptop", "public_key": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAI... you@laptop"}'
import requests
url = "https://admin.vps.org/api/v1/ssh-keys/"
headers = {"Authorization": "Bearer YOUR_API_TOKEN"}
with open("/home/you/.ssh/id_ed25519.pub") as f:
data = {"name": "laptop", "public_key": f.read().strip()}
response = requests.post(url, headers=headers, json=data)
print(response.status_code, response.json()["uuid"])
{
"id": 19,
"uuid": "6e1b9c52-3f8a-4d7e-a2c4-5b9d0e1f2a3c",
"name": "laptop",
"public_key": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAI... you@laptop",
"fingerprint": "0b:4c:9b:48:76:e7:1d:07:b9:ac:71:90:70:f7:9a:69",
"created_at": "2026-08-23T19:16:11.547183Z",
"last_used_at": null
}
| Polje | Vrsta | Opis |
|---|---|---|
id, uuid |
integer, string | Identifikatorji ključev. Uporabite uuid v ssh_ key_ uuids in v spodnjem URL-ju; id deluje v ssh_ key_ ids. |
fingerprint |
string | MD5 prstni odtis ključa, ki ga izračuna platforma |
last_used_at |
datetime | null | Ko je bil ključ nazadnje nameščen na novem strežniku |
| 201 | Dodano ključ |
| 400 | Manjkajoče ime ali javni ključ ni veljaven SSH javni ključ |
GET vrne en ključ z zgornjimi polji. DELETE ga odstrani s svojega računa in vrne 204 brez telesa. Izbris ključa ga ne odstrani iz strežnikov, ki so ga že bili nameščeni. Ključev ni mogoče urejati: brisati in dodati ponovno.
Zahtevano dovoljenje: ssh-keys:list (GET), ssh-keys:delete (DELETE)
curl -X DELETE "https://admin.vps.org/api/v1/ssh-keys/6e1b9c52-3f8a-4d7e-a2c4-5b9d0e1f2a3c/" \
-H "Authorization: Bearer YOUR_API_TOKEN"
Ustvarjanje varnostne kopije ali posnetka je tudi dejanje strežnika:
POST /api/v1/servers/{uuid}/backup/: API za varnostne kopijePOST /api/v1/servers/{uuid}/snapshot/: API za posnetke