This site contains the documentation that is relevant to older WSO2 product versions and offerings.
For the latest WSO2 documentation, visit https://wso2.com/documentation/.

Working with Tasks in Producteev


Overview

The following operations allow you to work with tasks. Click an operation name to see details on how to use it.

For a sample proxy service that illustrates how to work with tasks, see Sample configuration

OperationDescription

addFollowerToTask

Adds a user as a follower of the task.

addLabelToTask

Adds a label to a task.

assignTaskAdds a user as a responsible of the task.
createTaskCreates a new task.
getTaskRetrieves a task.
listTaskNotesRetrieves the task's notes.
listTasksRetrieves a list of tasks.
removeAssigneeRemoves a responsible of a task.
updateTaskUpdates a task.

Operation details

This section provides further details on the operations related to tasks.

Adding a user as a follower of the task

The addFollowerToTask operation adds a user as a follower of the task.

addFollowerToTask
<producteev.addFollowerToTask>
    <taskId>{$ctx:taskId}</taskId>
	<userId>{$ctx:userId}</userId>
</producteev.addFollowerToTask>
Properties
  • taskId: The ID of the task.
  • userId: The user ID of the follower.
   Sample request

Following is a sample REST/JSON request that can be handled by the addFollowerToTask operation.

Sample Request for addFollowerToTask
{
   "apiUrl": "https://www.producteev.com",
   "accessToken": "OTg4ZGY0NTgxZTE2ZDYzODNjNDUzZWUzMTI4YmExNzhiMDM2MTllNzNlYWQyMmY4ODk5YjQ1Mzc0ZGQxZjAxOA",
   "taskId":"55b9bf44b0fa09985b000030",
   "userId":"55b73bafb0fa09d636000000"
}
Related Producteev documentation

 https://www.producteev.com/api/doc/#Add follower to task

Adding a label to a task

The addLabelToTask operation adds a label to a task.

addLabelToTask
<producteev.addLabelToTask>
    <taskId>{$ctx:taskId}</taskId>
	<labelId>{$ctx:labelId}</labelId>
</producteev.addLabelToTask>Properties
  • taskId: The ID of the task.
  • labelId: The ID of the label.
   Sample request

Following is a sample REST/JSON request that can be handled by the addLabelToTask operation.

Sample Request for addLabelToTask
{
   "apiUrl": "https://www.producteev.com",
   "accessToken": "OTg4ZGY0NTgxZTE2ZDYzODNjNDUzZWUzMTI4YmExNzhiMDM2MTllNzNlYWQyMmY4ODk5YjQ1Mzc0ZGQxZjAxOA",
   "taskId":"55b9bf44b0fa09985b000030",
   "labelId":"55ba09f5b2fa09285400000e"
}
Related Producteev documentation

 https://www.producteev.com/api/doc/#Add label to task

Adding a user as a responsible of the task

The assignTask operation adds a user as a responsible of the task.

assignTask
<producteev.assignTask>
    <taskId>{$ctx:taskId}</taskId>
	<userId>{$ctx:userId}</userId>
</producteev.assignTask>
Properties
  • taskId: The ID of the task.
  • userId: The ID of the user to assign for the task.
   Sample request

Following is a sample REST/JSON request that can be handled by the assignTask operation.

Sample Request for assignTask
{
   "apiUrl": "https://www.producteev.com",
   "accessToken": "OTg4ZGY0NTgxZTE2ZDYzODNjNDUzZWUzMTI4YmExNzhiMDM2MTllNzNlYWQyMmY4ODk5YjQ1Mzc0ZGQxZjAxOA",
   "taskId":"55b9bf44b0fa09985b000030",
   "userId":"55b78251b0fa09ac1d000002"
}
Related Producteev documentation

 https://www.producteev.com/api/doc/#Assign a task

Creating a new task

The createTask operation creates a new task.

createTask
<producteev.createTask>
	<title>{$ctx:title}</title>
	<endDateTimeZone>{$ctx:endDateTimeZone}</endDateTimeZone>
	<endDate>{$ctx:endDate}</endDate>
	<projectId>{$ctx:projectId}</projectId>
</producteev.createTask>
Properties
  • title: Title of the task.
  • endDateTimeZone: Standard timezone abbreviations for the task end date (e.g.: PST).
  • endDate: End date of the task. The format should be in ISO 8601 date and time format (e.g.: 2013-12-07T07:00:00+0000).
  • projectId: The ID of the project to create task.
   Sample request

Following is a sample REST/JSON request that can be handled by the createTask operation.

Sample Request for createTask
{
    "apiUrl": "https://www.producteev.com",
    "accessToken": "OTg4ZGY0NTgxZTE2ZDYzODNjNDUzZWUzMTI4YmExNzhiMDM2MTllNzNlYWQyMmY4ODk5YjQ1Mzc0ZGQxZjAxOA",
    "title": "Review the copy",
    "projectId": "55b8c975b0fa09587a000011",
    "endDate":"2013-12-07T07:00:00+0000",
	"endDateTimeZone":"PST"
}
Related Producteev documentation

 https://www.producteev.com/api/doc/#Create a task

Retrieving a task

The getTask operation retrieves a task.

getTask
<producteev.getTask>
	<taskId>{$ctx:taskId}</taskId>
</producteev.getTask>
Properties
  • taskId: The ID of the task.
   Sample request

Following is a sample REST/JSON request that can be handled by the getTask operation.

Sample Request for getTask
{
   "apiUrl": "https://www.producteev.com",
   "accessToken": "OTg4ZGY0NTgxZTE2ZDYzODNjNDUzZWUzMTI4YmExNzhiMDM2MTllNzNlYWQyMmY4ODk5YjQ1Mzc0ZGQxZjAxOA",
   "taskId":"55b9bf44b0fa09985b000030"
}
Related Producteev documentation

 https://www.producteev.com/api/doc/#Find a task

Retrieving the task's notes

The listTaskNotes operation retrieves the task's notes.

listTaskNotes
<producteev.listTaskNotes>
	<taskId>{$ctx:taskId}</taskId>
</producteev.listTaskNotes>
Properties
  • taskId: The ID of the task.
   Sample request

Following is a sample REST/JSON request that can be handled by the listTaskNotes operation.

Sample Request for listTaskNotes
{
   "apiUrl": "https://www.producteev.com",
   "accessToken": "OTg4ZGY0NTgxZTE2ZDYzODNjNDUzZWUzMTI4YmExNzhiMDM2MTllNzNlYWQyMmY4ODk5YjQ1Mzc0ZGQxZjAxOA",  
   "taskId":"55b9bf44b0fa09985b000030"
}
Related Producteev documentation

 https://www.producteev.com/api/doc/#List notes

Retrieving a list of tasks

The listTasks operation retrieves a list of tasks.

listTasks
<producteev.listTasks>
	<sort>{$ctx:sort}</sort>
    <createdAtToCriteria>{$ctx:createdAtToCriteria}</createdAtToCriteria>
    <alias>{$ctx:alias}</alias>
    <networksCriteria>{$ctx:networksCriteria}</networksCriteria>
    <creatorsCriteria>{$ctx:creatorsCriteria}</creatorsCriteria>
    <updatedAtToCriteria>{$ctx:updatedAtToCriteria}</updatedAtToCriteria>
    <followersCriteria>{$ctx:followersCriteria}</followersCriteria>
    <projectsCriteria>{$ctx:projectsCriteria}</projectsCriteria>
    <responsiblesCriteria>{$ctx:responsiblesCriteria}</responsiblesCriteria>
    <createdAtFromCriteria>{$ctx:createdAtFromCriteria}</createdAtFromCriteria>
    <deadlineToCriteria>{$ctx:deadlineToCriteria}</deadlineToCriteria>
    <includeDeleted>{$ctx:includeDeleted}</includeDeleted>
    <order>{$ctx:order}</order>
    <page>{$ctx:page}</page>
    <statusesCriteria>{$ctx:statusesCriteria}</statusesCriteria>
    <searchTextCriteria>{$ctx:searchTextCriteria}</searchTextCriteria>
    <prioritiesCriteria>{$ctx:prioritiesCriteria}</prioritiesCriteria>
    <updatedAtFromCriteria>{$ctx:updatedAtFromCriteria}</updatedAtFromCriteria>
    <deadlineFromCriteria>{$ctx:deadlineFromCriteria}</deadlineFromCriteria>
    <labelsCriteria>{$ctx:labelsCriteria}</labelsCriteria>
</producteev.listTasks>
Properties
  • sort: Sorting order of the tasks. Possible values are 'created_at', 'updated_at', 'project', 'creator', 'deadline_time', 'priority', 'status' and 'title'.
  • createdAtToCriteria: Task created at 'to' date. The date should be in epoch format.
  • alias: Alias to list tasks. Possible values are 'all', 'starred', 'completed', 'created', 'responsible', 'duetoday', 'duethisweek', 'late', 'files', 'inprogress' and 'paused'.
  • networksCriteria: An array of network IDs to search by network criteria.
  • creatorsCriteria: An array of user IDs to search by task creators criteria.
  • updatedAtToCriteria: Task updated at 'to' date. The date should be in epoch format.
  • followersCriteria: An array of user IDs to search by task followers criteria.
  • projectsCriteria: An array of project IDs to search by project criteria.
  • responsiblesCriteria: An array of user IDs to search by task responsible criteria.
  • createdAtFromCriteria: Task created at 'from' date. The date should be in epoch format.
  • deadlineToCriteria: Task deadline to date. The date should be in epoch format.
  • includeDeleted: Boolean value to list tasks with deleted task. Default value is false.
  • order: Order of the task list. Possible values are 'asc' and 'desc'.
  • page: Number of the page to view.
  • statusesCriteria: An array of task status IDs to search by task status criteria.
  • searchTextCriteria: Text string to search tasks.
  • prioritiesCriteria: An array of priority IDs to search by priority criteria.
  • updatedAtFromCriteria: Task updated at 'from' date. The date should be in epoch format.
  • deadlineFromCriteria: Deadline from date. The date should be in epoch format.
  • labelsCriteria: An array of label IDs to search by task labels criteria.
   Sample request

Following is a sample REST/JSON request that can be handled by the listTasks operation.

Sample Request for listTasks
{
   "apiUrl": "https://www.producteev.com",
   "accessToken": "OTg4ZGY0NTgxZTE2ZDYzODNjNDUzZWUzMTI4YmExNzhiMDM2MTllNzNlYWQyMmY4ODk5YjQ1Mzc0ZGQxZjAxOA",  
   "sort":"created_at",
   "page":"1",
   "order":"asc",
   "alias":"active",
   "includeDeleted":"true",
   "networksCriteria":["55b8c39db1fa096f77000001"],
   "projectsCriteria":["55b8c975b0fa09587a000011"],
   "prioritiesCriteria":[0,1],
   "statusesCriteria":[0,1],
   "responsiblesCriteria":["55b73bafb0fa09d636000000"],
   "followersCriteria":["55b73bafb0fa09d636000000"],
   "creatorsCriteria":["55b73bafb0fa09d636000000"],
   "labelsCriteria":["55ba09f5b2fa09285400000e"],
   "searchTextCriteria":"test task",
   "deadlineFromCriteria":"1437029773",
   "deadlineToCriteria":"1437029773",
   "createdAtFromCriteria":"1437029773",
   "createdAtToCriteria":"1437039773",
   "updatedAtFromCriteria":"1437029773",
   "updatedAtToCriteria":"1437039773"
}
Related Producteev documentation

https://www.producteev.com/api/doc/#Search

Removing a responsible of a task

The removeAssignee operation removes a responsible of a task. 

removeAssignee
<producteev.removeAssignee>
    <taskId>{$ctx:taskId}</taskId>
	<userId>{$ctx:userId}</userId>
</producteev.removeAssignee>
Properties
  • taskId: The ID of the task.
  • userId: The ID of the assignee to remove from the task.
   Sample request

Following is a sample REST/JSON request that can be handled by the removeAssignee operation.

Sample Request for removeAssignee
{
   "apiUrl": "https://www.producteev.com",
   "accessToken": "OTg4ZGY0NTgxZTE2ZDYzODNjNDUzZWUzMTI4YmExNzhiMDM2MTllNzNlYWQyMmY4ODk5YjQ1Mzc0ZGQxZjAxOA",
   "taskId":"55b9bf44b0fa09985b000030",
   "userId":"55b73bafb0fa09d636000000"
}
Related Producteev documentation

 https://www.producteev.com/api/doc/#Remove an assignee

Updating a task

The updateTask operation updates a task.

updateTask
<producteev.updateTask>
	<taskId>{$ctx:taskId}</taskId>
	<reminder>{$ctx:reminder}</reminder>
	<title>{$ctx:title}</title>
 	<status>{$ctx:status}</status>
	<priority>{$ctx:priority}</priority>
	<endDateTimeZone>{$ctx:endDateTimeZone}</endDateTimeZone>
	<allday>{$ctx:allday}</allday>
	<endDate>{$ctx:endDate}</endDate>
	<projectId>{$ctx:projectId}</projectId>
</producteev.updateTask>
Properties
  • taskId: The ID of the task to update.
  • reminder: Reminder for the task. Possible values are '0' and '1'.
  • title: The title of the task.
  • status: Status of the task.
  • priority: Priority of the task.
  • endDateTimeZone: Standard timezone abbreviations for the task end date (e.g.: PST).
  • allday: Boolean value to set the task as all day.
  • endDate: Th end date of the task. The format should be in ISO 8601 date and time format (e.g.: 2013-12-07T07:00:00+0000).
  • projectId: The ID of the project to create task.
   Sample request

Following is a sample REST/JSON request that can be handled by the updateTask operation.

Sample Request for updateTask
{
    "apiUrl": "https://www.producteev.com",
    "accessToken": "OTg4ZGY0NTgxZTE2ZDYzODNjNDUzZWUzMTI4YmExNzhiMDM2MTllNzNlYWQyMmY4ODk5YjQ1Mzc0ZGQxZjAxOA",
    "title": "Review the copy",
    "projectId": "55b8c975b0fa09587a000011",
	"endDate":"2013-12-07T07:00:00+0000",
    "endDateTimeZone":"PST",
    "taskId": "123456789",
    "priority": "0",
    "status": "0",
    "allday": "false",
    "reminder": "1"
}
Related Producteev documentation

 https://www.producteev.com/api/doc/#Update a task

Sample configuration

Following is a sample proxy service that illustrates how to connect to Producteev with the init operation and use the addFollowerToTask operation. The sample request for this proxy can be found in the addFollowerToTask sample request.

Sample Proxy
<?xml version="1.0" encoding="UTF-8"?>
	<proxy xmlns="http://ws.apache.org/ns/synapse" name="producteev_addFollowerToTask" transports="https,http" statistics="disable" trace="disable" startOnLoad="true">
	 <target>
	 <inSequence onError="faultHandlerSeq">
      <property name="accessToken" expression="json-eval($.accessToken)"/>
      <property name="apiUrl" expression="json-eval($.apiUrl)"/>
      <property name="taskId" expression="json-eval($.taskId)"/>
      <property name="userId" expression="json-eval($.userId)"/>
      <producteev.init>
         <accessToken>{$ctx:accessToken}</accessToken>
         <apiUrl>{$ctx:apiUrl}</apiUrl>
      </producteev.init>
      <producteev.addFollowerToTask>
         <taskId>{$ctx:taskId}</taskId>
         <userId>{$ctx:userId}</userId>
      </producteev.addFollowerToTask>
	   <respond/>
	 </inSequence>
	  <outSequence>
	   <send/>
	  </outSequence>
	 </target>
   <description/>
  </proxy>