Skip to content

Add members to teamspace ​

POST/api/v1/workspaces/{workspace_slug}/teamspaces/{teamspace_id}/members/

Add users to a teamspace. Users who are already members are skipped.

Requires the teamspace lead, or a workspace Owner or Admin. The response is a list with a user object for every ID in member_ids, including users who were already members.

Path Parameters ​

workspace_slug:requiredstring

The workspace_slug represents the unique workspace identifier for a workspace in Plane. It can be found in the URL. For example, in the URL https://app.plane.so/my-team/projects/, the workspace slug is my-team.

teamspace_id:requiredstring

The unique identifier of the teamspace.

Body Parameters ​

member_ids:requiredarray

IDs of the users to add. An empty or missing list adds nobody and still returns 200 with an empty list.

Scopes ​

write, or both teamspaces:write and teamspaces.members:write. The teamspaces.members:write scope alone is not enough.

Add members to teamspace
bash
curl -X POST \
  "https://api.plane.so/api/v1/workspaces/my-workspace/teamspaces/teamspace-uuid/members/" \
  -H "X-API-Key: $PLANE_API_KEY" \
  # Or use -H "Authorization: Bearer $PLANE_OAUTH_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
  "member_ids": [
    "16c61a3a-512a-48ac-b0be-b6b46fe6f430"
  ]
}'
Response200
json
[
  {
    "id": "16c61a3a-512a-48ac-b0be-b6b46fe6f430",
    "first_name": "John",
    "last_name": "Doe",
    "email": "user@example.com",
    "avatar": "",
    "avatar_url": "https://example.com/assets/example-image.png",
    "display_name": "john"
  }
]