VPS API
Virtual Private Servers
Endpoints
| Method | Path | Description |
|---|---|---|
GET | /v1/vps | List VPS |
POST | /v1/vps | Create VPS |
GET | /v1/vps/plans/ | List plans |
GET | /v1/vps/os-templates | List OS templates |
GET | /v1/vps/regions | List regions |
GET | /v1/vps/{vps_id} | Get VPS |
GET | /v1/vps/{vps_id}/status | Get status |
POST | /v1/vps/{vps_id}/start | Start VPS |
POST | /v1/vps/{vps_id}/stop | Stop VPS |
POST | /v1/vps/{vps_id}/reboot | Reboot VPS |
GET /v1/vps
List VPS
Get all VPS instances with hostname, IP addresses, power state, and resource allocation.
Response:
| Field | Type | Description |
|---|---|---|
instances | array | |
total | integer |
Example:
curl https://api.wayscloud.services/v1/vps \
-H "X-API-Key: YOUR_API_KEY"POST /v1/vps
Create VPS
Provision a new VPS. Takes 1-3 minutes. Include SSH keys for passwordless access.
Request Body:
| Field | Type | Description |
|---|---|---|
hostname | string | Required. Server hostname (FQDN recommended) |
plan_code | string | Required. VPS plan code (from /v1/vps/plans) |
region | string | Required. Datacenter region (see GET /v1/vps/regions for available options) |
os_template | string | Required. Operating system template (from /v1/vps/os-templates) |
display_name | string | User-friendly name for dashboard display |
ssh_keys | array | SSH public keys for server access (recommended) |
Response:
| Field | Type | Description |
|---|---|---|
id | string | VPS instance ID |
hostname | string | |
status | string | Values: provisioning, running |
ipv4 | string | Primary IPv4 address |
ipv6 | string | Primary IPv6 address |
Example:
curl -X POST https://api.wayscloud.services/v1/vps \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{...}'GET /v1/vps/plans/
List plans
Get available VPS configurations with vCPU, RAM, storage, bandwidth, and pricing.
Response:
Example:
curl https://api.wayscloud.services/v1/vps/plans/ \
-H "X-API-Key: YOUR_API_KEY"GET /v1/vps/os-templates
List OS templates
Get available operating systems for VPS provisioning: Ubuntu, Debian, Rocky, AlmaLinux, and Windows Server.
Response:
Example:
curl https://api.wayscloud.services/v1/vps/os-templates \
-H "X-API-Key: YOUR_API_KEY"GET /v1/vps/regions
List regions
Get available datacenter regions. Choose the region closest to your users for best latency.
Response:
Example:
curl https://api.wayscloud.services/v1/vps/regions \
-H "X-API-Key: YOUR_API_KEY"GET /v1/vps/
Get VPS
Get complete VPS details: hostname, IP addresses, OS, plan, and configuration.
Response:
| Field | Type | Description |
|---|---|---|
id | string | |
hostname | string | |
display_name | string | |
status | string | Values: running, stopped, starting, stopping, provisioning |
plan_code | string | |
region | string | |
os_template | string | |
ipv4_address | string | |
ipv6_address | string | |
vcpus | integer | |
memory_gb | integer | |
disk_gb | integer | |
created_at | string |
Example:
curl https://api.wayscloud.services/v1/vps/{vps_id} \
-H "X-API-Key: YOUR_API_KEY"GET /v1/vps/{vps_id}/status
Get status
Check power state (running/stopped), uptime, and health indicators.
Response:
| Field | Type | Description |
|---|---|---|
status | string | |
uptime_seconds | integer | |
cpu_usage_percent | number | |
memory_usage_percent | number | |
disk_usage_percent | number | |
network_in_bytes | integer | |
network_out_bytes | integer |
Example:
curl https://api.wayscloud.services/v1/vps/{vps_id}/status \
-H "X-API-Key: YOUR_API_KEY"POST /v1/vps/{vps_id}/start
Start VPS
Power on a stopped VPS. Accessible within 30-60 seconds.
Response:
| Field | Type | Description |
|---|---|---|
success | boolean | |
action | string | |
message | string |
Example:
curl -X POST https://api.wayscloud.services/v1/vps/{vps_id}/start \
-H "X-API-Key: YOUR_API_KEY"POST /v1/vps/{vps_id}/stop
Stop VPS
Gracefully shut down a running VPS. Stopped VPS still incurs storage costs.
Response:
| Field | Type | Description |
|---|---|---|
success | boolean | |
action | string | |
message | string |
Example:
curl -X POST https://api.wayscloud.services/v1/vps/{vps_id}/stop \
-H "X-API-Key: YOUR_API_KEY"POST /v1/vps/{vps_id}/reboot
Reboot VPS
Graceful reboot. Back online within 1-2 minutes.
Response:
| Field | Type | Description |
|---|---|---|
success | boolean | |
action | string | |
message | string |
Example:
curl -X POST https://api.wayscloud.services/v1/vps/{vps_id}/reboot \
-H "X-API-Key: YOUR_API_KEY"