Skip to content

Add projects to teamspace ​

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

Link projects to a teamspace. Projects that are already linked are skipped.

Requires the teamspace lead, or a workspace Owner or Admin. Linking a project grants the Contributor role on that project to every current and future member of the teamspace. It does not create project memberships or change a direct project role.

The response is a list with a project object for every ID in project_ids, including projects that were already linked.

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 ​

project_ids:requiredarray

IDs of the projects to link. Each project must belong to the workspace. An empty or missing list links nothing and still returns 200 with an empty list.

Scopes ​

write, teamspaces:write, or teamspaces.projects:write

Add projects to teamspace
bash
curl -X POST \
  "https://api.plane.so/api/v1/workspaces/my-workspace/teamspaces/teamspace-uuid/projects/" \
  -H "X-API-Key: $PLANE_API_KEY" \
  # Or use -H "Authorization: Bearer $PLANE_OAUTH_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
  "project_ids": [
    "00918ea1-52f7-48bd-abe3-d3efe76ff7dd"
  ]
}'
Response200
json
[
  {
    "id": "00918ea1-52f7-48bd-abe3-d3efe76ff7dd",
    "created_at": "2023-11-19T10:40:15.426652Z",
    "updated_at": "2023-11-19T10:40:15.426672Z",
    "name": "Project X",
    "description": "",
    "identifier": "PROJX",
    "network": 2,
    "workspace": "cd4ab5a2-1a5f-4516-a6c6-8da1a9fa5be4",
    "project_lead": "16c61a3a-512a-48ac-b0be-b6b46fe6f430"
  }
]