Computers API
Computer lifecycle, process, filesystem, workspace, and artifact endpoints.Endpoints
Section titled “Endpoints”All paths address a user-owned Desktop by desktopId.
| Method | Path | Request | Response |
|---|---|---|---|
GET | /api/desktops/{desktopId}/computer | — | ComputerEnvelope |
POST | /api/desktops/{desktopId}/computer/start | — | ComputerEnvelope |
POST | /api/desktops/{desktopId}/computer/pause | — | ComputerEnvelope |
DELETE | /api/desktops/{desktopId}/computer | — | ComputerEnvelope |
GET | /api/desktops/{desktopId}/computer/workspace | — | WorkspaceStatus |
POST | /api/desktops/{desktopId}/computer/process/exec | ProcessExecRequest | ProcessExecResult |
POST | /api/desktops/{desktopId}/computer/fs/glob | FileGlobRequest | FileGlobResult |
POST | /api/desktops/{desktopId}/computer/fs/read | FileReadRequest | FileReadResult |
POST | /api/desktops/{desktopId}/computer/fs/write | FileWriteRequest | FileWriteResult |
DELETE | /api/desktops/{desktopId}/computer/fs/delete | FileDeleteRequest | { ok: true } |
POST | /api/desktops/{desktopId}/computer/fs/move | FileMoveRequest | FileMoveResult |
POST | /api/desktops/{desktopId}/computer/fs/unzip | FileUnzipRequest | FileUnzipResult |
POST | /api/desktops/{desktopId}/computer/fs/upload | binary body + query | FileUploadResult |
GET | /api/desktops/{desktopId}/computer/fs/download?filePath={path} | query parameter | Binary file |
GET | /api/desktops/{desktopId}/computer/fs/media?filePath={path} | query parameter | Binary media |
GET | /api/desktops/{desktopId}/computer/artifacts | — | ArtifactList |
POST | /api/desktops/{desktopId}/computer/artifacts/resolve | ArtifactResolveRequest | ArtifactEnvelope |
GET | /api/desktops/{desktopId}/computer/artifacts/{sessionId}/{artifactId} | path parameters | Binary artifact |
Computer lifecycle
Section titled “Computer lifecycle” GET
/api/desktops/{desktopId}/computer curl https://app.dexto.ai/api/desktops/$DESKTOP_ID/computer \ -H "Authorization: Bearer $DEXTO_API_KEY"{ "computer": { "desktopId": "5fed8735-b087-4c72-95d3-b8669bd45d1a", "provider": "e2b", "status": "running", "providerAttachmentId": "sandbox_01K4M9", "operation": {"type":"idle"}, "createdAt": "2026-09-13T10:00:00.000Z", "updatedAt": "2026-09-13T10:01:12.000Z" }}The start, pause, and delete endpoints return the same ComputerEnvelope after the lifecycle operation.
| Response field | JSON type | Required | Description |
|---|---|---|---|
computer.desktopId | string | Yes | Owned Desktop identifier |
computer.provider | "e2b" | Yes | Managed computer provider |
computer.status | string | Yes | Current lifecycle state |
computer.providerAttachmentId | string | null | Yes | Provider runtime identifier |
computer.operation | object | Yes | idle or in-progress update |
computer.createdAt / updatedAt | string | null | Yes | ISO-8601 lifecycle timestamps |
Run a command
Section titled “Run a command” POST
/api/desktops/{desktopId}/computer/process/exec | Request field | JSON type | Required | Description |
|---|---|---|---|
command | string | Yes | Shell command |
cwd | string | No | Working directory; /workspace by default |
run_in_background | boolean | No | Return after starting the process |
curl https://app.dexto.ai/api/desktops/$DESKTOP_ID/computer/process/exec \ -H "Authorization: Bearer $DEXTO_API_KEY" \ -H "Content-Type: application/json" \ -d '{"command":"npm test","cwd":"/workspace"}'{"exitCode":0,"stdout":"12 tests passed\n","stderr":""}Read a file
Section titled “Read a file” POST
/api/desktops/{desktopId}/computer/fs/read curl https://app.dexto.ai/api/desktops/$DESKTOP_ID/computer/fs/read \ -H "Authorization: Bearer $DEXTO_API_KEY" \ -H "Content-Type: application/json" \ -d '{"filePath":"/workspace/package.json"}'| Request field | JSON type | Required | Description |
|---|---|---|---|
filePath | string | Yes | Absolute workspace path |
Write a file
Section titled “Write a file” POST
/api/desktops/{desktopId}/computer/fs/write curl https://app.dexto.ai/api/desktops/$DESKTOP_ID/computer/fs/write \ -H "Authorization: Bearer $DEXTO_API_KEY" \ -H "Content-Type: application/json" \ -d '{"filePath":"/workspace/notes.md","content":"# Notes\n","createDirectories":true}'| Request field | JSON type | Required | Description |
|---|---|---|---|
filePath | string | Yes | Absolute workspace path |
content | string | Yes | UTF-8 text |
createDirectories | boolean | No | Create missing parent directories |
Terminal sockets and interactive browser-session state are dashboard session APIs, not part of the API-key REST surface.