API Documentation

Overview
Time Tracking

Extended REST API
Clients
Client Contacts
Projects
Tasks
People
Expenses
Expense Tracking
User Assignment
Task Assignment
Reports
Invoices
Invoice Messages
Invoice Payments
Invoice Categories


Questions? Contact support

Client Contacts

Get all contacts for an account

GET /contacts

HTTP Response: 200 Success
<contacts type="array">
  <contact>
    <id type="integer">9</id>
    <client-id type="integer">11072</client-id>
    <email>Jane@Doe.com</email>
    <first-name>Jane</first-name>
    <last-name>Doe</last-name>
    <phone-office>555.555.5555</phone-office>
    <phone-mobile>555.555.7777</phone-mobile>
    <fax>555.555.9999</fax>
  </contact>
</contacts>

Get all contacts for a client

GET /clients/#{client_id}/contacts

HTTP Response: 200 Success
<contacts type="array">
  <contact>
    <id type="integer">9</id>
    <client-id type="integer">11072</client-id>
    <email>Jane@Doe.com</email>
    <first-name>Jane</first-name>
    <last-name>Doe</last-name>
    <phone-office>555.555.5555</phone-office>
    <phone-mobile>555.555.7777</phone-mobile>
    <fax>555.555.9999</fax>
  </contact>
</contacts>

Get a client contact

GET /contacts/#{contact_id}

HTTP Response: 200 Success
<contact>
  <id type="integer">9</id>
  <client-id type="integer">11072</client-id>
  <email>Jane@Doe.com</email>
  <first-name>Jane</first-name>
  <last-name>Doe</last-name>
  <phone-office>555.555.5555</phone-office>
  <phone-mobile>555.555.7777</phone-mobile>
  <fax>555.555.9999</fax>
</contact>

Create a new client contact

POST /contacts

HTTP Response: 201 Created
Location: /contacts/#{new_contact_id}

You need to post the following:

<contact>
  <client-id type="integer">9</client-id>
  <email>Jane@Doe.com</email>
  <first-name>Jane</first-name>
  <last-name>Doe</last-name>
  <phone-office>555.555.5555</phone-office>
  <phone-mobile>555.555.7777</phone-mobile>
  <fax>555.555.9999</fax>
</contact>
Note: Only client-id, first-name and last-name are required.
Update client contact

PUT /contacts/#{contact_id}

HTTP Response: 200 OK
Location: /contacts/#{contact_id}

You can update selected attributes for a client contact.

<contact>
  <client-id type="integer">9</client-id>
  <email>Jane@JaneDoe.com</email>
  <first-name>Jane</first-name>
  <last-name>Doe</last-name>
  <phone-office>555.555.1111</phone-office>
  <phone-mobile>555.555.2222</phone-mobile>
  <fax>555.555.3333</fax>
</contact>

Delete a client

DELETE /contacts/#{contact_id}

HTTP Response: 200 OK