Questions? Call 408-596-9475
ContactHero API
The ContactHero.com API is implemented using Representational state transfer (REST). The data format is XML. The API allows you to integrate ContactHeroTM with your existing systems, and populate business systems with contact information from ContactHero and vice versa. API access is enabled by default for all accounts.
There are currently no limits to API requests per user. However, we reserve the right to throttle or disable API usage for any users who utilize too many resources at our sole discretion.
Authentication
You need to have a valid account to use the API. When using the API you have access to all the same information as when logged into ContactHero for the user you are authenticated as. Authentication is through HTTP Basic Authentication. Pass your API token as the user name, and password "API". Your API token is located near the bottom left of your "My Account" page. Because the security of your information is important, the API requires SSL using https.
Example Method
GET https://<your api key>:API@www.contacthero.com/contacts/16.xml
<?xml version="1.0" encoding="UTF-8"?>
<contact>
<anniversary type="date" nil="true"></anniversary>
<assistant></assistant>
<assistants-phone></assistants-phone>
<birthday type="date">2008-02-12</birthday>
<business-city>Washington</business-city>
<business-country>United States</business-country>
<business-fax>202-456-2461</business-fax>
<business-phone>202-456-1414</business-phone>
<business-phone-2></business-phone-2>
<business-postal-code>20500</business-postal-code>
<business-state>DC</business-state>
<business-street>1600 Pennsylvania Avenue NW</business-street>
<business-street-2></business-street-2>
<children></children>
<company>US Government</company>
<created-at type="datetime">2008-05-27T23:31:18-07:00</created-at>
<department>Executive Branch</department>
<email-address>Abraham.Lincoln@example.com</email-address>
<email-address-2></email-address-2>
<email-address-3></email-address-3>
<first-name>Abraham</first-name>
<gender></gender>
<home-city>Springfield</home-city>
<home-country>United States</home-country>
<home-fax>(217) 492-4673 </home-fax>
<home-phone>(217) 492-4241 </home-phone>
<home-phone-2></home-phone-2>
<home-postal-code>62701-1905</home-postal-code>
<home-state>IL</home-state>
<home-street>413 South Eighth Street </home-street>
<home-street-2></home-street-2>
<id type="integer">16</id>
<is-private type="boolean">false</is-private>
<job-title>President</job-title>
<last-action-at type="datetime" nil="true"></last-action-at>
<last-name>Lincoln</last-name>
<middle-name></middle-name>
<mobile-phone>555-123-1861</mobile-phone>
<mobile-phone-2></mobile-phone-2>
<other-city></other-city>
<other-country></other-country>
<other-fax nil="true"></other-fax>
<other-phone></other-phone>
<other-postal-code></other-postal-code>
<other-state></other-state>
<other-street></other-street>
<other-street-2></other-street-2>
<preferred-email-index type="integer" nil="true"></preferred-email-index>
<preferred-phone-index type="integer" nil="true"></preferred-phone-index>
<spouse></spouse>
<suffix></suffix>
<title></title>
<updated-at type="datetime">2008-06-15T23:53:42-07:00</updated-at>
<url>www.whitehouse.gov</url>
<url-2></url-2>
<url-3></url-3>
<user-1></user-1>
<user-2></user-2>
<user-3></user-3>
<user-4></user-4>
<user-id type="integer">1</user-id>
<notes type="array">
<note>
<body>Called about the letter we sent</body>
<contact-id type="integer">16</contact-id>
<created-at type="datetime">2008-09-21T20:43:44-07:00</created-at>
<id type="integer">5</id>
<updated-at type="datetime">2008-09-21T20:43:44-07:00</updated-at>
<user-id type="integer">1</user-id>
</note>
<note>
<body>Talked about plans to return home</body>
<contact-id type="integer">16</contact-id>
<created-at type="datetime">2008-09-21T19:13:00-07:00</created-at>
<id type="integer">4</id>
<updated-at type="datetime">2008-09-21T19:13:00-07:00</updated-at>
<user-id type="integer">1</user-id>
</note>
</notes>
</contact>
Methods
Where applicable, substitute the ID of the record in place of "1" in the URLs below.
Contacts
- GET /contacts.xml
- GET /contacts/1.xml
- GET /contacts/1/history.xml
- POST /contacts.xml
- PUT /contacts/1.xml
- DELETE /contacts/1.xml
- GET /contacts/search.xml
Notes
- GET /contacts/[contact id]/notes.xml
- GET /contacts/[contact id]/notes/1.xml
- POST /contacts/[contact id]/notes.xml
- PUT /contacts/[contact id]/notes/1.xml
- DELETE /contacts/[contact id]/notes/1.xml
Calls
- GET /calls.xml
- GET /calls/1.xml
- POST /calls.xml
- POST /calls/1/complete.xml
- PUT /calls/1.xml
- DELETE /calls/1.xml
Messages
- GET /messages.xml
- GET /messages/1.xml
- POST /messages.xml
- PUT /messages/1.xml
- DELETE /messages/1.xml
Photos
- GET /photos.xml
- GET /photos/1.xml
- POST /photos.xml
- PUT /photos/1.xml
- DELETE /photos/1.xml