This API is deprecated.

We have launched a new version of Batchbook and it has its own API which can be found here.

Please do not develop new integrations agains this API! We are leaving it this documentation in place soley as a reference for developers supporting existing integrations with “Batchbook Classic.”

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

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