Overview
Every Nen desktop exposes two HTTP endpoints that give you full control over the desktop:| Endpoint | Method | Description |
|---|---|---|
/desktops/{id}/tools | GET | Discover available tools as JSON Schema |
/desktops/{id}/execute | POST | Execute a tool action and get a screenshot back |
https://desktop.api.getnen.ai
Your agent runs anywhere — your laptop, your cloud, your customer’s infra. Nen is just the execution backend.
Authentication
- Get your API key from the Nen Dashboard
- Pass it as the
Authorization: Bearerheader
Tool Discovery
GET /desktops/{id}/tools returns an array of tool definitions in JSON Schema format:
Tool Execution
POST /desktops/{id}/execute runs a tool and returns the result plus a post-action screenshot.
Request:
| Header | Value |
|---|---|
Authorization | Bearer sk_nen_... |
Content-Type | application/json |
| Field | Type | Description |
|---|---|---|
status | string | Always "ok" on a successful execution. |
output | string | Optional. Short text description of what happened. Only present when the underlying action produced text output. |
base64_image | string | Optional. PNG screenshot, base64-encoded. Produced by actions that inherently return a screenshot (e.g. screenshot); plain actions like left_click may not include one. |
coordinate | [int, int] | Optional. Final cursor position, if the action moved or reported the cursor. |
status is the only guaranteed field; the rest depend on the action. A successful left_click with no reported output can legitimately return just {"status": "ok"}.
Error Handling
When a tool execution fails, the response is a single-field error object with an HTTP 4xx/5xx status:screenshot call.
Next Steps
Supported Tools
All tools and supported models
Computer Tool
Full reference for all computer actions