Tasks
Staff have access to the API calls listed below if the Time Tracking tab is enabled for staff. You can enable or disable the Time Tracking tab under Settings->Permissions->Staff Permissions. Please note that the ‘project_id’ filter for task.list would only work for staff if they are assigned to the project.
task.create
Create a new task.
Request
<?xml version="1.0" encoding="utf-8"?>
<request method="task.create">
<task>
<name>Yard Work</name> <!-- (Required) -->
<billable>1</billable> <!-- Must be either 1 or 0 (Default) -->
<rate>15.00</rate> <!-- (Optional) -->
<description>Grass cutting, hedge trimming, etc.</description>
</task>
</request>
Response
<?xml version="1.0" encoding="utf-8"?>
<response xmlns="https://www.freshbooks.com/api/" status="ok">
<task_id>211</task_id>
</response>
task.update
Update an existing task.
Request
<?xml version="1.0" encoding="utf-8"?>
<request method="task.update">
<task>
<task_id>211</task_id>
<!-- Remaining params are same as task.create -->
</task>
</request>
Response
<?xml version="1.0" encoding="utf-8"?>
<response status="ok"></response>
task.get
Retrieve an existing task.
Request
<?xml version="1.0" encoding="utf-8"?>
<request method="task.get">
<task_id>211</task_id>
</request>
Response
<?xml version="1.0" encoding="utf-8"?>
<response xmlns="https://www.freshbooks.com/api/" status="ok">
<task>
<task_id>211</task_id>
<name>Research</name>
<description></description>
<billable>1</billable>
<rate>180</rate>
</task>
</response>
task.delete
Delete an existing task.
Request
<?xml version="1.0" encoding="utf-8"?>
<request method="task.delete">
<task_id>211</task_id>
</request>
Response
<?xml version="1.0" encoding="utf-8"?>
<response status="ok"></response>
task.list
Returns a list of tasks in alphabetical order.
Note: This method uses pagination.
Filters
- project_id – returns only tasks associated with a given project
Request
<?xml version="1.0" encoding="utf-8"?>
<request method="task.list">
<project_id>23</project_id> <!-- (Optional) -->
<page>1</page> <!-- The page number to show (Optional) -->
<per_page>15</per_page> <!-- Number of results per page, default 25 (Optional) -->
</request>
Response
<?xml version="1.0" encoding="utf-8"?>
<response xmlns="https://www.freshbooks.com/api/" status="ok">
<tasks page="1" per_page="15" pages="2" total="28">
<task>
<task_id>211</task_id>
<name>Research</name>
<description></description>
<billable>1</billable>
<rate>180</rate>
</task>
<task>
...
</task>
...
</tasks>
</response>