---
title: "Get Current User Workspaces"
method: GET
path: "/api/user/workspaces"
tags: ["user"]
---

# Get Current User Workspaces

`GET /api/user/workspaces`

Retrieve the list of workspaces associated with the current authenticated user.
Includes wrapped_key, stats (conversation/document counts with shared/private breakdown),
and users for each workspace. All data is fetched efficiently using batch queries to avoid N+1 problems.
Leverages RLS to enforce access control.

## Response `200`

Successful Response

- WorkspaceResponse[]
  - `external_id` string, required
  - `name` string, required
  - `description` string, nullable, required
  - `is_public` boolean, required
  - `created_by_ext_id` string, required
  - `updated_by_ext_id` string, nullable
  - `created_at` string, date-time, required
  - `updated_at` string, date-time, required
  - `wrapped_key` string, nullable
  - `shared_conversation_count` integer
  - `private_conversation_count` integer
  - `shared_document_count` integer
  - `private_document_count` integer
  - `user_files_mb` number
  - `users` UserResponse[]
    - `external_id` string, required
    - `email` string, required
    - `given_name` string, required
    - `family_name` string, required
    - `picture` string, nullable
    - `encryption_public_key` string, required

## Changes

- **2025-12-25** `aa4b06f8dede` — 4 breaking, 5 info
  - the response property `items/updated_by_ext_id` became optional for the status `200`
  - removed the required property `items/users/items/last_name` from the response with the `200` status
  - removed the required property `items/users/items/name` from the response with the `200` status
  - removed the required property `items/users/items/user_ext_id` from the response with the `200` status
  - …5 more
- **2025-11-03** `d6c3e911a263` — 1 info
  - added the optional property `items/user_files_mb` to the response with the `200` status
- **2025-10-28** `849d5e8732f6` — 6 info
  - added the optional property `items/private_conversation_count` to the response with the `200` status
  - added the optional property `items/private_document_count` to the response with the `200` status
  - added the optional property `items/shared_conversation_count` to the response with the `200` status
  - added the optional property `items/shared_document_count` to the response with the `200` status
  - …2 more
- **2025-10-13** `5ab425658de0` — 1 info
  - added the required property `items/is_public` to the response with the `200` status

[Change history](https://skmtc.dev/arbicity/apis/arbi/changes/api/user/workspaces/get.md)

---

[API](https://skmtc.dev/arbicity/apis/arbi.md) · [All operations](https://skmtc.dev/arbicity/apis/arbi/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/arbicity/arbi/revisions/aa4b06f8dede/schema)
