libs/deploy-server/src/server/routes/workspaces.ts
). All endpoints require Bearer authentication and are namespaced under your gateway base URL (e.g., https://gateway.re-factor.ai/v2/api
). Replace {workspaceId}
and other path params with real values.
/workspaces
— List workspaces for the account/workspaces
— Create a workspace/workspace/{workspaceId}
— Get a workspace/workspace/{workspaceId}
— Update a workspace/workspace/{workspaceId}/metadata
— Get summarized metadata for UI display/workspaces/templates
— List workspace templates/workspaces/templates
— Create a template/workspaces/templates/{templateId}
— Get a template/workspaces/repository-integrations
— List GitHub App repository integrations.rfctr/workspace-config.rfctr.yaml
in the workspace directory.
/workspace/{workspaceId}/config
— Get integrations config/workspace/{workspaceId}/config
— Update integrations config (partial deep-merge)/workspace/{workspaceId}/threads
— List threads (metadata)/workspace/{workspaceId}/thread/{threadId}
— Get a thread/workspace/{workspaceId}/thread/{threadId}
— Update a thread (messages, summary, metadata)/workspace/{workspaceId}/thread/{threadId}/metadata
— Update metadata only/workspace/{workspaceId}/thread/{threadId}/save
— Create or overwrite a thread/workspace/{workspaceId}/thread/{threadId}
— Delete a thread/workspace/{workspaceId}/threads/rebuild-metadata
— Rebuild thread metadata index/workspace/{workspaceId}/threads/stream
— Start streaming AI response (SSE v2)/workspace/{workspaceId}/threads/stream
— Reconnect to an active stream (SSE v2)/workspace/{workspaceId}/threads/{threadId}/stream
— Cancel active streams for a thread/workspace/{workspaceId}/events
— Subscribe to file/directory/task events via Server-Sent Events. Event name: workspace-event
. Data is a JSON-encoded typed event./workspace/{workspaceId}/files?path={path}
— Create/Upload a file
size: 0
, creates an empty file./workspace/{workspaceId}/file?path={path}
— Download a file (binary)/workspace/{workspaceId}/file/pdf?path={path}
— Convert DOC/DOCX to PDF or return PDF (binary)/workspace/{workspaceId}/file/path?path={old}&newPath={new}
— Rename/move file/workspace/{workspaceId}/file?path={path}
— Delete file/workspace/{workspaceId}/directory?path={path}
— Create directory (recursive)/workspace/{workspaceId}/directory/path?path={old}&newPath={new}
— Rename/move directory/workspace/{workspaceId}/directory?path={path}
— Delete directory (recursive)/workspace/{workspaceId}/directory/download?path={path}
— Zip and download directory (binary zip)/workspace/{workspaceId}/search/paths
— Glob search
{ "globPattern": "src/**/*", "maxDepth": 20, "stats": true }
/workspace/{workspaceId}/lifecycle-events
— Create a lifecycle event for the workspace
{ "event": "created|archived|...", "notes": "optional" }
/workspace/{workspaceId}/commands
— List commands (filters: type
, search
, offset
, limit
)/workspace/{workspaceId}/commands
— Create a command/workspace/{workspaceId}/commands/suggestions?query=...
— Suggest commands/workspace/{workspaceId}/command/{trigger}
— Get a command/workspace/{workspaceId}/command/{trigger}
— Update a command/workspace/{workspaceId}/command/{trigger}
— Delete a command/workspace/{workspaceId}/command/{trigger}/execute
— Execute a command
{ "args": ["..."], "threadId": "optional", "toolCallId": "optional" }
/workspace/{workspaceId}/command/{trigger}/executions/{runId}
— Execution status/workspace/{workspaceId}/command/{trigger}/executions/{runId}/output
— Stream command output (ReadableStream)/workspace/{workspaceId}/command/{trigger}/executions/{runId}/events
— Stream command events (SSE)/workspace/{workspaceId}/command/{trigger}/executions/{runId}
— Cancel execution/workspace/{workspaceId}/commands/search?query=...
— Full-text command search/workspace/{workspaceId}/commands/categories
— List categories/workspace/{workspaceId}/commands/categories/{category}
— Commands by category/workspace/{workspaceId}/commands/recent?limit=5
— Recently used/workspace/{workspaceId}/commands/popular?limit=5
— Popular commands/workspace/{workspaceId}/processes/{processId}/runs
— Create a process run
{ "spec": <processSpec>, "inputs": { ... }, "metadata": { ... }, "instructions": "..." }
/workspace/{workspaceId}/processes/{processId}/runs
— List runs for a process/workspace/{workspaceId}/processes/runs/{runId}/start
— Start a run/workspace/{workspaceId}/processes/runs/{runId}
— Get run/workspace/{workspaceId}/processes/runs/{runId}/logs
— Get run logs/workspace/{workspaceId}/processes/runs/{runId}/events
— Stream run events (SSE)/workspace/{workspaceId}/processes/runs/{runId}/pause
— Pause/workspace/{workspaceId}/processes/runs/{runId}/resume
— Resume/workspace/{workspaceId}/processes/runs/{runId}/cancel
— Cancel/workspace/{workspaceId}/processes/runs/{runId}/approve
— Approve (human-in-the-loop)/workspace/{workspaceId}/processes/runs/{runId}/tasks/{phaseId}/{taskId}/retry
— Retry task/workspace/{workspaceId}/processes/runs/{runId}/tasks/{phaseId}/{taskId}/skip
— Skip task/workspace/{workspaceId}/streams/debug
— Inspect active SSE/data streams and subscribers (debug only)text/event-stream
and Vercel AI v2 data stream markers where applicable.{ data: ... }
or { message: ... }
for mutation acknowledgement.Accept
headers or fetch as blob
).