Teamspaces overview
Teamspaces group members and projects under one team.
The teamspace object
Attributes
created_atstring (date-time)When the teamspace was created.
updated_atstring (date-time)When the teamspace was last updated.
created_by_idstring (uuid)The user who created the teamspace.
updated_by_idstring (uuid) or nullThe user who last updated the teamspace.
nulluntil someone updates it.description_htmlstringRich-text body as HTML. The Plane editor reads and writes this field.
idstring (uuid)Unique identifier.
lead_idstring (uuid)id of the teamspace's lead.
logo_propsstringLogo descriptor managed by the Plane editor. Send back the value you read instead of building it by hand.
member_idsarray of stringids of the teamspace's members.
namestringDisplay name.
project_idsarray of stringids of the teamspace's projects.
{
"created_at": "2026-01-14T09:22:41.478363Z",
"created_by_id": "16c61a3a-512a-48ac-b0be-b6b46fe6f430",
"description_html": "<p>Details go here.</p>",
"id": "b7e42a19-3c5d-4f80-9a26-8d1c0f4e7b53",
"lead_id": "f960d3c2-8524-4a41-b8eb-055ce4be2a7f",
"logo_props": null,
"member_ids": ["16c61a3a-512a-48ac-b0be-b6b46fe6f430"],
"name": "Example name",
"project_ids": ["16c61a3a-512a-48ac-b0be-b6b46fe6f430"]
}Endpoints
| Method | Path | Description |
|---|---|---|
GET | /api/v2/workspaces/{slug}/teamspaces/ | List teamspaces |
GET | /api/v2/workspaces/{slug}/teamspaces/{pk}/ | Get a teamspace |
POST | /api/v2/workspaces/{slug}/teamspaces/ | Create a teamspace |
PATCH | /api/v2/workspaces/{slug}/teamspaces/{pk}/ | Update a teamspace |
DELETE | /api/v2/workspaces/{slug}/teamspaces/{pk}/ | Delete a teamspace |
GET | /api/v2/workspaces/{slug}/teamspaces/{pk}/members/ | List a teamspace's members |
GET | /api/v2/workspaces/{slug}/teamspaces/{pk}/projects/ | List a teamspace's projects |
The two list routes return the rows behind member_ids and project_ids, paginated, so you don't have to look up each id. They are read-only. Write member_ids and project_ids inline on Create a teamspace and Update a teamspace.
Response shaping
Every teamspace read accepts ?fields= for sparse responses. See Sparse fields. Errors follow the shared problem+json contract.

