Skip to main content
Version: 8.2

Task API

The Task API controller provides an API to query and manage tasks.

Endpoints

Search tasks

Returns the list of tasks that satisfy search request parameters.

URL

/v1/tasks/search

Method

POST

Request body

TaskSearchRequest - [Optional]

HTTP request example

All request body parameters are optional.

note

Only one of [searchAfter, searchAfterOrEqual, searchBefore, searchBeforeOrEqual] search options must be present at once in the request.

If an empty body is provided, all tasks are returned:

curl -X 'POST' \
'http://{host}/v1/tasks/search' \
-H 'accept: application/json' \
-H 'Content-Type: application/json' \
-H 'Cookie: TASKLIST-SESSION={tasklistSessionId}' \
-d ''

Only assigned and with CREATED state tasks will be returned:

curl -X 'POST' \
'http://{host}/v1/tasks/search' \
-H 'accept: application/json' \
-H 'Content-Type: application/json' \
-H 'Cookie: TASKLIST-SESSION={tasklistSessionId}' \
-d '{
"state": "CREATED",
"assigned": true
}'

Responses

HTTP statusDescriptionResponse schema
200On successJSON array of objects with TaskSearchResponse structure
400An error is returned when more than one search parameters among [searchAfter, searchAfterOrEqual, searchBefore, searchBeforeOrEqual] are present in the request.JSON object with Error structure

Get task

This endpoint retrieves the details of a specific task identified by {taskId}.

URL

/v1/tasks/{taskId}

Method

GET

Request parameters

Parameter nameTypeRequiredDescription
taskIdpathtrueID of the task

HTTP request example

curl -X 'GET' \
'http://{host}/v1/tasks/{taskId}' \
-H 'accept: application/json'
-H 'Cookie: TASKLIST-SESSION={tasklistSessionId}'

Responses

HTTP statusDescriptionResponse schema
200On successJSON object with TaskResponse structure
404An error is returned when the task with the taskId is not found.JSON object with Error structure

Assign task

Endpoint to assign a task with taskId to assignee or the active user. Returns the task.

URL

/v1/tasks/{taskId}/assign

Method

PATCH

Request parameters

Parameter nameTypeRequiredDescription
taskIdpathtrueID of the task

Request body

TaskAssignRequest - [Optional]

note

When using the REST API with a JWT authentication token, the following request body parameters may be used.

HTTP request example

curl -X 'PATCH' \
'http://{host}/v1/tasks/{taskId}/assign' \
-H 'accept: application/json' \
-H 'Content-Type: application/json' \
-H 'Cookie: TASKLIST-SESSION={tasklistSessionId}'

If JWT authentication is used:

curl -X 'PATCH' \
'http://{host}/v1/tasks/{taskId}/assign' \
-H 'accept: application/json' \
-H 'Content-Type: application/json' \
-H 'Cookie: TASKLIST-SESSION={tasklistSessionId}' \
-d '{
"assignee": "someAssignee",
"allowOverrideAssignment": true
}'

Responses

HTTP statusDescriptionResponse schema
200On successJSON object with TaskResponse structure
400An error is returned when the task is not active (not in the CREATED state).JSON object with Error structure
400An error is returned when task was already assigned.JSON object with Error structure
403An error is returned when the user doesn't have the permission to assign another user to this task.JSON object with Error structure
404An error is returned when the task with the taskId is not found.JSON object with Error structure

Unassign task

Unassign a task with the provided id. This returns the task.

URL

/v1/tasks/{taskId}/unassign

Method

PATCH

Request parameters

Parameter nameTypeRequiredDescription
taskIdpathtrueID of the task

HTTP request example

curl -X 'PATCH' \
'http://{host}/v1/tasks/{taskId}/unassign' \
-H 'accept: application/json' \
-H 'Cookie: TASKLIST-SESSION={tasklistSessionId}'

Responses

HTTP statusDescriptionResponse schema
200On successJSON object with TaskResponse structure
400An error is returned when the task is not active (not in the CREATED state).JSON object with Error structure
400An error is returned if the task was not assigned before.JSON object with Error structure
404An error is returned when the task with the taskId is not found.JSON object with Error structure

Complete task

Complete a task with taskId and optional variables. Returns the task.

URL

/v1/tasks/{taskId}/complete

Method

PATCH

Request parameters

Parameter nameTypeRequiredDescription
taskIdpathtrueID of the task

Request body

TaskCompleteRequest - [Optional]

HTTP request example

With empty body:

curl -X 'PATCH' \
'http://{host}/v1/tasks/{taskId}/complete' \
-H 'accept: application/json' \
-H 'Cookie: TASKLIST-SESSION={tasklistSessionId}'

With TaskCompleteRequest:

curl -X 'PATCH' \
'http://{host}/v1/tasks/{taskId}/complete' \
-H 'accept: application/json' \
-H 'Cookie: TASKLIST-SESSION={tasklistSessionId}' \
-d '{
"variables": [
{
"name": "varA",
"value": "25"
}
]
}'

Responses

HTTP statusDescriptionResponse schema
200On successJSON object with TaskResponse structure
400An error is returned when the task is not active (not in the CREATED state).JSON object with Error structure
400An error is returned if the task was not assigned before.JSON object with Error structure
400An error is returned if the task is not assigned to the current user.JSON object with Error structure
404An error is returned when the task with the taskId is not found.JSON object with Error structure

Search task variables

Returns a list of task variables for the specified taskId and variableNames.

URL

/v1/tasks/{taskId}/variables/search

Method

POST

Request parameters

Parameter nameTypeRequiredDescription
taskIdpathtrueID of the task

Request body

VariablesSearchRequest - [Optional]

HTTP request example

If the request body is not provided or if the variableNames parameter in the request is null or empty, all variables associated with the task will be returned.

curl -X 'POST' \
'http://{host}/v1/tasks/{taskId}/variables/search' \
-H 'accept: application/json' \
-H 'Cookie: TASKLIST-SESSION={tasklistSessionId}' \
-d ''
curl -X 'POST' \
'http://{host}/v1/tasks/{taskId}/variables/search' \
-H 'accept: application/json' \
-H 'Cookie: TASKLIST-SESSION={tasklistSessionId}' \
-d '{
"variableNames": null
}'
curl -X 'POST' \
'http://{host}/v1/tasks/{taskId}/variables/search' \
-H 'accept: application/json' \
-H 'Cookie: TASKLIST-SESSION={tasklistSessionId}' \
-d '{
"variableNames": []
}'

Only the variables with name "varA" and "varB" will be returned if they are assigned to the task.

curl -X 'POST' \
'http://{host}/v1/tasks/{taskId}/variables/search' \
-H 'accept: application/json' \
-H 'Cookie: TASKLIST-SESSION={tasklistSessionId}' \
-d '{
"variableNames": [
"varA", "varB"
]
}'

Responses

caution

Starting with the 8.3 release, changes will be implemented to the response for a 200 status. If isValueTruncated is set to true for any variable, the corresponding value field will now be set to null.

HTTP statusDescriptionResponse schema
200On successJSON array of objects with VariableResponse structure
404An error is returned when the task with the taskId is not found.JSON object with Error structure