Get a VPS
GET/api/v1/vps/{vps_uuid}
One VPS with its status, addresses and this month's traffic.
Parameters
| Name | In | Description |
|---|---|---|
| vps_uuid | path, stringrequired | VPS id, from Create a VPS or List VPS |
Example request
curl -X GET "https://platform.serverscamp.com/api/v1/vps/$VPS_UUID" \
-H "Authorization: Bearer $API_TOKEN"import os, requests
token = os.environ["API_TOKEN"]
vps_uuid = "12d46f8c-d66e-4163-99aa-1245d5b06e5b"
r = requests.get(
f"https://platform.serverscamp.com/api/v1/vps/{vps_uuid}",
headers={"Authorization": f"Bearer {token}"},
)
r.raise_for_status()
print(r.json())const vpsUuid = '12d46f8c-d66e-4163-99aa-1245d5b06e5b';
const r = await fetch(`https://platform.serverscamp.com/api/v1/vps/${vpsUuid}`, {
method: 'GET',
headers: { Authorization: `Bearer ${process.env.API_TOKEN}` },
});
console.log(r.status, await r.json());Answer
Status 200 with this body.
| Field | Type | Description |
|---|---|---|
| vps_uuid | stringrequired | VPS id |
| name | stringrequired | Name given at create |
| plan_id | stringrequired | Plan id |
| plan_name | string, optional | Plan name |
| plan | VpsPlan, optional | The plan, also when it is no longer on sale |
| plan.id | stringrequired | Plan id, for create and plan changes |
| plan.name | stringrequired | Name shown in the Cloud Panel |
| plan.vcpu | integerrequired | vCPU cores |
| plan.cpu_limit | number, optional | Share of the cores the server may use, set on plans below one full core |
| plan.ram_gb | numberrequired | Memory, GB |
| plan.disk_gb | integerrequired | Disk, GB |
| plan.traffic_gb | integerrequired | Outbound traffic a month, GB; after it the port runs at 100 Mbit/s |
| plan.net_mbit | integerrequired | Port speed, Mbit/s |
| plan.disk_iops | integerrequired | Disk operations a second |
| plan.disk_mbps | integerrequired | Disk throughput, MB/s |
| plan.price_monthly | numberrequired | Price a month, EUR, billed by the hour |
| plan.backup_share | numberrequired | Daily backups add this share of the plan price |
| image | stringrequired | Image id of the installed system |
| backups | booleanrequired | Daily backups on |
| status | stringrequired | queued, cloning, configuring, starting, running, stopped, restoring, reinstalling, deleting, unpaid (stopped when the balance ran out) or error |
| ipv4 | string, optional | Public IPv4 address |
| ipv6_prefix | string, optional | IPv6 /56 of the server; its first address is ::1 |
| ptr | string, optional | Reverse DNS name of the addresses |
| ptr_custom | booleanrequired | Reverse DNS was set by you, not the default name |
| cpu_model | string, optional | CPU model of the host |
| disk | string, optional | Disk type of the host: NVMe or SSD |
| error | string, optional | What went wrong, when status is error |
| created_at | string, optional | When it was created, ISO 8601 |
| net_capped | booleanrequired | The port is at 100 Mbit/s until the next month: the quota is used up |
| uptime | integer, optional | Seconds since the server was last started; lower than before once a reboot is done (a reset leaves it as it is). Only in Get a VPS, not in List VPS |
| traffic | VpsTrafficrequired | |
| traffic.month | stringrequired | Calendar month, UTC, as YYYY-MM |
| traffic.out_bytes | integerrequired | Outbound bytes this month; counts against the plan quota |
| traffic.in_bytes | integerrequired | Inbound bytes this month; free |
{
"vps_uuid": "12d46f8c-d66e-4163-99aa-1245d5b06e5b",
"name": "web-1",
"plan_id": "vps2-1",
"plan_name": "VPS 1",
"image": "ubuntu-26.04",
"backups": true,
"status": "running",
"ipv4": "185.236.9.61",
"ipv6_prefix": "2a01:ea05:0:f00::/56",
"ptr": "web-1-a1b2c3.vm.scamp.pro",
"ptr_custom": false,
"cpu_model": "Intel Xeon Gold 6154",
"disk": "NVMe",
"error": null,
"created_at": "2026-10-23T08:12:40+00:00",
"net_capped": false,
"traffic": {
"month": "2026-10",
"out_bytes": 1830000000,
"in_bytes": 920000000
}
}Errors
| Status | When |
|---|---|
401 | No token, or a token that is not valid |
404 | No such VPS in your account |
422 | The body or a parameter is not what the operation takes |
Every operation can also answer 401 without a valid token. All errors