Sign Up

Computer Use

POST/computeruse/a11y/find

Search the AT-SPI tree for nodes matching a role/name/state filter and return a flat list.

Request Body

application/json

Find request

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/computeruse/a11y/find" \  -H "Content-Type: application/json" \  -d '{}'
{  "matches": [    {      "actions": [        "string"      ],      "bounds": {        "height": 0,        "width": 0,        "x": 0,        "y": 0      },      "children": [        {}      ],      "description": "string",      "id": "string",      "name": "string",      "role": "string",      "states": [        "string"      ]    }  ],  "truncated": true}
POST/computeruse/a11y/node/focus

Move keyboard focus to the AT-SPI node identified by id (bus-name:object-path).

Request Body

application/json

Node focus request

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/computeruse/a11y/node/focus" \  -H "Content-Type: application/json" \  -d '{    "id": "string"  }'
{}
POST/computeruse/a11y/node/invoke

Call an AT-SPI Action on the node. Leave action empty to invoke the node's primary (first) action.

Request Body

application/json

Invoke request

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/computeruse/a11y/node/invoke" \  -H "Content-Type: application/json" \  -d '{    "id": "string"  }'
{}
POST/computeruse/a11y/node/value

Write the given value to the node via EditableText.SetTextContents or, for numeric controls, Value.CurrentValue.

Request Body

application/json

Set value request

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/computeruse/a11y/node/value" \  -H "Content-Type: application/json" \  -d '{    "id": "string"  }'
{}
GET/computeruse/a11y/tree

Fetch the AT-SPI accessibility tree for the focused application, a specific PID, or all registered applications.

Query Parameters

scope?string

Scope: focused | pid | all (default: focused)

pid?integer

Process ID when scope=pid

maxDepth?integer

Max tree depth (-1 unbounded, 0 root only; default -1)

Response Body

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/computeruse/a11y/tree"
{  "root": {    "actions": [      "string"    ],    "bounds": {      "height": 0,      "width": 0,      "x": 0,      "y": 0    },    "children": [      {}    ],    "description": "string",    "id": "string",    "name": "string",    "role": "string",    "states": [      "string"    ]  },  "truncated": true}
GET/computeruse/display/info

Get information about all available displays

Response Body

application/json

application/json

curl -X GET "https://example.com/computeruse/display/info"
{  "displays": [    {      "height": 0,      "id": 0,      "isActive": true,      "width": 0,      "x": 0,      "y": 0    }  ]}
GET/computeruse/display/windows

Get information about all open windows

Response Body

application/json

application/json

curl -X GET "https://example.com/computeruse/display/windows"
{  "windows": [    {      "height": 0,      "id": 0,      "isActive": true,      "title": "string",      "width": 0,      "x": 0,      "y": 0    }  ]}
POST/computeruse/keyboard/hotkey

Press a hotkey combination (e.g., ctrl+c, cmd+v)

Request Body

application/json

Hotkey press request

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

curl -X POST "https://example.com/computeruse/keyboard/hotkey" \  -H "Content-Type: application/json" \  -d '{}'
{}
POST/computeruse/keyboard/key

Press a key with optional modifiers

Request Body

application/json

Key press request

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

curl -X POST "https://example.com/computeruse/keyboard/key" \  -H "Content-Type: application/json" \  -d '{}'
{}
POST/computeruse/keyboard/type

Type text with optional delay between keystrokes

Request Body

application/json

Text typing request

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

curl -X POST "https://example.com/computeruse/keyboard/type" \  -H "Content-Type: application/json" \  -d '{}'
{}
POST/computeruse/mouse/click

Click the mouse button at the specified coordinates

Request Body

application/json

Mouse click request

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

curl -X POST "https://example.com/computeruse/mouse/click" \  -H "Content-Type: application/json" \  -d '{}'
{  "x": 0,  "y": 0}
POST/computeruse/mouse/drag

Drag the mouse from start to end coordinates

Request Body

application/json

Mouse drag request

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

curl -X POST "https://example.com/computeruse/mouse/drag" \  -H "Content-Type: application/json" \  -d '{}'
{  "x": 0,  "y": 0}
POST/computeruse/mouse/move

Move the mouse cursor to the specified coordinates

Request Body

application/json

Mouse move request

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

curl -X POST "https://example.com/computeruse/mouse/move" \  -H "Content-Type: application/json" \  -d '{}'
{  "x": 0,  "y": 0}
GET/computeruse/mouse/position

Get the current mouse cursor position

Response Body

application/json

application/json

curl -X GET "https://example.com/computeruse/mouse/position"
{  "x": 0,  "y": 0}
POST/computeruse/mouse/scroll

Scroll the mouse wheel at the specified coordinates

Request Body

application/json

Mouse scroll request

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

curl -X POST "https://example.com/computeruse/mouse/scroll" \  -H "Content-Type: application/json" \  -d '{}'
{  "success": true}
GET/computeruse/process-status

Get the status of all computer use processes

Response Body

application/json

curl -X GET "https://example.com/computeruse/process-status"
{  "status": "string"}
GET/computeruse/process/{processName}/errors

Get errors for a specific computer use process

Path Parameters

processName*string

Process name to get errors for

Response Body

application/json

curl -X GET "https://example.com/computeruse/process/string/errors"
{  "errors": "string",  "processName": "string"}
GET/computeruse/process/{processName}/logs

Get logs for a specific computer use process

Path Parameters

processName*string

Process name to get logs for

Response Body

application/json

curl -X GET "https://example.com/computeruse/process/string/logs"
{  "logs": "string",  "processName": "string"}
POST/computeruse/process/{processName}/restart

Restart a specific computer use process

Path Parameters

processName*string

Process name to restart

Response Body

application/json

curl -X POST "https://example.com/computeruse/process/string/restart"
{  "message": "string",  "processName": "string"}
GET/computeruse/process/{processName}/status

Check if a specific computer use process is running

Path Parameters

processName*string

Process name to check

Response Body

application/json

curl -X GET "https://example.com/computeruse/process/string/status"
{  "processName": "string",  "running": true}
GET/computeruse/recordings

Get a list of all recordings (active and completed)

Response Body

application/json

application/json

curl -X GET "https://example.com/computeruse/recordings"
{  "recordings": [    {      "durationSeconds": 0,      "endTime": "string",      "fileName": "string",      "filePath": "string",      "id": "string",      "sizeBytes": 0,      "startTime": "string",      "status": "string"    }  ]}
POST/computeruse/recordings/start

Start a new screen recording session

Request Body

application/json

Recording options

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/computeruse/recordings/start" \  -H "Content-Type: application/json" \  -d '{}'
{  "durationSeconds": 0,  "endTime": "string",  "fileName": "string",  "filePath": "string",  "id": "string",  "sizeBytes": 0,  "startTime": "string",  "status": "string"}
POST/computeruse/recordings/stop

Stop an active screen recording session

Request Body

application/json

Recording ID to stop

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/computeruse/recordings/stop" \  -H "Content-Type: application/json" \  -d '{    "id": "string"  }'
{  "durationSeconds": 0,  "endTime": "string",  "fileName": "string",  "filePath": "string",  "id": "string",  "sizeBytes": 0,  "startTime": "string",  "status": "string"}
GET/computeruse/recordings/{id}

Get details of a specific recording by ID

Path Parameters

id*string

Recording ID

Response Body

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/computeruse/recordings/string"
{  "durationSeconds": 0,  "endTime": "string",  "fileName": "string",  "filePath": "string",  "id": "string",  "sizeBytes": 0,  "startTime": "string",  "status": "string"}
DELETE/computeruse/recordings/{id}

Delete a recording file by ID

Path Parameters

id*string

Recording ID

Response Body

*/*

*/*

*/*

*/*

curl -X DELETE "https://example.com/computeruse/recordings/string"
Empty
GET/computeruse/recordings/{id}/download

Download a recording by providing its ID

Path Parameters

id*string

Recording ID

Response Body

application/octet-stream

application/octet-stream

application/octet-stream

application/octet-stream

curl -X GET "https://example.com/computeruse/recordings/string/download"
Empty
GET/computeruse/screenshot

Take a screenshot of the entire screen

Query Parameters

showCursor?boolean

Whether to show cursor in screenshot

Response Body

application/json

application/json

application/json

curl -X GET "https://example.com/computeruse/screenshot"
{  "cursorPosition": {    "x": 0,    "y": 0  },  "screenshot": "string",  "sizeBytes": 0}
GET/computeruse/screenshot/compressed

Take a compressed screenshot of the entire screen

Query Parameters

showCursor?boolean

Whether to show cursor in screenshot

format?string

Image format (png or jpeg)

quality?integer

JPEG quality (1-100)

scale?number

Scale factor (0.1-1.0)

Response Body

application/json

application/json

application/json

curl -X GET "https://example.com/computeruse/screenshot/compressed"
{  "cursorPosition": {    "x": 0,    "y": 0  },  "screenshot": "string",  "sizeBytes": 0}
GET/computeruse/screenshot/region

Take a screenshot of a specific region of the screen

Query Parameters

x*integer

X coordinate of the region

y*integer

Y coordinate of the region

width*integer

Width of the region

height*integer

Height of the region

showCursor?boolean

Whether to show cursor in screenshot

Response Body

application/json

application/json

application/json

curl -X GET "https://example.com/computeruse/screenshot/region?x=0&y=0&width=0&height=0"
{  "cursorPosition": {    "x": 0,    "y": 0  },  "screenshot": "string",  "sizeBytes": 0}
GET/computeruse/screenshot/region/compressed

Take a compressed screenshot of a specific region of the screen

Query Parameters

x*integer

X coordinate of the region

y*integer

Y coordinate of the region

width*integer

Width of the region

height*integer

Height of the region

showCursor?boolean

Whether to show cursor in screenshot

format?string

Image format (png or jpeg)

quality?integer

JPEG quality (1-100)

scale?number

Scale factor (0.1-1.0)

Response Body

application/json

application/json

application/json

curl -X GET "https://example.com/computeruse/screenshot/region/compressed?x=0&y=0&width=0&height=0"
{  "cursorPosition": {    "x": 0,    "y": 0  },  "screenshot": "string",  "sizeBytes": 0}
POST/computeruse/start

Start all computer use processes and return their status

Response Body

application/json

curl -X POST "https://example.com/computeruse/start"
{  "message": "string",  "status": {    "property1": {      "autoRestart": true,      "pid": 0,      "priority": 0,      "running": true    },    "property2": {      "autoRestart": true,      "pid": 0,      "priority": 0,      "running": true    }  }}
GET/computeruse/status

Get the current status of the computer use system

Response Body

application/json

application/json

curl -X GET "https://example.com/computeruse/status"
{  "status": "string"}
POST/computeruse/stop

Stop all computer use processes and return their status

Response Body

application/json

curl -X POST "https://example.com/computeruse/stop"
{  "message": "string",  "status": {    "property1": {      "autoRestart": true,      "pid": 0,      "priority": 0,      "running": true    },    "property2": {      "autoRestart": true,      "pid": 0,      "priority": 0,      "running": true    }  }}