Services
VPS service detail (WHMCS + Virtualizor combined), real-time metrics and OS templates for rebuild. All endpoints sit behind ServiceOwnershipMiddleware — a reseller can only access its own services.
Reseller's services — bulk list (cursor or page + search)
Returns all of the reseller's services page by page. Designed for cron status
VPS service detail (WHMCS + Virtualizor combined)
Combines the WHMCS-side information of the reseller's VPS service (domain, IP,
Terminate the service via the WHMCS module hook (asynchronous)
`WhmcsApiClient::moduleTerminate` is called. The WHMCS provisioning queue runs the Virtualizor `delvs` job async (~60s queue + ~30s delvs). For this reason the response returns **HTTP 202 Accepted**; the reseller then tracks it with GET /services/{id}/status.
Real-time VPS metrics (CPU/RAM/disk/net)
LIVE status and metrics via Virtualizor admin `act=vs&vs_status=<id>` (queries the
Access details (username/password/ip/hostname/panel_url)
Returns the root access details of the reseller's VPS. `password` is decrypted via
OS templates allowed for rebuild on this VPS (service-specific filter)
Selection list for the VPS rebuild operation. **ENH-001 (live test 2026-05-19):**
VPS power operation (start/stop/restart/poweroff)
Changes the power state of the reseller's VPS. The `action` URL parameter accepts
VPS OS reinstall (asynchronous, 202 Accepted)
Reinstalls the VPS with the selected OS template. ALL data on the disk is
Short-lived (60s) NoVNC connection info
Used to connect directly from the browser to the `wss://{host}:{port}/{websockify_path}` URL
Change the VPS root password
Changes the root password via a Virtualizor `act=editvs` round-trip
Suspend the service via the WHMCS module hook
Calls WhmcsApiClient::moduleSuspend. WHMCS triggers its own virtualizor
Unsuspend the service via the WHMCS module hook
Calls WhmcsApiClient::moduleUnsuspend. In our DB,
Upgrade the service's config options
Upgrades the service's configurable options (`resource`-role groups like RAM/CPU/disk) to new values. The WHMCS `UpgradeProduct` action is called with `type=configoptions`; the prorata difference is calculated on the WHMCS side.