Create work item ​
POST/api/v1/workspaces/{slug}/projects/{project_id}/work-items/create/
Create a new work item with support for custom properties.
Required fields:
name: Work item title
Conditional requirements:
type_id: Required when project has work item types enabled
Standard fields:
description_html: HTML formatted descriptionpriority: One of: urgent, high, medium, low, none (default: none)state_id: State ID (defaults to project's default state)assignee_ids: List of user IDs to assignlabel_ids: List of label IDsstart_date: Format YYYY-MM-DDtarget_date: Format YYYY-MM-DDparent_id: Parent work item ID for sub-issuesestimate_point_id: Estimate point ID
Custom fields:
- Use
custom_field_{name}format for custom property values - Field names must match property names from the schema endpoint
- Values must match the property type (TEXT, DECIMAL, OPTION UUID, etc.)
Path Parameters ​
project_id:requiredstringProject ID
slug:requiredstringWorkspace slug
Body Parameters ​
name:requiredstringWork item title (required)
type_id:optionalstringWork item type ID
description_html:optionalstringHTML formatted description
priority:optionalstringPriority level
urgent- urgenthigh- highmedium- mediumlow- lownone- none
state_id:optionalstringState ID
assignee_ids:optionalarrayList of assignee user IDs
label_ids:optionalarrayList of label IDs
start_date:optionalstringStart date (YYYY-MM-DD)
target_date:optionalstringTarget date (YYYY-MM-DD)
parent_id:optionalstringParent work item ID
estimate_point_id:optionalstringEstimate point ID
Scopes ​
projects.work_items:write
Create work item
bash
curl -X POST \
"https://api.plane.so/api/v1/workspaces/my-workspace/projects/550e8400-e29b-41d4-a716-446655440000/work-items/create/" \
-H "X-API-Key: $PLANE_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "Example Name"
}'python
import requests
response = requests.post(
"https://api.plane.so/api/v1/workspaces/my-workspace/projects/550e8400-e29b-41d4-a716-446655440000/work-items/create/",
headers={"X-API-Key": "your-api-key"},
json={
"name": "Example Name"
}
)
print(response.json())javascript
const response = await fetch(
"https://api.plane.so/api/v1/workspaces/my-workspace/projects/550e8400-e29b-41d4-a716-446655440000/work-items/create/",
{
method: "POST",
headers: {
"X-API-Key": "your-api-key",
"Content-Type": "application/json",
},
body: JSON.stringify({
name: "Example Name",
}),
}
);
const data = await response.json();Response201
json
{
"id": "550e8400-e29b-41d4-a716-446655440000",
"name": "Example Name",
"sequence_id": 1,
"project_id": "550e8400-e29b-41d4-a716-446655440000",
"workspace_id": "550e8400-e29b-41d4-a716-446655440000",
"state_id": "550e8400-e29b-41d4-a716-446655440000",
"type_id": "550e8400-e29b-41d4-a716-446655440000",
"priority": "Example Name",
"created_at": "2024-01-01T00:00:00Z",
"updated_at": "2024-01-01T00:00:00Z"
}
