Quickstart
Goal: list the servers on your account in under two minutes.
1. Mint a Personal Access Token
- Log in at https://vps-server.host/clientarea.php
- Open Developers → API Tokens in the sidebar (direct URL: https://vps-server.host/clientarea_api_tokens.php)
- Create a new token form:
- Name:
quickstart - Scopes: tick
servers:read - IP allow-list: leave empty for now (tighten later)
- Confirm your password: your client-area password
- Name:
- Click Create token
- Copy the
pat_live_…value shown in the yellow banner — you only see it once
Store it in your secrets manager immediately
We only store a hash. If you lose the secret, revoke the token and mint a new one.
2. List your servers
In your terminal:
PAT='pat_live_…' # paste from step 1
curl -sS https://api.vps-server.host/v1/servers \
-H "Authorization: Bearer $PAT" | jq
Expected response:
{
"data": [
{
"id": "srv_42",
"name": "web-01",
"status": "running",
"backend": "contabo",
"plan": "vps-l",
"region": "eu-central",
"ipv4": "203.0.113.45",
"ipv6": "2001:db8::1",
"image": "ubuntu-24.04",
"created_at": "2026-04-10T08:00:00Z"
}
],
"links": { "next": null, "prev": null }
}
If you have no servers yet, data will be an empty array — the call still
proves auth works.
3. Reboot a server (async)
Add the servers:power scope to your PAT (or mint a new one with it), then:
SERVER_ID='srv_42'
curl -sS -X POST "https://api.vps-server.host/v1/servers/${SERVER_ID}:reboot" \
-H "Authorization: Bearer $PAT" \
-H "Idempotency-Key: $(uuidgen)"
Response is 202 Accepted with an Operation:
{
"id": "op_01HRZ5K3P9X2W6V8M1C4Y7B0A2",
"type": "server.reboot",
"status": "queued",
"target": { "type": "server", "id": "srv_42" },
"created_at": "2026-05-21T14:30:00Z"
}
Poll the operation to wait for completion:
OP='op_01HRZ5K3P9X2W6V8M1C4Y7B0A2'
curl -sS "https://api.vps-server.host/v1/operations/${OP}" \
-H "Authorization: Bearer $PAT" | jq .status
Or subscribe to the operation.succeeded webhook and
skip polling entirely.
What's next
- Provision a new VPS — end-to-end from catalog browse to first SSH login
- Order a product — the catalog → preview → order → service mental model
- SSH keys — authorise your key once, use it on every new server
- Authentication & PATs — full token lifecycle, scopes, IP allow-list, step-up
- Errors, retries, idempotency
- The full API Reference
- Install the CLI —
vpsctl servers reboot srv_42 --waitdoes the same thing without curl gymnastics