Skip to content

VPS API

Virtual Private Servers

Endpoints

MethodPathDescription
GET/v1/vpsList VPS
POST/v1/vpsCreate VPS
GET/v1/vps/plans/List plans
GET/v1/vps/os-templatesList OS templates
GET/v1/vps/regionsList regions
GET/v1/vps/{vps_id}Get VPS
GET/v1/vps/{vps_id}/statusGet status
POST/v1/vps/{vps_id}/startStart VPS
POST/v1/vps/{vps_id}/stopStop VPS
POST/v1/vps/{vps_id}/rebootReboot VPS

GET /v1/vps

List VPS

Get all VPS instances with hostname, IP addresses, power state, and resource allocation.

Response:

FieldTypeDescription
instancesarray
totalinteger

Example:

bash
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:

FieldTypeDescription
hostnamestringRequired. Server hostname (FQDN recommended)
plan_codestringRequired. VPS plan code (from /v1/vps/plans)
regionstringRequired. Datacenter region (see GET /v1/vps/regions for available options)
os_templatestringRequired. Operating system template (from /v1/vps/os-templates)
display_namestringUser-friendly name for dashboard display
ssh_keysarraySSH public keys for server access (recommended)

Response:

FieldTypeDescription
idstringVPS instance ID
hostnamestring
statusstringValues: provisioning, running
ipv4stringPrimary IPv4 address
ipv6stringPrimary IPv6 address

Example:

bash
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:

bash
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:

bash
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:

bash
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:

FieldTypeDescription
idstring
hostnamestring
display_namestring
statusstringValues: running, stopped, starting, stopping, provisioning
plan_codestring
regionstring
os_templatestring
ipv4_addressstring
ipv6_addressstring
vcpusinteger
memory_gbinteger
disk_gbinteger
created_atstring

Example:

bash
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:

FieldTypeDescription
statusstring
uptime_secondsinteger
cpu_usage_percentnumber
memory_usage_percentnumber
disk_usage_percentnumber
network_in_bytesinteger
network_out_bytesinteger

Example:

bash
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:

FieldTypeDescription
successboolean
actionstring
messagestring

Example:

bash
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:

FieldTypeDescription
successboolean
actionstring
messagestring

Example:

bash
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:

FieldTypeDescription
successboolean
actionstring
messagestring

Example:

bash
curl -X POST https://api.wayscloud.services/v1/vps/{vps_id}/reboot \
  -H "X-API-Key: YOUR_API_KEY"

WAYSCloud AS