---
title: "List spaces"
method: GET
path: "/api/w/{wId}/spaces"
tags: ["Private Spaces"]
---

# List spaces

`GET /api/w/{wId}/spaces`

Returns all spaces in the workspace.

## Path parameters

- `wId` string, required

## Query parameters

- `role` string
- `kind` string[]

## Response `200`

Success

- object
  - `spaces` union[]
    - union
      - PrivateSpace — A space in the workspace.
        - `sId` string, required
        - `name` string, required
        - `kind` 'global' | 'system' | 'conversations' | 'regular' | 'project', required
        - `groupIds` string[], required
        - `isRestricted` boolean, required
        - `managementMode` 'manual' | 'group', required
        - `createdAt` integer
        - `updatedAt` integer
      - PrivateProject — A space in the workspace.
        - `sId` string, required
        - `name` string, required
        - `kind` 'global' | 'system' | 'conversations' | 'regular' | 'project', required
        - `groupIds` string[], required
        - `isRestricted` boolean, required
        - `managementMode` 'manual' | 'group', required
        - `createdAt` integer
        - `updatedAt` integer
        - `description` string, nullable
        - `isMember` boolean
        - `archivedAt` integer, nullable
        - `todoGenerationEnabled` boolean — Whether automatic todo suggestions from project activity are enabled.
        - `lastTodoAnalysisAt` integer, nullable — Unix timestamp (ms) of the last automatic todo suggestion scan, if any.
        - `pinnedFramePath` string, nullable — Scoped path to the frame file pinned as the Pod banner (e.g. project/banner.html).

## Other responses

- `401` — Unauthorized

## Changes

- **2026-08-04** `d4eaf4b56fac` — 3 warning
  - removed the optional property `spaces/items/oneOf[#/components/schemas/PrivateProject]/allOf[subschema #2]/frameTabs` from the response with the `200` status
  - removed the optional property `spaces/items/oneOf[#/components/schemas/PrivateProject]/allOf[subschema #2]/isAdminControlled` from the response with the `200` status
  - removed the optional property `spaces/items/oneOf[#/components/schemas/PrivateProject]/allOf[subschema #2]/tabsOrder` from the response with the `200` status
- **2026-08-04** `a3ad9f9182c1` — 2 info
  - added the optional property `spaces/items/oneOf[#/components/schemas/PrivateProject]/allOf[subschema #2]/frameTabs` to the response with the `200` status
  - added the optional property `spaces/items/oneOf[#/components/schemas/PrivateProject]/allOf[subschema #2]/tabsOrder` to the response with the `200` status
- **2026-08-04** `e0b811b70bb0` — 1 info
  - added the optional property `spaces/items/oneOf[#/components/schemas/PrivateProject]/allOf[subschema #2]/isAdminControlled` to the response with the `200` status
- **2026-07-20** `89dbf1251af2` — 1 info
  - for the `query` request parameter `kind`, the type was generalized from `string` to `array`
- **2026-07-17** `50e23587026b` — 1 info
  - for the `query` request parameter `kind`, the type was generalized from `array` to `string`

[Full history](https://skmtc.dev/dust-tt/apis/dust-api-documentation/changes/api/w/:wId/spaces/get.md)

---

[API](https://skmtc.dev/dust-tt/apis/dust-api-documentation.md) · [All operations](https://skmtc.dev/dust-tt/apis/dust-api-documentation/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/dust-tt/dust-api-documentation/revisions/d4eaf4b56fac/schema)
