Skip to content
Coritan Docs

Client API: Cloud Compute

Cloud Compute VM instances (power, console, backups, and details).

View as Markdown

Cloud Compute VM instances (power, console, backups, and details). Paths remain under /api/v1/client/vps.

Base URL: https://api.coritan.com/api/v1. Paths below are complete.

To try these requests in the browser, open the interactive Client API reference.

Method Path Summary
GET /api/v1/client/vps List all VPS instances owned by the current user
GET /api/v1/client/vps/templates OS templates ready for order/rebuild: enabled and ready on at least one active node
GET /api/v1/client/vps/{uuid} Get VPS instance details including template metadata
GET /api/v1/client/vps/{uuid}/backups List backups for this instance
POST /api/v1/client/vps/{uuid}/backups Create a new backup of this instance
DELETE /api/v1/client/vps/{uuid}/backups/{backup_id} Delete a backup
POST /api/v1/client/vps/{uuid}/backups/{backup_id}/restore Restore from a backup
GET /api/v1/client/vps/{uuid}/bandwidth Get current billing period bandwidth usage vs plan traffic allotment (TB)
POST /api/v1/client/vps/{uuid}/cloud-init/regenerate Regenerate cloud init
GET /api/v1/client/vps/{uuid}/config Get instance config
GET /api/v1/client/vps/{uuid}/console Mint a VNC console session (WebSocket path + RFB password)
GET /api/v1/client/vps/{uuid}/credentials Username + whether a password is stored (no plaintext)
GET /api/v1/client/vps/{uuid}/graphs Get RRD graph data from Proxmox
GET /api/v1/client/vps/{uuid}/guest Get guest info
PATCH /api/v1/client/vps/{uuid}/hostname Patch hostname
GET /api/v1/client/vps/{uuid}/ips Get instance IPs
POST /api/v1/client/vps/{uuid}/name Name instance
POST /api/v1/client/vps/{uuid}/power Execute a power action on the VPS
GET /api/v1/client/vps/{uuid}/ptr Reverse DNS of every address attached to the instance
PATCH /api/v1/client/vps/{uuid}/ptr Set the reverse DNS of one attached address (the primary by default)
POST /api/v1/client/vps/{uuid}/rebuild Rebuild the VPS with a new OS template
POST /api/v1/client/vps/{uuid}/rescue/enter Rescue enter
POST /api/v1/client/vps/{uuid}/rescue/exit Rescue exit
GET /api/v1/client/vps/{uuid}/rescue/media Rescue media
POST /api/v1/client/vps/{uuid}/reset-password Reset the root/admin password
POST /api/v1/client/vps/{uuid}/resize-preview Capacity/mode preview for a plan change resize (billing via /services change-plan)
GET /api/v1/client/vps/{uuid}/snapshots List snapshots
POST /api/v1/client/vps/{uuid}/snapshots Create snapshot
DELETE /api/v1/client/vps/{uuid}/snapshots/{snapshot_id} Delete snapshot
POST /api/v1/client/vps/{uuid}/snapshots/{snapshot_id}/rollback Rollback snapshot
PUT /api/v1/client/vps/{uuid}/ssh-keys Put SSH keys
GET /api/v1/client/vps/{uuid}/status Get real-time VM status from Proxmox (enriched)
GET /api/v1/client/vps/{uuid}/tasks Get instance tasks

List all VPS instances owned by the current user

Section titled List all VPS instances owned by the current user

GET /api/v1/client/vps

List all VPS instances owned by the current user.

Authentication: an access token, sent as Authorization: Bearer <token>.

Name In Type Required
tag query string or null no
Status Meaning
200 Success.
422 The request is not valid. detail lists each problem.

OS templates ready for order/rebuild: enabled and ready on at least one active node

Section titled OS templates ready for order/rebuild: enabled and ready on at least one active node

GET /api/v1/client/vps/templates

OS templates ready for order/rebuild: enabled and ready on at least one active node.

Authentication: an access token, sent as Authorization: Bearer <token>.

Status Meaning
200 Success.

Get VPS instance details including template metadata

Section titled Get VPS instance details including template metadata

GET /api/v1/client/vps/{uuid}

Get VPS instance details including template metadata.

Authentication: an access token, sent as Authorization: Bearer <token>.

Name In Type Required
uuid path string yes
Status Meaning
200 Success.
422 The request is not valid. detail lists each problem.

List backups for this instance

Section titled List backups for this instance

GET /api/v1/client/vps/{uuid}/backups

List backups for this instance.

Authentication: an access token, sent as Authorization: Bearer <token>.

Name In Type Required
uuid path string yes
Status Meaning
200 Success.
422 The request is not valid. detail lists each problem.

Create a new backup of this instance

Section titled Create a new backup of this instance

POST /api/v1/client/vps/{uuid}/backups

Create a new backup of this instance.

Authentication: an access token, sent as Authorization: Bearer <token>.

Name In Type Required
uuid path string yes

application/json

Field Type Required
note string or null no
mode string no
compress string no
Status Meaning
200 Success.
422 The request is not valid. detail lists each problem.

DELETE /api/v1/client/vps/{uuid}/backups/{backup_id}

Delete a backup.

Authentication: an access token, sent as Authorization: Bearer <token>.

Name In Type Required
uuid path string yes
backup_id path integer yes
Status Meaning
200 Success.
422 The request is not valid. detail lists each problem.

POST /api/v1/client/vps/{uuid}/backups/{backup_id}/restore

Restore from a backup. This will restart the VPS.

Authentication: an access token, sent as Authorization: Bearer <token>.

Name In Type Required
uuid path string yes
backup_id path integer yes
Status Meaning
200 Success.
422 The request is not valid. detail lists each problem.

Get current billing period bandwidth usage vs plan traffic allotment (TB)

Section titled Get current billing period bandwidth usage vs plan traffic allotment (TB)

GET /api/v1/client/vps/{uuid}/bandwidth

Get current billing period bandwidth usage vs plan traffic allotment (TB).

Authentication: an access token, sent as Authorization: Bearer <token>.

Name In Type Required
uuid path string yes
Status Meaning
200 Success.
422 The request is not valid. detail lists each problem.

POST /api/v1/client/vps/{uuid}/cloud-init/regenerate

Authentication: an access token, sent as Authorization: Bearer <token>.

Name In Type Required
uuid path string yes
Status Meaning
200 Success.
422 The request is not valid. detail lists each problem.

GET /api/v1/client/vps/{uuid}/config

Authentication: an access token, sent as Authorization: Bearer <token>.

Name In Type Required
uuid path string yes
Status Meaning
200 Success.
422 The request is not valid. detail lists each problem.

Mint a VNC console session (WebSocket path + RFB password)

Section titled Mint a VNC console session (WebSocket path + RFB password)

GET /api/v1/client/vps/{uuid}/console

Mint a VNC console session (WebSocket path + RFB password).

Authentication: an access token, sent as Authorization: Bearer <token>.

Name In Type Required
uuid path string yes
Status Meaning
200 Success.
422 The request is not valid. detail lists each problem.

Username + whether a password is stored (no plaintext)

Section titled Username + whether a password is stored (no plaintext)

GET /api/v1/client/vps/{uuid}/credentials

Username + whether a password is stored (no plaintext).

Authentication: an access token, sent as Authorization: Bearer <token>.

Name In Type Required
uuid path string yes
Status Meaning
200 Success.
422 The request is not valid. detail lists each problem.

Get RRD graph data from Proxmox

Section titled Get RRD graph data from Proxmox

GET /api/v1/client/vps/{uuid}/graphs

Get RRD graph data from Proxmox.

Authentication: an access token, sent as Authorization: Bearer <token>.

Name In Type Required Description
uuid path string yes
timeframe query string no Default: hour.
Status Meaning
200 Success.
422 The request is not valid. detail lists each problem.

GET /api/v1/client/vps/{uuid}/guest

Authentication: an access token, sent as Authorization: Bearer <token>.

Name In Type Required
uuid path string yes
Status Meaning
200 Success.
422 The request is not valid. detail lists each problem.

PATCH /api/v1/client/vps/{uuid}/hostname

Authentication: an access token, sent as Authorization: Bearer <token>.

Name In Type Required
uuid path string yes

application/json (required)

Field Type Required
hostname string yes
reboot boolean no
Status Meaning
200 Success.
422 The request is not valid. detail lists each problem.

GET /api/v1/client/vps/{uuid}/ips

Authentication: an access token, sent as Authorization: Bearer <token>.

Name In Type Required
uuid path string yes
Status Meaning
200 Success.
422 The request is not valid. detail lists each problem.

POST /api/v1/client/vps/{uuid}/name

Give the instance a name in a zone the customer holds: A and AAAA records for its addresses, optionally the same name as reverse DNS and as the guest hostname.

Authentication: an access token, sent as Authorization: Bearer <token>.

Name In Type Required
uuid path string yes

application/json (required)

Field Type Required
hostname string yes
set_ptr boolean no
set_hostname boolean no
Status Meaning
200 Success.
422 The request is not valid. detail lists each problem.

Execute a power action on the VPS

Section titled Execute a power action on the VPS

POST /api/v1/client/vps/{uuid}/power

Execute a power action on the VPS.

Authentication: an access token, sent as Authorization: Bearer <token>.

Name In Type Required
uuid path string yes

application/json (required)

Field Type Required
action string yes
Status Meaning
200 Success.
422 The request is not valid. detail lists each problem.

Reverse DNS of every address attached to the instance

Section titled Reverse DNS of every address attached to the instance

GET /api/v1/client/vps/{uuid}/ptr

Reverse DNS of every address attached to the instance.

Authentication: an access token, sent as Authorization: Bearer <token>.

Name In Type Required
uuid path string yes
Status Meaning
200 Success.
422 The request is not valid. detail lists each problem.

Set the reverse DNS of one attached address (the primary by default)

Section titled Set the reverse DNS of one attached address (the primary by default)

PATCH /api/v1/client/vps/{uuid}/ptr

Set the reverse DNS of one attached address (the primary by default).

Authentication: an access token, sent as Authorization: Bearer <token>.

Name In Type Required
uuid path string yes

application/json (required)

Field Type Required
hostname string yes
address string or null no
Status Meaning
200 Success.
422 The request is not valid. detail lists each problem.

Rebuild the VPS with a new OS template

Section titled Rebuild the VPS with a new OS template

POST /api/v1/client/vps/{uuid}/rebuild

Rebuild the VPS with a new OS template. This destroys all data.

Authentication: an access token, sent as Authorization: Bearer <token>.

Name In Type Required
uuid path string yes

application/json (required)

Field Type Required
template_id integer yes
Status Meaning
200 Success.
422 The request is not valid. detail lists each problem.

POST /api/v1/client/vps/{uuid}/rescue/enter

Authentication: an access token, sent as Authorization: Bearer <token>.

Name In Type Required
uuid path string yes

application/json (required)

Field Type Required
iso_volid string yes
Status Meaning
200 Success.
422 The request is not valid. detail lists each problem.

POST /api/v1/client/vps/{uuid}/rescue/exit

Authentication: an access token, sent as Authorization: Bearer <token>.

Name In Type Required
uuid path string yes
Status Meaning
200 Success.
422 The request is not valid. detail lists each problem.

GET /api/v1/client/vps/{uuid}/rescue/media

Authentication: an access token, sent as Authorization: Bearer <token>.

Name In Type Required
uuid path string yes
Status Meaning
200 Success.
422 The request is not valid. detail lists each problem.

POST /api/v1/client/vps/{uuid}/reset-password

Reset the root/admin password. Requires QEMU guest agent.

Authentication: an access token, sent as Authorization: Bearer <token>.

Name In Type Required
uuid path string yes
Status Meaning
200 Success.
422 The request is not valid. detail lists each problem.

Capacity/mode preview for a plan change resize (billing via /services change-plan)

Section titled Capacity/mode preview for a plan change resize (billing via /services change-plan)

POST /api/v1/client/vps/{uuid}/resize-preview

Capacity/mode preview for a plan change resize (billing via /services change-plan).

Authentication: an access token, sent as Authorization: Bearer <token>.

Name In Type Required
uuid path string yes

application/json (required)

Field Type Required
cpu_cores integer or null no
memory_mb integer or null no
disk_gb integer or null no
Status Meaning
200 Success.
422 The request is not valid. detail lists each problem.

GET /api/v1/client/vps/{uuid}/snapshots

Authentication: an access token, sent as Authorization: Bearer <token>.

Name In Type Required
uuid path string yes
Status Meaning
200 Success.
422 The request is not valid. detail lists each problem.

POST /api/v1/client/vps/{uuid}/snapshots

Authentication: an access token, sent as Authorization: Bearer <token>.

Name In Type Required
uuid path string yes

application/json (required)

Field Type Required
name string yes
description string or null no
vmstate boolean no
Status Meaning
200 Success.
422 The request is not valid. detail lists each problem.

DELETE /api/v1/client/vps/{uuid}/snapshots/{snapshot_id}

Authentication: an access token, sent as Authorization: Bearer <token>.

Name In Type Required
uuid path string yes
snapshot_id path integer yes
Status Meaning
200 Success.
422 The request is not valid. detail lists each problem.

POST /api/v1/client/vps/{uuid}/snapshots/{snapshot_id}/rollback

Authentication: an access token, sent as Authorization: Bearer <token>.

Name In Type Required
uuid path string yes
snapshot_id path integer yes
Status Meaning
200 Success.
422 The request is not valid. detail lists each problem.

PUT /api/v1/client/vps/{uuid}/ssh-keys

Authentication: an access token, sent as Authorization: Bearer <token>.

Name In Type Required
uuid path string yes

application/json (required)

Field Type Required
ssh_keys string no
Status Meaning
200 Success.
422 The request is not valid. detail lists each problem.

Get real-time VM status from Proxmox (enriched)

Section titled Get real-time VM status from Proxmox (enriched)

GET /api/v1/client/vps/{uuid}/status

Get real-time VM status from Proxmox (enriched).

Authentication: an access token, sent as Authorization: Bearer <token>.

Name In Type Required
uuid path string yes
Status Meaning
200 Success.
422 The request is not valid. detail lists each problem.

GET /api/v1/client/vps/{uuid}/tasks

Authentication: an access token, sent as Authorization: Bearer <token>.

Name In Type Required Description
uuid path string yes
limit query integer no Default: 50.
Status Meaning
200 Success.
422 The request is not valid. detail lists each problem.