BatchBook API
To-Dos
Note: Each of these requests requires that you authenticate with a BatchBook account. This requires an account name and an API token. For more information on authentication, visit the API homepage.
Methods
- Show
- List all To-Dos
- List By Search Term
- Create
- Update
- Destroy
- Tags:
- Related Contacts:
- Comments:
Show
GET /service/todos/#{id}.xml
Returns a single Todo
Response
Status: 200
<todo>
<id type="integer">71825</id>
<title>Call about the cake</title>
<description>do this thing</description>
<due_date>2010-09-03 12:00:00 -0400</due_date>
<flagged type="boolean">false</flagged>
<complete type="boolean">false</complete>
<assigned_by>Eric Krause</assigned_by>
<assigned_to>Eric Krause</assigned_to>
<participants type="array">
<participant_id type="integer">1</participant_id>
</participants>
<tags>
</tags>
<mega_comments>
</mega_comments>
<created_at>Thu Sep 02 14:34:34 UTC 2010</created_at>
<updated_at>Thu Sep 02 16:33:23 UTC 2010</updated_at>
</todo>
List All
GET /service/todos.xml
Returns all Todos for the current user.
Response
Status: 200
<todos type="array">
<todo>
...
</todo>
<todo>
...
</todo>
</todos>
List By Search Term
GET /service/todos.xml
Returns a collection of todos that match the the query passed in through the url. This shows all todos matching the query, not just those assigned to the current user. Note: The search query options are mutually exclusive and can not be used together.
Parameters
| Option | Default | Comment |
|---|---|---|
| person_id or company_id | None | Search for all todos with the person or company as participant. Can not be used with updated_since. |
| updated_since | None | Search by the last time the record was updated. Example 'Jul 01 13:37:38 UTC 2010'. Can not be used with person_id or company_id. |
| assigned_to | None | Search all todos by a person's login. Allows you to find all todos assigned to a user. See Users for reference on how to get the login email. Can not be used with other search terms. |
Response
Status: 200
<todos type="array">
<todo>
...
</todo>
<todo>
...
</todo>
</todos>
Create
POST /service/todos.xml
Creates a new Todo. Note: assigned_to is optional. If it isn't sent, the todo will by default be assigned to the current user. Also note that assigned_to is returned as the user's name in the Show action. However, to assign the todo to another user, the user's email address must be used. If the user name is sent back, it will be ignored. This will be deprecated in future releases most likely to be replaced by assigned_to and assigned_to_id.
Request
<todo>
<title>Call sales rep</title>
<description>Call the guy about that thing.</description>
<due_date>2010-09-03 00:00:00 -0400</due_date>
<flagged>false</flagged>
<complete>false</complete>
<assigned_to>eric@yourcompany.com</assigned_to>
</todo>
Response
Status: 201
Location: https://{#accountname}.batchbook.com/service/todos/{#new_todo_id}.xml
Update
PUT /service/todos/#{id}.xml
Updates an existing Todo. Note: assigned_to is optional. If it isn't sent, the todo will by default be assigned to the current user. Also note that assigned_to is returned as the user's name in the Show action. However, to assign the todo to another user, the user's email address must be used. If the user name is sent back, it will be ignored. This will be deprecated in future releases most likely to be replaced by assigned_to and assigned_to_id.
Request
<todo>
<title>Call sales rep</title>
<description>Call the guy about that thing.</description>
<due_date>2010-09-03 00:00:00 -0400</due_date>
<flagged>false</flagged>
<complete>false</complete>
<assigned_to>eric@yourcompany.com</assigned_to>
</todo>
Response
Status: 200
Destroy
DELETE /service/todos/#{id}.xml
Destroys the todo at the referenced url.
Response
Status: 200
