Skip to main content

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:

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

  • PUT requires complete payload for editable fields.
  • PATCH changes 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.