Opprett, besiktig, maktfyll, endre størrelse og slett VPS- tjenere. Tjenere identifiseres ved hjelp av uuid- en.
Returnerer tjenerne på kontoen din, nyeste først, 25 pr. side. Tjenere som blir slettet er ikke tatt med.
Påkrevd tillatelse: servers:list
| Parameter | Type | Obligatorisk | Beskrivelse |
|---|---|---|---|
page |
integer | Nei | Sidenummer, fra 1. |
page_size |
integer | Nei | Resultater pr. side (standard 25, maksimum 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
}
]
}
| Felt | Type | Beskrivelse |
|---|---|---|
uuid |
string | Tjeneridentifikator brukt i alle andre tjenerendepunkter |
hostname |
string | Vertsnavn du valgte når tjeneren ble opprettet |
status |
string | Gjeldende tilstand. Se Tjenerstatus- verdier nedenfor. |
error_description |
string | null | Detaljer om siste feil når statusen er feil, ellers null |
location_name |
string | Navn på stedet tjeneren kjører i |
os_name |
string | Operativsystemets navn, uten versjon |
plan_name |
string | Lesbart plansammendrag, for eksempel 1 vCPU / 2 GB RAM / 10 GB |
ipv4_addresses |
array | IPv4- adresser som strenger. Tomt helt til tjeneren er klargjort, og i planer uten IPv4. |
ipv6_addresses |
array | IPv6- adresser som strenger. Tomt til tjeneren er klargjort. |
created_at |
datetime | Opprettelsestid (ISO 8601, UTC) |
deployed |
boolean | Sann når avsetningen er ferdig |
| 200 | Hentet serverlisten |
| 403 | Mangler eller er ugyldig API- symbol, eller symbolet mangler tillatelse |
Legger en ny tjener i kø for innføring og returnerer den med en gang med statuskøen. Tilbudet fortsetter i bakgrunnen: sjekk statusen til den er i bruk. Når tjeneren er klar blir innloggingsinformasjonen sendt til kontoeieren.
Kontoen din trenger en lagret betalingsmetode. Avhengig av kontohistorien din kan et midlertidig før- godkjenning inneholde omtrent en uke av planprisen (minst 1 USD) på kortet ditt før tjeneren opprettes.
Påkrevd tillatelse: servers:create
| Parameter | Type | Obligatorisk | Beskrivelse |
|---|---|---|---|
hostname |
string | Ja | Minst 3 tegn. Bare bokstaver, sifre, bindestreker og perioder. |
location_id |
integer | Ja | ID- en til et aktivt sted fra « Adresser API » |
plan_uuid |
string | Ja | Uuid for en aktiv plan fra API- en til Planer |
operating_system_version_uuid |
string | Ja | UUID- en til en aktiv oppføring i et operativsystems versjonsliste |
ssh_key_uuids |
array | Nei | UUID-er for SSH-nøkkelene fra API for SSH- nøkler som skal installeres på tjeneren |
ssh_key_ids |
array | Nei | Heltalls- ID- er for SSH- nøkler, som et alternativ til ssh_ key_ uuids. Hvis begge sendes, så brukes ssh_ key_ id- er. |
ssh_key_uuid, ssh_key_id |
string, integer | Nei | Korthåndet for en enkelt SSH-nøkkel |
auth_method |
string | Nei | passord, ssh_ nøkkel eller begge deler. Standard er passord, eller begge når ssh- nøkler oppgis. |
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 Laget med hele tjenerobjektet beskrevet under Hent tjenerdetaljer. Adresser og vmid fylles ut når utplasseringen er ferdig.
{
"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 | Tjener opprettet og lagt i kø for innføring |
| 400 | Valideringsfeil, for eksempel en versjon av et inaktivt sted, en plan eller operativsystem |
| 402 | Ingen betalingsmetode på fil, ubetalte fakturaer eller før-godkjenning ble avslått |
| 403 | Mangler eller er ugyldig API- symbol, eller symbolet mangler tillatelse |
| 429 | Din konto har nådd sin opprettelsesgrense for tjeneren |
Returnerer en tjener med plassering, plan, operativsystem, IP- adresser og de fem siste handlingene.
Påkrevd tillatelse: 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"
}
]
}
SVG- ikonoppmerking og versjonslista forkortes her.
| Felt | Type | Beskrivelse |
|---|---|---|
vmid |
integer | null | Nummer på virtuell maskin, fastsatt under utføring |
location |
object | Adresseobjekt, som returnert av Adresser API |
plan |
object | Plan- objekt, som returnert av Plans API |
operating_system, operating_system_version |
object | Operativsystemet og den installerte versjonen, slik det leveres av Operativsystem-API |
ipv4_addresses, ipv6_addresses |
array | Ett objekt per adresse med ip, gateway, subnett og rdns (det omvendte DNS vertsnavnet) |
recent_actions |
array | Inntil fem siste handlinger: id, action, action_display, description, user_email, created_at |
| 200 | Serverdetaljer er hentet |
| 404 | Ikke funnet, eller den tilhører en annen konto |
Et lettvekts kall for meningsmåling etter at du har opprettet, maktgjort eller endret størrelse på en tjener.
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
}
| Verdi | Beskrivelse |
|---|---|
queue |
An action (deploy, power, resize, restore) is queued or in progress |
deploying |
Er levert. Tjenere laget fra kontrollpanelet bruker denne tilstanden, tjenere opprettet gjennom API blir værende i køen til de er klare. |
on |
Kjører |
off |
Avslått |
error |
Den siste handlinga mislyktes. Se error_ description. |
suspended_payment |
Opphevet på grunn av ubetalte fakturaer |
Legger i kø en strømhandling. Tjenerens status endres til køen til handlinga er fullført.
Påkrevd tillatelse: servers:power
| Parameter | Type | Obligatorisk | Beskrivelse |
|---|---|---|---|
action |
string | Ja |
start: effekt påshutdown: Snilldig avslutning, slått av hvis gjesten ikke stopperrestart: hard motorisk syklus (stopp, og start)stop: Utfører nå samme strømsyklus som omstart. Bruk avbrudd for å la tjeneren være av.
|
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 | Handlinga ble satt i kø |
| 400 | Manglende eller ikke støttet handling |
| 402 | start nektet fordi kontoen har ubetalte fakturaer |
| 404 | Ikke funnet, eller den tilhører en annen konto |
Flytter tjeneren til en annen aktiv plan. Den nye planen kan ikke ha mindre diskplass enn den gjeldende, og forespørselen må inneholde handling som kan endre størrelse. Det blir sjekket om du vil ha en overvisor før noe legges i køen, så en avslått forespørsel gjør at tjeneren blir uendret.
Tjeneren blir stengt ned mens den endres til nytt nivå og startes igjen etterpå. Hvis størrelsen mislykkes, blir tjeneren satt tilbake i forrige plan og startet igjen hvis den kjører. Diskvekst kan ikke angres.
Påkrevd tillatelse: servers:resize
| Parameter | Type | Obligatorisk | Beskrivelse |
|---|---|---|---|
action |
string | Ja | Må endre størrelse |
new_plan_uuid |
string | Ja | UUID- en til planen som skal flyttes til |
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"
}
Eksempel på avslag på endring av størrelse (409):
{
"error": "Not enough hypervisor capacity for the selected plan; the server was not changed"
}
| 200 | Handlinga ble satt i kø |
| 400 | Manglende handling eller new_ plan_ uid, ugyldig eller inaktiv plan, en plan med mindre diskplass eller GPU- plan (GPU- planer kan ikke endre størrelse gjennom API) |
| 404 | Ikke funnet, eller den tilhører en annen konto |
| 409 | En endring av størrelse eller lagring er allerede i gang, eller det er ikke tilstrekkelig kapasitet for den nye planen |
| 503 | Kapasitet kunne ikke sjekkes nå. Tjeneren ble ikke endret. Forsøk på nytt senere. |
Lager et nytt rotpassord, gir det i svaret og legger endringen i kø på tjeneren. Det nye passordet sendes også e- post til deg. Tjeneren må brukes. Ingen meldingskropp trengs.
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 | Handlinga ble satt i kø |
| 400 | Tjeneren er ikke skrudd på ennå |
| 404 | Ikke funnet, eller den tilhører en annen konto |
GET skriver opp det omvendte DNS- vertsnavnet for hver IPv4 - og IPv6- adresse på tjeneren. POST setter det for en adresse. Å sende et tomt vertsnavn tilbakestiller adressen til standard DNS- navn.
Påkrevd tillatelse: servers:update
| Parameter | Type | Obligatorisk | Beskrivelse |
|---|---|---|---|
ip |
string | Ja | En IPv4 - eller IPv6- adresse tildelt denne tjeneren |
hostname |
string | Nei | PTR vertsnavnet. La det være tomt for å gå tilbake til standardvalget. |
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"
}
GET- reaksjon:
{
"rdns": [
{"ip": "203.0.113.10", "hostname": "mail.example.com"},
{"ip": "2001:db8:2:dd::f9:6b", "hostname": "mail.example.com"}
]
}
| 400 | ip mangler, eller vertsnavnet kunne ikke settes |
| 404 | IP- adressen er ikke tilordnet denne tjeneren |
Kjører en skallkommando inne i tjeneren gjennom gjesteagenten QEMU og venter på at den skal være ferdig. Tjeneren må være utløst og kjøre, og qemu- guest- agent må være installert og kjøres i gjesten.
Påkrevd tillatelse: servers:exec
| Parameter | Type | Obligatorisk | Beskrivelse |
|---|---|---|---|
command |
string | Ja | Kjør kommandolinja med /bin/sh -c, opp til 2000 tegn |
timeout |
integer | Nei | Sekunder å vente på kommandoen, 1 til 300 (standard 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
}
Hvis kommandoen ennå kjører når tidsavbruddet utløper, så har svaret satt til « timed_out » og « exit_code » satt til null.
| 200 | Kommandoen ble ferdig eller tidsavbrudd |
| 400 | Tjeneren er ikke utløst eller kjører ikke, eller ugyldige parametre |
| 409 | Gesteagenten QEMU kjører ikke på tjeneren |
| 503 | Midlertidig tilkoblingsproblem. Prøv igjen etter meldingshodet for Prøv igjen etter. |
Legger tjeneren i kø for permanent sletting. Tjeneren forsvinner straks fra lista og kan ikke gjenopprettes.
Påkrevd tillatelse: 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 | Godtatt: forespørselen ble satt i kø |
| 404 | Ikke funnet, eller den tilhører en annen konto |
Lagre offentlige SSH- nøkler på kontoen din, og send så deres uuid- er som ssh_ key_ uuid- er når du lager en tjener. GET lister dine nøkler (25 pr. side), POST legger til en.
Påkrevd tillatelse: ssh-keys:list (GET), ssh-keys:create (POST)
| Parameter | Type | Obligatorisk | Beskrivelse |
|---|---|---|---|
name |
string | Ja | Et navn på nøkkelen, med inntil 100 tegn |
public_key |
string | Ja | Den offentlige nøkkelen i OpenSSH-format, for eksempel innholdet av 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
}
| Felt | Type | Beskrivelse |
|---|---|---|
id, uuid |
integer, string | Nøkkelidentifikatorer. Bruk uuid i ssh_ key_ uuids og i URL- en nedenfor. ID- en virker i ssh_ key_ id- er. |
fingerprint |
string | MD5-fingeravtrykk av nøkkelen, beregnet av plattformen |
last_used_at |
datetime | null | Når nøkkelen sist ble installert på en ny tjener |
| 201 | Nøkkel lagt til |
| 400 | Manglende navn, eller den offentlige nøkkelen er ikke en gyldig offentlig SSH-nøkkel |
GET gir en nøkkel med feltene over. DELETE fjerner den fra kontoen din og gir 204 uten brødtekst. Sletting av en nøkkel fjerner den ikke fra tjenere som den allerede er installert på. Nøkler kan ikke redigeres: slett og legg til igjen.
Påkrevd tillatelse: 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"
Å lage en sikkerhetskopi eller et skjermbilde er også en tjenerhandling:
POST /api/v1/servers/{uuid}/backup/: Sikkerhetskopierings-APIPOST /api/v1/servers/{uuid}/snapshot/: API- bilder