curl -X POST "http://CONTROL_PLANE_IP:PORT/create_desktop" \
-H "Content-Type: application/json" \
-d '{
"provider_name": "docker",
"os_type": "Ubuntu",
"require_a11y_tree": true,
"require_terminal": false,
"timeout": 3600
}'
{
"status": "accepted",
"message": "Desktop environment creation started",
"vm_id": "vm-abc123",
"task_id": "uuid-string",
"status_url": "/task_status/uuid-string"
}
{
"error": "Maximum number of environments reached",
"details": "Cannot create new environment. Maximum of 16 concurrent environments allowed.",
"current_count": 16,
"max_allowed": 16
}
Control Plane
Create Desktop
Provision a new VM environment
POST
/
create_desktop
curl -X POST "http://CONTROL_PLANE_IP:PORT/create_desktop" \
-H "Content-Type: application/json" \
-d '{
"provider_name": "docker",
"os_type": "Ubuntu",
"require_a11y_tree": true,
"require_terminal": false,
"timeout": 3600
}'
{
"status": "accepted",
"message": "Desktop environment creation started",
"vm_id": "vm-abc123",
"task_id": "uuid-string",
"status_url": "/task_status/uuid-string"
}
{
"error": "Maximum number of environments reached",
"details": "Cannot create new environment. Maximum of 16 concurrent environments allowed.",
"current_count": 16,
"max_allowed": 16
}
Creates and initializes a new desktop environment. Runs as a background task and returns immediately with a task ID for status polling. Supports multiple VMs simultaneously (max 16).
Returns
429 Too Many Requests if the maximum number of concurrent environments is reached.
Request Body
string
default:"docker"
VM provider
string
default:"Ubuntu"
Operating system (
Ubuntu, Windows, macOS)string
Remote server IP (for remote VMs)
integer
Remote server port
boolean
default:"false"
Enable accessibility tree
boolean
default:"false"
Enable terminal access
integer
default:"3600"
Session timeout in seconds
Response
string
Request status (
accepted)string
Status message
string
Unique identifier for the VM
string
Background task ID for status polling
string
URL to check task status
curl -X POST "http://CONTROL_PLANE_IP:PORT/create_desktop" \
-H "Content-Type: application/json" \
-d '{
"provider_name": "docker",
"os_type": "Ubuntu",
"require_a11y_tree": true,
"require_terminal": false,
"timeout": 3600
}'
{
"status": "accepted",
"message": "Desktop environment creation started",
"vm_id": "vm-abc123",
"task_id": "uuid-string",
"status_url": "/task_status/uuid-string"
}
{
"error": "Maximum number of environments reached",
"details": "Cannot create new environment. Maximum of 16 concurrent environments allowed.",
"current_count": 16,
"max_allowed": 16
}