Skip to main content

Documentation Index

Fetch the complete documentation index at: https://noradocs.solomontsao.com/llms.txt

Use this file to discover all available pages before exploring further.

Workspaces let you organise agents into logical groups — for example by project, team, or environment. You create a workspace, add agents to it with optional roles, and query which agents belong to a given workspace. Every workspace belongs to the user who created it, and only you can manage or delete your own workspaces.

List workspaces

Return all workspaces belonging to the authenticated user.
GET /workspaces

Response

id
string
Workspace UUID.
name
string
Workspace display name.
user_id
string
UUID of the owning user.
created_at
string
ISO 8601 creation timestamp.
curl http://localhost:8080/api/workspaces \
  -H "Authorization: Bearer $TOKEN"
[
  {
    "id": "b2c3d4e5-f6a7-8901-bcde-f12345678901",
    "name": "Production",
    "user_id": "d4e5f6a7-b8c9-4d01-a234-56789bcdef01",
    "created_at": "2025-02-15T14:00:00.000Z"
  }
]

Create a workspace

Create a new workspace.
POST /workspaces

Request body

name
string
required
Workspace name, 1–100 characters.

Response

id
string
New workspace UUID.
name
string
Workspace name.
user_id
string
UUID of the owning user.
created_at
string
ISO 8601 creation timestamp.
curl -X POST http://localhost:8080/api/workspaces \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"name":"Production"}'
{
  "id": "b2c3d4e5-f6a7-8901-bcde-f12345678901",
  "name": "Production",
  "user_id": "d4e5f6a7-b8c9-4d01-a234-56789bcdef01",
  "created_at": "2025-03-10T09:00:00.000Z"
}
StatusCondition
400Missing name, or name exceeds 100 characters

List agents in a workspace

Return all agents that have been added to a specific workspace.
GET /workspaces/:id/agents

Path parameters

id
string
required
Workspace UUID.

Response

Returns an array of agent records joined with their workspace membership details.
id
string
Agent UUID.
name
string
Agent display name.
status
string
Current agent status.
role
string
Role assigned to this agent in the workspace, if any.
curl http://localhost:8080/api/workspaces/b2c3d4e5-f6a7-8901-bcde-f12345678901/agents \
  -H "Authorization: Bearer $TOKEN"
[
  {
    "id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    "name": "My Research Agent",
    "status": "running",
    "role": "primary"
  }
]

Add an agent to a workspace

Associate one of your agents with a workspace. The agent must belong to the same user as the workspace.
POST /workspaces/:id/agents

Path parameters

id
string
required
Workspace UUID.

Request body

agentId
string
required
UUID of the agent to add. Must be one of your agents.
role
string
Optional role label for this agent within the workspace, e.g. primary, observer.

Response

Returns the workspace membership record.
workspace_id
string
Workspace UUID.
agent_id
string
Agent UUID.
role
string
Assigned role, or null.
curl -X POST http://localhost:8080/api/workspaces/b2c3d4e5-f6a7-8901-bcde-f12345678901/agents \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"agentId":"a1b2c3d4-e5f6-7890-abcd-ef1234567890","role":"primary"}'
{
  "workspace_id": "b2c3d4e5-f6a7-8901-bcde-f12345678901",
  "agent_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "role": "primary"
}
StatusCondition
400Missing agentId
404Agent not found or does not belong to you

Delete a workspace

Permanently delete a workspace. All agent memberships within the workspace are removed. The agents themselves are not affected.
DELETE /workspaces/:id

Path parameters

id
string
required
Workspace UUID.

Response

success
boolean
true when the workspace was deleted.
curl -X DELETE http://localhost:8080/api/workspaces/b2c3d4e5-f6a7-8901-bcde-f12345678901 \
  -H "Authorization: Bearer $TOKEN"
{ "success": true }
Deleting a workspace is irreversible. All agent memberships are removed immediately. The agents themselves continue to run and remain accessible through the Agents API.