VPS.org API

PENDEKEZO LA MAFUTA

API ya Seva

Create, inspect, power, resize and delete your VPS servers. Servers are identified by their uuid.

Sehemu za Mwisho 15
Njia ya Msingi /api/v1/servers
PATA /api/v1/servers/

Orodhesha Seva Zote

Warudishaji katika akaunti yako, wapya zaidi, 25 kwa kila ukurasa.

Ruhusa ya Kuruhusiwa: servers:list

Vigezo vya Hoja

Penseli Aina Inahitajika Maelezo
page integer Hapana Page number, starting at 1
page_size integer Hapana Matokeo kwa kila ukurasa (hali iliyokadiriwa kuwa 25, ni ya juu zaidi 100)

Ombi la Mfano

cURL
Python
JavaScript
PHP
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";
}

Jibu la Mfano

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

Sehemu za Majibu

Field Aina Maelezo
uuid string Mtambuaji anayetumiwa katika kila kundi la watumishi
hostname string Jina lolote mnalo lisalia kwa ajili ya wale walio kufuru, basi si kwa ajili ya Mwenyezi Mungu, bali ni nani aliye tukuza?
status string Ona Kanuni Bora Zaidi hapa chini.
error_description string | null Habari za kushindwa kwa mwisho wakati hali inapokuwa mbaya, ama sivyo ni bure
location_name string Jina la mahali ambapo mlinzi anafanyia kazi
os_name string Jina la mfumo wa kompyuta bila kutumia toleo
plan_name string Ramani yenye kusomeka kwa muhtasari, kwa kielelezo 1 vCPU / 2 GBROM / 10
ipv4_addresses array IPv4 huhutubia watu kwa njia mbalimbali mpaka mhudumu anapotumiwa, na katika mipango bila IPv4.
ipv6_addresses array IPv6 addresses as strings. Empty until the server is deployed.
created_at datetime Creation time (ISO 8601, UTC)
deployed boolean Mpango wa kweli mara tu baada ya maandalizi kwisha

Misimbo ya Hali ya Majibu

200 Imefanikiwa kurejesha orodha ya seva
403 Ishara hiyo ikikosekana au yenye kasoro, au ile ishara haina ruhusa inayohitajiwa
PENDEKEZO /api/v1/servers/

Unda Seva Mpya

Queuss mpya kwa ajili ya utumishi wa kijeshi na kuurudisha mara moja kwa foleni za hadhi ya juu. Uandalizi unaendelea katika hali ya nyuma: kupiga kura ya hali ya mambo hadi ufungwapo ni kweli. Mfanyakazi anapokuwa tayari, habari zake za login hutumwa kwa mwenye akaunti hiyo.

Akaunti lako lahitaji njia ya kuweka akiba ya malipo. Ikitegemea historia yako, kushika kwa muda bei ya kabla ya juma moja ya mpango (angalau dola 1 za Marekani) kwaweza kuwekwa kwenye kadi yako kabla ya mtoa huduma kuumbwa.

Ruhusa ya Kuruhusiwa: servers:create

Omba Vigezo vya Mwili

Penseli Aina Inahitajika Maelezo
hostname string Ndiyo Angalau herufi 3. Barua, tarakimu, hipani na vipindi vya hedhi pekee.
location_id integer Ndiyo Mahali pa utendaji katika eneo la API
plan_uuid string Ndiyo Mpango wa kufanya kazi na mipango ya kijeshi
operating_system_version_uuid string Ndiyo Uuid wa maandishi ya utendaji katika orodha ya tafsiri za mfumo wa upasuaji
ssh_key_uuids array Hapana UUIDS wa vibonyezo vya SSH katika vibonyezo vya MEMI kuweka juu ya kihudumiaji
ssh_key_ids array Hapana Vidole vya vidole vya SeSH, kama kibadala cha ssh_key_uids. kama vyote viwili vinatumwa, x_key_ids hutumiwa.
ssh_key_uuid, ssh_key_id string, integer Hapana Kifupi cha ufunguo mmoja wa SSH
auth_method string Hapana Neno la siri, sh_key au yote mawili.

Ombi la Mfano

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 '{
    "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);

Jibu la Mfano

201 Aumbwa na kifaa cha uhudumiaji kamili kinachoelezwa chini ya kitabu Get Cyper Eads.

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

Misimbo ya Hali ya Majibu

201 Mtumishi aliyeundwa na kujipanga kwa ajili ya utumishi
400 Kwa mfano, kosa la kurekebisha hali ya hewa ni mahali ambapo mtu hatendi, mpango au mbinu ya kuendesha mfumo wa neva
402 Hakuna njia ya malipo kwenye faili, voisi zisizolipwa, au kupandisha kadi hiyo ilikataliwa
403 Ishara hiyo ikikosekana au yenye kasoro, au ile ishara haina ruhusa inayohitajiwa
429 Hakika wewe unajikusuru kwa juhudi;
PATA /api/v1/servers/{uuid}/

Pata Maelezo ya Seva

Arudi tena mtumishi mmoja akiwa na mahali, mpango, mfumo wa kuendesha, anwani za IP na vitendo vitano vya karibuni zaidi.

Ruhusa ya Kuruhusiwa: servers:list

curl -X GET "https://admin.vps.org/api/v1/servers/8c4f2a1e-5b3d-4e6f-9a7b-1c2d3e4f5a6b/" \
  -H "Authorization: Bearer YOUR_API_TOKEN"

Jibu la Mfano

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

Picha za sanamu za SVG na orodha ya tafsiri zimefupishwa hapa.

Sehemu za Majibu

Field Aina Maelezo
vmid integer | null Idadi ya mashine za kisasa, iliyowekwa wakati wa uandikishaji
location object Kitu chochote, kama ilivyorudishwa na Mahali pa Kubatizia API
plan object Panga kitu, kama ilivyorudishwa na Plans API
operating_system, operating_system_version object Mfumo wa upasuaji na toleo lililowekwa rasmi, kama ilivyorudishwa na Mfumo wa Utendaji API
ipv4_addresses, ipv6_addresses array Kitu kimoja kwa kutumia sip, lango, winet na rdns (jina la nyuma la chama cha DNS)
recent_actions array Kufikia hatua tano za hivi karibuni: adi, kitendo,_disic, ufafanuzi, mtumiaji_email, created_at

Misimbo ya Hali ya Majibu

200 Imefanikiwa kurejesha maelezo ya seva
404 Si wapatikanao, wala si wa Akaunti jingine
PATA /api/v1/servers/{uuid}/status/

Tafuta Kitu cha Kuhudumia

Mwito mwepesi wa kupigia kura baada ya kutengeneza, mamlaka au kurekebisha upya mpelekaji.

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
}

Viwango vya Utumishi

Thamani Maelezo
queue Hatua (inayohusisha mambo mengi, mamlaka, kurekebisha, kurudisha upya) ni kufuata mistari au kuendelea
deploying Na walipanga mipango yao na wa kiweshi kwao. Lakini waja wangu wapo watakao lipwa kwa waliyo kuwa wakiyachuma.
on Kukimbia
off Kupewa Mamlaka
error Hatua ya mwisho ilishindwa.
suspended_payment Atumiwa Kununua bidhaa kwa sababu ya kelele za pesa zisizolipwa
PENDEKEZO /api/v1/servers/{uuid}/power/

Dhibiti Nguvu za Utumikaji

Kikosi hicho kinabadilisha utaratibu wa umeme na kuwa mstari wa foleni hadi hatua inapokamilika.

Ruhusa ya Kuruhusiwa: servers:power

Omba Vigezo vya Mwili

Penseli Aina Inahitajika Maelezo
action string Ndiyo start: nguvu juu ya
shutdown: Afungwa kwa madaha, akilazimishwa ikiwa mgeni hakomei
restart: Mzunguko mgumu wa nguvu za umeme (juu, kisha huanza)
stop: Kwa sasa tumia mfumo wa umeme kama stort.

Ombi la Mfano

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

Jibu la Mfano

{
  "message": "Server restart queued"
}

Misimbo ya Hali ya Majibu

200 Hatua hiyo ilipangwa kwa mfuatano
400 Tendo Lisilo na msingi
402 anza kukataa kwa sababu akaunti hiyo imetoa taarifa za voisi zisizolipwa
404 Si wapatikanao, wala si wa Akaunti jingine
PENDEKEZO /api/v1/servers/{uuid}/resize/

Fanya Upya Kuwa Mtumikaji

Mpango huo mpya wa kuweka vifaa vipya hutumwa kwa njia isiyo na diski nyingi kama ile ya sasa, na mwili wa ombi lazima utie ndani hatua iliyowekwa ili kurekebisha.

The server is shut down while it is resized and started again afterwards. If the resize fails, the server is put back on its previous plan and started again if it was running. Disk growth cannot be undone.

Ruhusa ya Kuruhusiwa: servers:resize

Omba Vigezo vya Mwili

Penseli Aina Inahitajika Maelezo
action string Ndiyo Lazima urudie hali yako
new_plan_uuid string Ndiyo Mpango wa kuhamia eneo hilo
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"
}

Mfano wa kukataa kurekebisha (409):

{
  "error": "Not enough hypervisor capacity for the selected plan; the server was not changed"
}

Misimbo ya Hali ya Majibu

200 Hatua hiyo ilipangwa kwa mfuatano
400 Hatua isipochukuliwa au hatua mpya_plan_uid, mpango wa kutochukua hatua au kutofanya chochote, mpango wenye nafasi ya mviringo, au mpango wa GPI (Muuu mipango ya GPI)
404 Si wapatikanao, wala si wa Akaunti jingine
409 Badiliko la kurekebisha au kuhifadhi nafaka tayari linaendelea, au hakuna uwezo mkubwa wa kutosha wa kurekebisha mpango huo mpya
503 Jiji la Calaque halikuchunguzwa sasa hivi, lakini shirika hilo halikubadilishwa; baadaye lilifanyiwa marekebisho.
PENDEKEZO /api/v1/servers/{uuid}/reset-password/

Weka Upya Nywila za Msingi

Neno la siri la neno jipya la msingi, linarudisha kwenye jibu na kuweka mstari kwenye mstari wa kuonyesha mabadiliko ya kituo hicho.

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

Misimbo ya Hali ya Majibu

200 Hatua hiyo ilipangwa kwa mfuatano
400 Mtumishi bado hajatumiwa
404 Si wapatikanao, wala si wa Akaunti jingine
PATA PENDEKEZO /api/v1/servers/{uuid}/rdns/

Recept DNS (PTR)

TOKEA orodha ya jina la nyuma la DNS kwa kila anwani ya IPv4 na IPva6 kwenye kampuni hiyo.

Ruhusa ya Kuruhusiwa: servers:update

Omba Vigezo vya Mwili (POST)

Penseli Aina Inahitajika Maelezo
ip string Ndiyo Anwani ya IPvu4 au IPva6 iliyopewa mgawo wa mpeleka - huduma huyu
hostname string Hapana Jina la mkaribishaji wa PTR. Ondoka bila kusudi la kuendelea na mashindano.
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"
}

JIJUMAE kujibu:

{
  "rdns": [
    {"ip": "203.0.113.10", "hostname": "mail.example.com"},
    {"ip": "2001:db8:2:dd::f9:6b", "hostname": "mail.example.com"}
  ]
}

Misimbo ya Hali ya Majibu

400 ipa nafasi, au jina la mkaribishaji halingeweza kuwekwa
404 Anwani ya IP haipekwi katika kampuni hii
PENDEKEZO /api/v1/servers/{uuid}/exec/

Kimbieni Amri kwa Mtumikiaji

Apiga amri ya kukata makombora ndani ya afisa wa wageni wa QEMU na kungojea mwisho. Mtumishi lazima afungwe na kukimbia, na qemu-guest lazima awekwe na kukimbia katika mgeni.

Ruhusa ya Kuruhusiwa: servers:exec

Omba Vigezo vya Mwili

Penseli Aina Inahitajika Maelezo
command string Ndiyo Amri ya maneno inaandamana na /bin/sh -c, kufikia wahusika 2000
timeout integer Hapana Njia ya pili ya kungojea amri, 1 hadi 300 (hali ya 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
}

Ikiwa amri ingali inakimbia wakati wa kipindi cha mapumziko, itikio limeshachukua muda kwa hatua kwenye ukweli na kuondoka_mboni.

Misimbo ya Hali ya Majibu

200 Amri ilimalizika au ikatolewa
400 Wahudumu hawatumii wala hawakimbie, au hawapitishi uwezo wa kutambua hali
409 Mlinzi wa SEMU haendeshi mteja
503 Tatizo la muda tu la uhusiano. Retry baada ya Retry-Baada ya kichwa.
FUTA /api/v1/servers/{uuid}/

Futa Seva

Kikimbizi cha kumaliza kabisa orodha hiyo, hutokomea mara moja na hawezi kupatikana tena.

Ruhusa ya Kuruhusiwa: 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"
}

Misimbo ya Hali ya Majibu

202 Alikubali: Ombi hilo lilipangwa kwenye foleni
404 Si wapatikanao, wala si wa Akaunti jingine
PATA PENDEKEZO /api/v1/ssh-keys/

Vibonyezo vya SSH

Hifadhi funguo za umma za SSH katika akaunti yako, kisha pitisha miuid zao kama ssh_key_uiids unapotengeneza kampuni ya kutoa huduma. tundikeni funguo zako (25 kwa ukurasa); POST anaongeza moja.

Ruhusa ya Kuruhusiwa: ssh-keys:list (GET), ssh-keys:create (POST)

Omba Vigezo vya Mwili (POST)

Penseli Aina Inahitajika Maelezo
name string Ndiyo Jina la kutambua ufunguo kwa herufi 100 hivi
public_key string Ndiyo Ufunguo wa umma wa kutengeneza penSSH, kwa mfano yaliyomo katika id_ed25519.pub

Ombi la Mfano

cURL
Python
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"])

Jibu la Mfano

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

Sehemu za Majibu

Field Aina Maelezo
id, uuid integer, string Litumie iuid katika sh_key_uids na katika URL chini; id work in ssh_key_ids.
fingerprint string MD5 fingerprint of the key, computed by the platform
last_used_at datetime | null Siri ilipowekwa kwenye kifaa kipya cha kwanza

Misimbo ya Hali ya Majibu

201 Kibonyezo kilichoongezwa
400 Jina ambalo halijatajwa, au ufunguo wa umma si ufunguo halali wa umma
PATA FUTA /api/v1/ssh-keys/{uuid}/

Tumia au Kufuta Ufunguo waSH

GET returns one key with the fields above. DELETE removes it from your account and returns 204 with no body. Deleting a key does not remove it from servers it was already installed on. Keys cannot be edited: delete and add again.

Ruhusa ya Kuruhusiwa: 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"

Maasi na Michomozo

Kutengeneza picha ya nyuma au ya picha ni kitendo cha ustahiki: