Deploy VPS
with one API call
Serverless microservice for automatic VPS provisioning.
DigitalOcean, Hetzner — unified REST interface, zero Terraform.
Native fetch. No binaries. Pure V8 isolates.
Init
Callback
How It Works
Unified Endpoint
Single JSON payload. Provider, region, size, ZeroTier network — one call deploys everything.
Provider Routing
Modular adapters translate unified sizes and regions to provider-specific API formats.
Mesh Networking
Each VPS auto-joins your ZeroTier network via cloud-init. Instant private connectivity.
Ready Callback
The VPS sends a POST to your webhook_url when setup completes. No polling needed.
Supported Providers
Droplets API. Regions: fra1, ams3, nyc1, sfo3, sgp1. Ubuntu 24.04 LTS.
Servers API. Locations: fsn1, nbg1, ash, hil, sin. Ubuntu 24.04.
API Contract
{
"provider": "digitalocean",
"client_api_token": "dop_v1_abc123...",
"region": "eu-central",
"size": "small",
"zt_network_id": "8056c2e21c000001",
"webhook_url": "https://your-app.com/hook"
} {
"success": true,
"server": {
"id": 412847592,
"name": "vps-1716681234567",
"ip": null,
"status": "new",
"provider": "digitalocean",
"region": "eu-central",
"size": "small"
}
} Provider errors (invalid token, rate limits, insufficient funds) are normalized into a consistent JSON format.
Pure REST API calls via native fetch. No external binaries, no state files, no CLI tools. V8 isolate compatible.
Each VPS automatically installs ZeroTier and joins your network. Webhook fires when ready.
Ready to deploy?
Spin up a VPS
in one request
curl -X POST https://vpsrunner.pages.dev/api/deploy \
-H "Content-Type: application/json" \
-d '{"provider":"hetzner","client_api_token":"...","region":"eu-central","size":"small","zt_network_id":"...","webhook_url":"..."}'