Skip to main content

 Services

Web services from /about to /webhooks

find tasks

/members/{member}/tasks/find [GET]

com.pageseeder.comment.GetTasksByFilter

Description

Load a list of non-archived tasks using filter parameters. The last comment in the task must match all filter parameters. The tasks with the most recent last comment are returned first.

This service performs the same as Service: /tasks/find [GET] but returns any tasks that {member} has access to.

The @status, @priority, @due attributes and <assignedto> element might not be included if comments=first or none and the last comment in the task is not loaded.

Performance

The performance of this service declines as the number of task or workflow comments increases.

So when you have a large number of tasks or workflows, you might need to consider alternative such as the using an index search which includes the filter pssubtype:task or pssubtype:workflow.

The main differences with this service is that the index:

  1. Is updated asynchronously after a task is created or updated
  2. Returns search results that include less data fields than the corresponding objects
  3. Does not return results from workflows on archived documents as these are not indexed.

If using the index is not possible, you can do the following:

  • If you don’t need the contents of the comment, considers using contents=none
  • If you don’t need the attachments, consider using attachments=none

Parameters

NameDescriptionRequiredTypeDefault
assignedafterThe date time after which the tasks were assigned last, format is ISO-8601 e.g. 2010-10-25T12:26:00+10:00nodatetime
assignedbeforeThe date time before which the tasks were assigned last, format is ISO-8601 e.g. 2011-08-25T10:20:00-04:00nodatetime
assignedtoThe ID of the member the tasks are assigned to (0 means Nobody)nolong
attachmentsThe attachments to include (can be none, context, all)noenumall
authorThe ID of the tasks authornolong
commentsWhich comments should be loaded for each task (can be: none, first, last, all, archive)noenumlast
contentsThe contents to include (can be none, all)noenumall
contentroleThe contentrole for the tasks, can be comment, workflow, all (comment includes file attachment)noenumall
contextThe context for the tasks (can be group, uri, all)noenumall
createdafterThe date time after which the tasks were created, format is ISO-8601 e.g. 2010-10-25T12:26:00+10:00nostring
createdbeforeThe date time before which the tasks were created, format is ISO-8601 e.g. 2011-08-25T10:20:00-04:00nodatetime
dueafterThe date time after which the tasks are due, format is ISO-8601 e.g. 2010-10-25T12:26:00+10:00nodatetime
duebeforeThe date time before which the tasks are due format is ISO-8601 e.g. 2011-08-25T10:20:00-04:00nodatetime
emailsThe email addresses to include, can be none, all (admin only)noenumnone
groupsComma-separated list of groups the tasks MUST belong to (if not specified, the user's current groups are used)nostring
labelsComma-separated list of label values – task MUST have all (not recommended for filtering large data sets)nostring
modifiedafterThe date time after which the tasks were modified, format is ISO-8601 e.g. 2010-10-25T12:26:00+10:00nostring
pageThe page to loadnointeger1
pagesizeThe number of results per pagenointeger1000
pathsThe context URI paths for the tasks - MUST be URL encoded (comma-separated list with optional * suffix)nostring
prioritiesComma-separated list of prioritiesnostring
projectReturn only tasks from the current user’s groups that are under this project (only if groups not specified)nostring
publicationid
Return only tasks for documents in this publication. Requires PageSeeder 5.9907 or higher.nopublicationid
statusesComma-separated list of statusesnostring
tasksizeThe maximum number of comments to return per task (0 = unlimited)nointeger100
titleThe title of the tasks (optional wildcard * suffix, use ** to escape)nostring
typeThe type of the tasks (optional wildcard * suffix, use ** to escape)nostring
typesComma-separated list of the types the task can have (empty string means no type)nostrings

Permission

This service can only be invoked by the member or an administrator. If the parameter emails is set to all, the permission is restricted to administrator only.

The other restriction is that the groups parameter can only list groups that have public access or the current user is a guest or higher.

Response

The output has the following format:

<tasks>
  <task id="123"
        title="My thread"
       [replycount="1"
        lastcommentid="234"
        lastcommentdate="2012-08-20T14:27:48+10:00"]
        status="Open"
       [priority="High"]
       [due="2012-08-25T18:00:00+10:00"]>
    <uri id="789"> ... </uri>
    <locator fragment="2"/>
   [<assignedto id="34" date="2012-08-20T14:27:48+10:00" ...> ... 
    </assignedto>]
    <comment id="234"
             contentrole="File Attachment"
             created="2012-08-20T14:27:48+10:00">
      <title>My thread</title>
      <content type="text/plain">Some text</content>
      <attachment>
        <uri id="189"> ... </uri>
      </attachment>
      <attachment fragment="5">
        <uri id="289"> ... </uri>
      </attachment>
    </comment>
  </task>
  <task id="100"> ... </task>
</tasks>

The @replycount , @lastcommentid and @lastcommentdate are only included and @title is from the last comment, if the comments parameter is last, all or archive, otherwise @title is from the first comment.

Error Handling

CodeCause / Description
0x1306The Group is invalid or not accessible
0x1312The createdafter or createdbefore date is invalid
0x1313The author is invalid
Created on , last edited on