Documentation

Tasks

How to list, tasks

Request Overview

Actions

Returns

Description

GET /api/v1/scrum/tasks

Collection

Get all tasks

GET /api/v1/scrum/tasks/{id}

200 Object

Get a task

POST /api/v1/scrum/tasks

201 Object

Create task

PATCH /api/v1/scrum/tasks/{id}

201 Object

Update task

DELETE /api/v1/scrum/tasks/{id}

200 Object

Delete task

Fields

Task Object

Field

Type

Specifics

id

Integer

number

String

Pefix + id

title

String

description

String

priority

String

very low, low, medium, high, very high

creator

Object

assignee

Object

customer

Object

watchers

Array

board

Object

status

Object

sub_tasks

Array

tags

Array

attachments

Array

is_archived

Boolean

is_overdue

Boolean

subtasks_count_total

Boolean

subtasks_count_done

Boolean

attachments_count

Boolean

tickets_count

Boolean

due_at

Date String

done_at

Date String

created_at

Date String

updated_at

Date String

deleted_at

Date String

Requests

Get All Tasks

GET /api/v1/scrum/tasks Returns, a collection of tasks

GET /api/v1/scrum/tasks HTTP/1.1
Authorization: Bearer {{token}}
Hs-Client-Id: {{hs_client_id}}
Host: api.helpspace.com
Content-Type: application/json; charset=utf-8

200 Response

HTTP/1.1 200 OK
Content-Type: application/json
...

{
  "data": [
    {
      "id": 494,
      "number": "494",
      "title": "Set up Tasks API",
      "description": "<p>Build an endpoint ...<\/p>",
      "priority": "medium",
      "creator": {
        "id": 3,
        "name": "Stefan",
        "email": "stefan@helpspace.com"
      },
      "assignee": null,
      "customer": null,
      "watchers": [
        {
          "id": 1,
          "name": "John",
          "email": "john@helpspace.com"
        },
      ],
      "tickets": [
        {
          "id": 1234,
          "subject": "Need help with api",
          "status": "open"
        },
      ],
      "board": {
        "id": 1,
        "name": "Development"
      },
      "status": {
        "id": 4,
        "name": "QS",
        "color": null,
        "type": "none"
      },
      "sub_tasks": [
        {
          "id": 495,
          "title": "Create Documentation",
          "done_at": null,
          "created_at": "2025-04-25T09:59:55+00:00",
          "updated_at": "2025-04-25T09:59:55+00:00"
        }
      ],
      "tags": [
        {
          "id": 3,
          "name": "Feature Request",
          "slug": "feature-request",
          "color": "#7761D4",
          "type": "tasks"
        },
      ],
      "attachments": [
        {
          "id": 495,
          "url": "http://api.helpspace.com/api/v1/media/attachment/495",
          "file_type": "image",
          "file_name": "test.png"
          "mime_type": "image/png"
          "size": 144
          "created_at": "2025-04-25T09:59:55+00:00",
          "updated_at": "2025-04-25T09:59:55+00:00"
        }
      ],
      "is_archived": false,
      "is_overdue": false,
      "subtasks_count_total": 1,
      "subtasks_count_done": 0,
      "attachments_count": 0,
      "tickets_count": 45,
      "due_at": null,
      "done_at": null,
      "created_at": "2025-04-24T14:49:34+00:00",
      "updated_at": "2025-04-25T13:04:04+00:00",
      "deleted_at": null
    },
    ...
  ],
  "links": {
    ...
  },
  "meta": {
    ...
  }
}
Information about links and meta, please read this article.

Filter with query parameters

To filter results, you can add query parameters to the request URL.
For example: /api/v1/scrum/tasks?assignees[]=mike%20smith&overdue=1

Query Parameters

Possible Values

Results per page

per-page=10

1-50

Assignees

assignees[]=Mike&assignees[]=41 (name|id)

urlencoded string

id

Boards

boards[]=Development&boards[]=5 (name|id)

urlencoded string

id

Creators

creators[]=Hans&creators[]=5 (name|id)

urlencoded string

id

Customers

customers[]=Berd&customers[]=47 (name|id)

urlencoded string

id

Tickets

tickets[]=Ticketname&tickets[]=5 (name|id)

urlencoded string

id

Tags

tags[]=customer%20support

%20 is an urlencoded space character

urlencoded string

Tasks

tasks[]=building&tasks[]=34

urlencoded string

Titles

titles[]=some%20name

%20 is an urlencoded space character

urlencoded string

Done

done[]=1

int

Archived

archived=only (with|only|without)

urlencoded string

Overdue

overdue=1 (0|1)

int

No Board

no_board=1

int

Create New Task

POST /api/v1/scrum/tasks Creates a new task

POST /api/v1/scrum/tasks HTTP/1.1
Authorization: Bearer {{token}}
Hs-Client-Id: {{hs_client_id}}
Host: api.helpspace.com
Content-Type: application/json; charset=utf-8

{
    "title": "Implement user authentication feature",
    "description": "Add two-factor authentication to improve security.",
    "priority": "high",
    "assignee_id": 42,
    "customer_id": 15,
    "status_id": 7,
    "board_id": 3,
    "due_at": "2025-09-15T10:30:00Z",
    "tags": ["authentication", "security"],
    "sub_tasks": [
      {
        "title": "This is a subtask",
      }
    ],
    "attachments": [
      {
         "name": "test.png",
         "mime_type": "image/png",
         "data": "base64encodedString"
      }
    ]
}

201 Response

HTTP/1.1 201 OK
Content-Type: application/json
...

{
  "data": {
    // Object like in get task request
  }
}


Task create field list

Field

Type

Specifics

title

String

description

String

priority

String

very low, low, medium, high, very high

creator_id

Integer

assignee_id

Integer

customer_id

Integer

watchers

Array[Integer]

[12,5]

tickets

Array[Integer]

[1127,1137,1163]

status_id

(optional)

Integer

If provided, the task will be assigned to the given status_id.

Each status_id is always associated with a specific board.

If both status_id and board_id are provided, the status must belong to the specified board. Otherwise, an error will occur.

board_id

(optional)

Integer

Used to assign the task to a board only if status_id is not provided. In this case the default backlog status of the board is used.

If both status_id and board_id are provided, the status must belong to the specified board. Otherwise, an error will occur.

sub_tasks

Array[Object]

[{
  "title": "First sub task",
},
{
  "title": "Second sub task",
}]

attachments

Array[Object]

[
      {
         "name": "test.png",
         "mime_type": "image/png",
         "data": "base64encodedString"
      }
]

tags

Array[String]

["tag1", "tag2"]

due_at

Date String

done_at

Date String

is_archived

Boolean

Update Task

PATCH /api/v1/scrum/tasks/{id} Returns the ticket object

PATCH /api/v1/scrum/tasks/{{id}} HTTP/1.1
Authorization: Bearer {{token}}
Hs-Client-Id: {{hs_client_id}}
Host: api.helpspace.com
Content-Type: application/json; charset=utf-8

 {
    "title": "This is my first Task",
    "description": "The first task is always the best one.",
    "priority": "low",
    "creator": 3,
    "assignee": 3,
    "customer": 123,
    "watchers": [1,4],
    "status_id": 2,
    "board_id": 3,
    "tags": ["project1", "support"],
    "sub_tasks": [
      {
        "title": "This is a new Subtask",
      },
      {
        "id": 24
        "title": "This will update the existing sub task with ID 24",
      }
    ],
    "attachments": [
      {
         "name": "test.png",
         "mime_type": "image/png",
         "data": "base64encodedString"
      }
    ]
}

200 Response

HTTP/1.1 200 OK
Content-Type: application/json
...

{
  "data": {
    // Object like in get customer request
  }
}

Task update field list

Field

Type

Specifics

title

String

description

String

piority

String

very low, low, medium, high, very high

creator_id

Integer

assignee_id

Integer

customer_id

Integer

watchers

Array[Integer]

[12,5]

tickets

Array[Integer]

[1127,1137,1163]

status_id

(optional)

Integer

If provided, the task will be assigned to the given status_id.

Each status_id is always associated with a specific board.

If both status_id and board_id are provided, the status must belong to the specified board. Otherwise, an error will occur.

board_id

(optional)

Integer

Used to assign the task to a board only if status_id is not provided. In this case the default backlog status of the board is used.

If both status_id and board_id are provided, the status must belong to the specified board. Otherwise, an error will occur.

sub_tasks

Array[Object]

[{
  "title": "New sub task",
},
{
  "id": 24 // Optional - To update existing sub task
  "title": "Changed Title for sub task with id 24",
}]

tags

Array[String]

["tag1", "tag2"]

attachments

Array[Object]

[
      {
         "name": "test.png",
         "mime_type": "image/png",
         "data": "base64encodedString"
      }
]

due_at

Date String

done_at

Date String

is_archived

Boolean

Delete Task

DELETE /api/v1/scrum/task/{id} Deletes an existing task.

DELETE /api/v1/scrum/tasks/{{id}} HTTP/1.1
Authorization: Bearer {{token}}
Hs-Client-Id: {{hs_client_id}}
Host: api.helpspace.com
Content-Type: application/json; charset=utf-8

200 Response

HTTP/1.1 200 OK

{
  "message": "Object deleted."
}

Task comments

Returns a paginated list of task comments.

GET /api/v1/scrum/task/{id}/comments Returns comments collection for a task.

Field

Type

Specifics

id

Integer

text

String

parent_id

Integer

Parent comment id if this is a reply; null for top-level comments.

commentator

Array[Object]

{
   "id": 91,
   "name": "Alex Rivera",
   "email": "alex@example.com"
}

reactions

Array

[
   {
     "reaction": "👍",
     "count": 2,
     "users": [
        { "id": 12, "name": "Jamie Lee" },
        { "id": 45, "name": "Taylor Kim" }
      ],
      "commentator_reacted": true
    }
]

attachments

Array

[
        {
          "id": 5501,
          "url": "https://api.helpspace.com/api/v1/media/attachment/5501",
          "file_type": "png",
          "file_name": "mockup-v3.png",
          "mime_type": "image/png",
          "size": 482391,
          "created_at": "2026-04-30T14:22:10+00:00",
          "updated_at": "2026-04-30T14:22:10+00:00"
        }
]

created_at

Date String

updated_at

Date String

200 Response

{
  "data": [
    {
      "id": 1842,
      "text": "<p>Thanks for the update — blocking on design sign-off.</p>",
      "parent_id": null,
      "commentator": {
        "id": 91,
        "name": "Alex Rivera",
        "email": "alex@example.com"
      },
      "reactions": [
        {
          "reaction": "👍",
          "count": 2,
          "users": [
            { "id": 12, "name": "Jamie Lee" },
            { "id": 45, "name": "Taylor Kim" }
          ],
          "commentator_reacted": true
        }
      ],
      "attachments": [
        {
          "id": 5501,
          "url": "https://api.helpspace.com/api/v1/media/attachment/5501",
          "file_type": "png",
          "file_name": "mockup-v3.png",
          "mime_type": "image/png",
          "size": 482391,
          "created_at": "2026-04-30T14:22:10+00:00",
          "updated_at": "2026-04-30T14:22:10+00:00"
        }
      ],
      "created_at": "2026-04-30T14:20:01+00:00",
      "updated_at": "2026-04-30T14:20:01+00:00"
    },
    {
      "id": 1843,
      "text": "<p>Reply: design approved, we can move it to Done.</p>",
      "parent_id": 1842,
      "commentator": {
        "id": 102,
        "name": "Morgan Patel",
        "email": "morgan@example.com"
      },
      "reactions": [],
      "attachments": [],
      "created_at": "2026-04-30T15:03:44+00:00",
      "updated_at": "2026-04-30T15:03:44+00:00"
    }
  ],
  "links": {
    "first": "https://api.helpspace.com/api/v1/scrum/tasks/42/comments?page=1",
    "last": "https://api.helpspace.com/api/v1/scrum/tasks/42/comments?page=1",
    "prev": null,
    "next": null
  },
  "meta": {
    "current_page": 1,
    "from": 1,
    "last_page": 1,
    "path": "https://api.helpspace.com/api/v1/scrum/tasks/42/comments",
    "per_page": 15,
    "to": 1,
    "total": 1
  }
}