Everything in this section can be done from your own code. The website, the app and the API are the same routes — there is nothing the screens can do that the API cannot.
Read Authentication and Making requests first.
The lists
| Records | Endpoint |
|---|---|
| Leads | /api/crm/leads |
| Customers | /api/crm/customers |
| Companies | /api/crm/companies |
| Deals | /api/crm/deals |
| Tasks | /api/crm/tasks |
| Visits | /api/crm/visits |
| Contacts | /api/crm/contacts |
| Activity | /api/crm/activities |
What each one supports
They all behave the same way, because they are all built from one description. For any of them:
GETthe list, with the same filters, search and sorting the screen uses.GET /kanbanfor the board, grouped by a field you name.GET /pivotfor the counting table.POSTto create,PATCHto change,DELETEto remove.GET /:id/timelinefor everything logged against one record.POST /importandGET /export.- Bulk actions, for up to five hundred records at a time.
The two that are not lists
/api/crm/search— one search across every CRM record./api/crm/summary— the figures behind the dashboard.
Things worth knowing before you write anything
- Your own fields are there too. Anything you added appears under
customand can be filtered on like the rest. - Permissions apply. A key belongs to a person, and reads what that person is allowed to read. There is no back door around record visibility.
- Duplicate checking still runs. Creating a lead over the API is checked exactly as one typed on the screen is.
- Everything is recorded. API changes appear in the history with the key that made them.
Where to go next
Something missing or wrong here? Tell us. A question that needed asking usually means a page that needed writing.