Skip to main content

List rooms

GET /api/v1/rooms
Returns all rooms the authenticated user is a member of. Response
{
  "data": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "M&A Deal Room Q1",
      "description": "Due diligence materials for Project Phoenix",
      "org_unit_id": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
      "classification": "C4",
      "created_by": "user_id",
      "created_at": "2024-01-15T10:30:00Z",
      "member_count": 6,
      "file_count": 42
    }
  ]
}

Get a room

GET /api/v1/rooms/:id

Create a room

POST /api/v1/rooms
Request body
{
  "name": "Board Materials Q2",
  "description": "Quarterly board pack",
  "org_unit_id": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
  "classification": "C4"
}
Response201 Created

Add a member

POST /api/v1/rooms/:id/members
{
  "user_id": "user_uuid",
  "role": "viewer"
}
Valid roles: owner, contributor, viewer

Remove a member

DELETE /api/v1/rooms/:id/members/:user_id

Archive a room

POST /api/v1/rooms/:id/archive
Room becomes read-only. Files are retained.

Delete a room

DELETE /api/v1/rooms/:id
Permanent. All files and keys are destroyed. This cannot be undone.