Mint a short-lived realtime connection ticket
Issues a single-use ticket, valid for 30 seconds, that the browser exchanges for a realtime connection to this workspace. Requires a Clerk session with a synced profile plus `workspace:read`; API keys cannot acquire a realtime identity. Deliberately not idempotent, because replaying the response would hand back a ticket the gateway has already consumed, and it returns an upstream error when the ticket store is unavailable.
apiKeyAuthorizationBearer <snoze_sk_…>Workspace API key created in Workspace settings → API keys. Scopes on the key bound what it can read and write.
workspaceId*stringSuccess
application/json- response
data*curl -X POST 'https://api.snoze.dev/v1/workspaces/string/realtime-ticket'{ "data": { "ticket": "string", "expiresAt": "string" }}Seed a workspace from an approved AI draft plan
Seeds the workspace from the draft plan the user reviewed, and possibly edited, in the describe-your-work onboarding flow, re-normalizing the plan on the server before anything is created. Needs the same `databases:write` and `surfaces:write` permissions as applying a fixed starter. A plan that normalizes to nothing left to build is rejected as a validation error.
Read one workspace
Returns the workspace's name, slug, branding, and the caller's role and resolved permission set. Requires `workspace:read`, so a caller without membership gets a permission error rather than the record.