List Workspaces
GET
Endpoint: /api/workspaces
Query Parameters
Organization ID to retrieve workspaces for (required for remote providers)
Page number for pagination (0-indexed)
Number of workspaces per page
Search term for filtering workspaces by name
Field to order by (e.g.,
name, created_at, updated_at)JSON filter conditions
Response
Current page number
Number of items per page
Total number of workspaces
Array of workspace objects
Get Workspace by ID
GET
Endpoint: /api/workspaces/{id}
Path Parameters
Workspace ID (UUID)
Query Parameters
Organization ID (required for remote providers)
Response
Returns a single workspace object with the same structure as the list response.Create Workspace
POST
Endpoint: /api/workspaces
Request Body
Workspace name
Workspace description
Organization ID that will own this workspace
Response
Status:201 Created
Returns the created workspace object.
Update Workspace
PUT
Endpoint: /api/workspaces/{id}
Path Parameters
Workspace ID (UUID)
Request Body
Updated workspace name
Updated workspace description
Response
Status:200 OK
Returns the updated workspace object.
Delete Workspace
DELETE
Endpoint: /api/workspaces/{id}
Path Parameters
Workspace ID (UUID)
Response
Status:200 OK
Returns the deleted workspace object.
Get Workspace Environments
GET
Endpoint: /api/workspaces/{id}/environments
Path Parameters
Workspace ID (UUID)
Query Parameters
Organization ID
Page number
Page size
Search term
Order by field
Filter conditions:
{"assigned": true/false, "deleted_at": true/false}Response
Returns a paginated list of environments assigned to this workspace.Add Environment to Workspace
POST
Endpoint: /api/workspaces/{id}/environments/{environmentID}
Path Parameters
Workspace ID (UUID)
Environment ID to add (UUID)
Response
Status:201 Created
Returns the workspace-environment mapping object.
Remove Environment from Workspace
DELETE
Endpoint: /api/workspaces/{id}/environments/{environmentID}
Path Parameters
Workspace ID (UUID)
Environment ID to remove (UUID)
Response
Status:200 OK
Returns the removed workspace-environment mapping.
Get Workspace Designs
GET
Endpoint: /api/workspaces/{id}/designs
Path Parameters
Workspace ID (UUID)
Query Parameters
Page number
Page size
Search term
Order by field
Filter conditions:
{"assigned": true/false, "deleted_at": true/false}Filter by visibility:
["public", "private", "published"]Response
Returns a paginated list of designs (patterns) assigned to this workspace.Add Design to Workspace
POST
Endpoint: /api/workspaces/{id}/designs/{designID}
Path Parameters
Workspace ID (UUID)
Design ID to add (UUID)
Response
Status:201 Created
Returns the workspace-design mapping object.
Error Codes
Invalid request parameters or malformed JSON
Missing or invalid authentication token
Workspace not found
Server error occurred