Developers
Calling the API
HacknPlan follows REST conventions. You operate on resources (projects, work items, boards, design elements, and so on) using HTTP verbs such as GET, POST, PUT, PATCH, and DELETE.
Listing resources
To list projects available to the authenticated user:
GET https://api.hacknplan.com/v0/projects
Include both Authorization and Content-Type headers.
Getting a single resource
Append resource IDs in the URL path.
Examples:
- Project by ID:
GEThttps://api.hacknplan.com/v0/projects/100 - Work item by ID:
GEThttps://api.hacknplan.com/v0/projects/100/workitems/25
Complete endpoint catalog:
Creating a resource
Creating resources uses POST.
Example: create a task in project 100:
POST https://api.hacknplan.com/v0/projects/100/workitems
Request body example:
{
"title": "string",
"description": "string",
"parentId": 0,
"isStory": false,
"categoryId": 0,
"estimatedCost": 0,
"importanceLevelId": 0,
"boardId": 0,
"designElementId": 0,
"startDate": "2019-11-25T16:28:20.172Z",
"dueDate": "2019-11-25T16:28:20.172Z",
"assignedUserIds": [0],
"tagIds": [0],
"subTasks": ["string"],
"dependencyIds": [0]
}
On success, API returns 201 Created.
Updating resources: PUT vs PATCH
Use PUT to replace the full editable representation.
Use PATCH to update only selected fields.
Example URL:
https://api.hacknplan.com/v0/projects/100/boards/5
PUTrequires complete payload for editable fields.PATCHchanges only included fields.
If you need to explicitly set fields to null, use PUT.
Deleting resources
Use DELETE on the resource URL.
Example:
DELETE https://api.hacknplan.com/v0/projects/100/workitems/25
Successful deletion returns 200 OK.