Add work items to release
POST/api/v1/workspaces/{workspace_slug}/releases/{release_id}/work-items/
Adds one or more work items to a release. Work items already linked to the release are skipped. For a project-scoped release, every work item must belong to that project, otherwise the request fails with a 400 RELEASE_WORK_ITEM_OUT_OF_SCOPE error.
Path Parameters
workspace_slug:requiredstringThe 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.
release_id:requiredstringThe unique identifier for the release.
Body Parameters
work_item_ids:requiredstring[]Array of work item IDs to add to the release.
Scopes
releases.work_items:write
Add work items to release
bash
curl -X POST \
"https://api.plane.so/api/v1/workspaces/my-workspace/releases/a1b2c3d4-e5f6-7890-abcd-ef1234567890/work-items/" \
-H "X-API-Key: $PLANE_API_KEY" \
# Or use -H "Authorization: Bearer $PLANE_OAUTH_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"work_item_ids": ["d4e5f6a7-b8c9-0123-defa-456789012345", "e5f6a7b8-c9d0-1234-efab-567890123456"]
}'python
import requests
response = requests.post(
"https://api.plane.so/api/v1/workspaces/my-workspace/releases/a1b2c3d4-e5f6-7890-abcd-ef1234567890/work-items/",
headers={"X-API-Key": "your-api-key"},
json={
'work_item_ids': ['d4e5f6a7-b8c9-0123-defa-456789012345', 'e5f6a7b8-c9d0-1234-efab-567890123456']
}
)
print(response.json())javascript
const response = await fetch(
"https://api.plane.so/api/v1/workspaces/my-workspace/releases/a1b2c3d4-e5f6-7890-abcd-ef1234567890/work-items/",
{
method: "POST",
headers: {
"X-API-Key": "your-api-key",
"Content-Type": "application/json",
},
body: JSON.stringify({
work_item_ids: [
"d4e5f6a7-b8c9-0123-defa-456789012345",
"e5f6a7b8-c9d0-1234-efab-567890123456",
],
}),
},
);
const data = await response.json();Response200
json
{
"message": "Work items added successfully"
}
