REST API - List of tasks -> candidateUser

The URL query parameter candidateUser is actually candidate for the endpoint:

GET runtime/tasks

For example:

      ...

      {
        name : 'Where I am one of the candidates',
        filter : {
          // name: 'candidateUser',
          name: 'candidate',
          assignment: this.currentUser.username
        },
        icon : 'assignment_ind'
      }

How did you validate? When I check the code https://github.com/flowable/flowable-engine/blob/master/modules/flowable-rest/src/main/java/org/flowable/rest/service/api/runtime/task/TaskCollectionResource.java#L166, it checks the ‘candidateUser’ parameter.

‘candidateUser’ didn’t work for me. So I searched the REST API docs and noticed that the term ‘candidate’ is also used. So I tried it and it worked:

    ...

    this.items = [
      {
        name : 'I am involved',
        filter : {
          name: 'involvedUser',
          assignment: this.currentUser.username
        },
        icon : 'assignment_ind'
      },
      {
        name : 'I am the assignee',
        filter : {
          name: 'assignee',
          assignment: this.currentUser.username
        },
        icon : 'assignment_ind'
      },
      {
        name : 'I am one of the candidates',
        filter : {
          // name: 'candidateUser',
          name: 'candidate',
          assignment: this.currentUser.username
        },
        icon : 'assignment_ind'
      }
    ];

TaskListFilterComponent:

tasks

The TaskListFilterComponent emits an event when the filter changes. The TaskListComponent consumes the event and makes a call to the TasksService find() method.

For example:

Request URL: http://localhost:3001/process-api/runtime/tasks?candidate=rob.ferguson&excludeSubTasks=true&order=desc&sort=createTime
Request Method: GET
Status Code: 200 
Remote Address: [::1]:3001
Referrer Policy: no-referrer-when-downgrade
Accept: application/json, text/plain, */*
Accept-Encoding: gzip, deflate, br
Accept-Language: en-US,en;q=0.9,zh-TW;q=0.8,zh;q=0.7
Authorization: Bearer eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICJ6OWM4dU9mM2w5R3phZjZTSVdRV3pvMDdtRXpwTEN3YndONEpwMnJyY3BRIn0.eyJleHAiOjE1OTk1MTU3MzQsImlhdCI6MTU5OTUxMzkzNCwiYXV0aF90aW1lIjoxNTk5NTEzOTMzLCJqdGkiOiI5MDVhOGRmMC05OWUyLTRjZjYtOGU4Yy1lNDQ5NDIxYzA1N2UiLCJpc3MiOiJodHRwOi8vbG9jYWxob3N0OjEwMDAxL2F1dGgvcmVhbG1zL2RldmVsb3BtZW50IiwiYXVkIjoiYWNjb3VudCIsInN1YiI6ImViYTAwOTk2LTg4NTQtNDliYi04OGE0LTY4MTkxZDE5OTUyMCIsInR5cCI6IkJlYXJlciIsImF6cCI6InNlcmVuZGlwaXR5LXB3YSIsInNlc3Npb25fc3RhdGUiOiI2YjU2OTE3Ni0yYmEzLTRmNGItYjBhOC0xNTIzMmEzNDQxZWUiLCJhY3IiOiIxIiwiYWxsb3dlZC1vcmlnaW5zIjpbIioiXSwicmVhbG1fYWNjZXNzIjp7InJvbGVzIjpbIlVzZXIiLCJvZmZsaW5lX2FjY2VzcyIsInVtYV9hdXRob3JpemF0aW9uIiwiTWFuYWdlciJdfSwicmVzb3VyY2VfYWNjZXNzIjp7ImFjY291bnQiOnsicm9sZXMiOlsibWFuYWdlLWFjY291bnQiLCJtYW5hZ2UtYWNjb3VudC1saW5rcyIsInZpZXctcHJvZmlsZSJdfX0sInNjb3BlIjoib3BlbmlkIGluZGl2aWR1YWw6cG9zdCBwaG9uZSBhZGRyZXNzIGluZGl2aWR1YWw6ZGVsZXRlIHByb2ZpbGUgZW1haWwgaW5kaXZpZHVhbDpnZXQgaW5kaXZpZHVhbDpwYXRjaCBvZmZsaW5lX2FjY2VzcyIsImFkZHJlc3MiOnt9LCJlbWFpbF92ZXJpZmllZCI6ZmFsc2UsIm5hbWUiOiJSb2IgRmVyZ3Vzb24iLCJncm91cHMiOlsiVGVhbSBMZWFkZXIiLCJUZWFtIE1lbWJlciJdLCJwcmVmZXJyZWRfdXNlcm5hbWUiOiJyb2IuZmVyZ3Vzb24iLCJnaXZlbl9uYW1lIjoiUm9iIiwiZmFtaWx5X25hbWUiOiJGZXJndXNvbiIsImVtYWlsIjoicm9iLmZlcmd1c29uQHJvYmZlcmd1c29uLm9yZyJ9.L1cSKp0bU2o6w1jUq9tE5Bggfxeu0BNO7gYpHLm_6tqXEt3iIbuGqxS_zk6zSHsZNy_gWLbWWa85tlvOIesvjjKbgrNHcayRYIDgiQmfgIRiOltx0imsM-bImze847151_lZxmQLvSGzEjyfeYuiAlxHac2BZNWgo2tPqjQ8136ZxwNYGh0n_muLXSmqJCloUAhU4KG29R23azi6qLEo2ycKOM-pEplVza9O1uzZ7TnbboeMQRotOXOzPDIyXSGim2ur9_3mXX7rM1kgDfSsJghiXtyVDOoujYnz0nRHi90HlbUmNDIODIPvtDSButL74jp0KnlVAM67wDPh02GsPw
Connection: keep-alive
Content-Type: application/json
Host: localhost:3001
Origin: http://localhost:4200
Referer: http://localhost:4200/work/activities/4f0023fb-ebf7-11ea-88d0-0242ac1b0006
Sec-Fetch-Dest: empty
Sec-Fetch-Mode: cors
Sec-Fetch-Site: same-site
User-Agent: Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.61 Mobile Safari/537.36
candidate: rob.ferguson
excludeSubTasks: true
order: desc
sort: createTime

Response:

{,…}
data: [{id: "4f0023fb-ebf7-11ea-88d0-0242ac1b0006",…}, {id: "3c5d7adf-ebf7-11ea-88d0-0242ac1b0006",…},…]
0: {id: "4f0023fb-ebf7-11ea-88d0-0242ac1b0006",…}
1: {id: "3c5d7adf-ebf7-11ea-88d0-0242ac1b0006",…}
2: {id: "49d8ce8c-ebd8-11ea-88d0-0242ac1b0006",…}
3: {id: "0bfcfb69-e9c1-11ea-90c6-804971108762",…}
order: "desc"
size: 4
sort: "createTime"
start: 0
total: 4

Network Tab: