Dedicated Server & VPS API. Run the fleet from code.
One REST API for the dedicated servers and KVM VPS on your account: power, provisioning status, reinstalls, IP inventory and traffic, plus the projects, scoped keys and invoices your security and finance teams will ask about.
- Operations
- 92
- Contract
- OpenAPI 3.0
- Requests per key
- 1,000/h
- API surcharge
- €0
The voxa.host Customer API is a JSON REST API over HTTPS at https://my.voxa.host/api/v1 for automating the dedicated servers and KVM VPS on your own account. Its 92 operations are described in an OpenAPI 3.0 spec and cover server control, orders, projects, SSH keys, custom images, invoices and credit. Keys are created in the client panel under Profile → API Keys and sent as a Bearer token. API access costs nothing extra; you pay only for the servers you order. The API is in public beta: stable enough to build on, though endpoints and response shapes may still change.
The bare-metal runbook, as API calls.
The operations your runbooks already describe for dedicated servers, callable from your own tooling instead of a browser session.
Power
Power a server on or off, or reset it, from your own tooling rather than a browser session.
- POST /dedicated/{id}/power
Provision status
Poll a newly ordered machine until it is ready, then hand it to your configuration management.
- GET /dedicated/{id}/provision-status
OS reinstall
Reinstall the operating system when a machine is rebuilt or given a new role. A reinstall wipes the disks, so gate it behind a human confirmation in your tooling.
- POST /dedicated/{id}/reinstall
Password reset
Reset the root password from the same tooling that runs the rest of the fleet. On automatically provisioned servers this re-provisions the machine and erases its data, so treat it like a reinstall.
- POST /dedicated/{id}/password
IP inventory
List the addresses on each server and feed them to your IPAM, firewall rules or DNS automation.
- GET /dedicated/{id}/ips
Stats and traffic
Pull stats and traffic per server into the capacity reports you already produce.
- GET /dedicated/{id}/stats
- GET /dedicated/{id}/traffic
The same key runs your KVM VPS
Virtual machines sit in the same API, the same projects and the same invoice as the bare metal.
- Start · stop · shutdown · reboot
- OS reinstall
- Root password reset
- IP list
- Stats
- Snapshots: take · revert · delete
- Backups: list · create · restore
- Custom images: capture · register
- SSH keys
- Cloud-init user-data at order time
- Add-ons and plan upgrades
- Cancel or renew a service
Wait for the install. Then read the IPs.
- 01Create a key in the client panel under Profile → API Keys. Choose its scopes; the key is shown once.
- 02Poll
provision-statusfor the new server until it is ready. - 03Read
/ipsand hand the addresses to your inventory, DNS or configuration management. - 04Every response uses the same
{ success, data }envelope, and errors carry machine-readable codes such asRATE_LIMITEDorCONFLICT.
# 1 · Poll the new server until it is ready
curl https://my.voxa.host/api/v1/dedicated/$SERVER_ID/provision-status \
-H "Authorization: Bearer fbk_…"
# 2 · Then fetch its IP addresses
curl https://my.voxa.host/api/v1/dedicated/$SERVER_ID/ips \
-H "Authorization: Bearer fbk_…"
# Every response: { "success": true, "data": { … } }Full reference: my.voxa.host/api/v1/docs
Governance for fleets, not just scripts.
Automation is the easy half. These are the controls that let a platform team hand keys to people, projects and pipelines without handing over the whole account.
Projects for every environment
Group servers into projects that keep production, staging and each client’s environment apart. A key bound to a project sees and changes only that project: its services, orders, custom images and SSH keys. Billing stays with the account, on one invoice and one credit balance.
Scoped, expiring keys
Each key carries only the scopes chosen at creation (read, services, orders, billing, destructive), and they can never be widened later. Add an IP allowlist and an expiry date. The key is shown once; keys are created and revoked only in the panel.
Team keys follow team permissions
A key created by a team member can do no more than that member’s own account permissions allow, and those permissions are re-checked on every request.
Finance workflows
Read invoices, proformas, transactions, the credit balance and this month’s usage, and pay open invoices and proformas from account credit, from the tools your finance team already runs.
Availability before you order
Check whether a product is available in a given location before you place the order, then pass cloud-init user-data and SSH keys with the order itself.
Safe retries, visible limits
Orders accept an Idempotency-Key header, so a create retried after a timeout does not order twice. Each key gets 1,000 requests per hour by default, reported in X-RateLimit-* headers, with Retry-After on a 429 and machine-readable error codes.
What to know before you build.
- Status
- Public beta (v1). Stable enough to build on, but endpoints and response shapes may still change.
- Testing
- There is no sandbox or test mode. An order placed while you test is a real order.
- Clients
- No official SDKs. The OpenAPI 3.0 spec is the contract, and a plain-Markdown guide is written to be read by coding assistants and AI agents. Read the guide
- Cool-downs
- Power actions, reinstalls and password resets have per-server cool-downs, on top of the per-key rate limit.
- Cost
- API access costs nothing extra. You pay only for the services you order.
Dedicated server API questions
Create a key. Make the first call.
Keys live in the client panel under Profile → API Keys. Choose the scopes, bind the key to a project if you want to, and copy it: it is shown once.
Public beta · No extra charge for API access
- Base URL
- https://my.voxa.host/api/v1
- Auth
- Bearer fbk_…
- Keys
- Profile → API Keys
- Spec
- OpenAPI 3.0
- Rate limit
- 1,000 req/h per key
- Status
- Public beta (v1)