Remotehost Docs
API ReferenceWorkspaces

Create a workspace

POST
/orgs/{orgId}/projects/{projectId}/workspaces

Creates a workspace: durable work that outlives any one sandbox. It starts asleep with no execution; attach it to get a sandbox. Its name fixes its git branch, remotehost/. Made with an API key, it belongs to the key's principal: the person who minted the key, or the service account it acts as. API keys reach these operations only where key access to environments is enabled for this deployment, and then only their principal's own workspaces; until then every API key is refused with 403.

Authorization

bearerAuth
AuthorizationBearer <token>

A RemoteHost API key (rh_sk_...) or a user session token.

In: header

Path Parameters

orgId*string
projectId*string

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/orgs/string/projects/string/workspaces" \  -H "Content-Type: application/json" \  -d '{    "name": "string"  }'
{  "workspace": {    "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",    "orgId": "25b2c2d5-a7fc-47d0-89e4-8709a1560bfa",    "projectId": "5a8591dd-4039-49df-9202-96385ba3eff8",    "name": "string",    "title": "string",    "environmentId": "19f5cc2e-7657-437a-9268-83cd3d563563",    "lifetimePolicy": "ephemeral",    "expiresAt": "string",    "gitBranch": "string",    "cpuBaseline": "string",    "vmm": "string",    "currentCheckpointId": "58a17ea9-e017-4666-a39c-b13b4cc338f7",    "status": "active",    "lease": {      "sandboxId": "5b4b1d3f-21e4-43f6-8ac1-b460b150f885",      "epoch": "string",      "expiresAt": "string",      "live": true    },    "createdBy": "25a02396-1048-48f9-bf93-102d2fb7895e",    "createdAt": "string",    "updatedAt": "string",    "lastActivityAt": "string"  }}