Entity reference · v1
contacts
CONT-NNNNNNtable contactssoft deletePeople at an account: name, email, job title, the persona they fit and notes. Meeting transcripts match speakers and attendees to contacts by email, then by a name unique among the meeting's accounts. is_primary marks the account's primary contact, which the account's primary_contact and primary_contact_email mirror.
Endpoints
GET
/api/v1/contactsPOST
/api/v1/contactsGET
/api/v1/contacts/{id}PATCH
/api/v1/contacts/{id}DELETE
/api/v1/contacts/{id}POST
/api/v1/contacts/{id}/restoreWritable fields
* required on create. PATCH treats every field as optional.
| Field | Type | Constraints | Notes |
|---|---|---|---|
| name* | string | ||
| string | Stored lowercased. Meetings match an attendee to a contact by this address first. | ||
| job_title | string | Their role at the company, e.g. VP Engineering. | |
| account_id | uuid | The account they work at. | |
| persona_id | uuid | The persona they fit. | |
| notes | text | ||
| is_primary | boolean | The account's primary contact. Setting it moves the role from whoever had it; it needs account_id. | |
| is_draft | boolean | ||
| metadata | json |
Listing & filtering
- Pagination:
?limit=50&offset=0· max limit 200 - Default sort:
?sort=name&order=asc - Sortable fields: name · created_at · updated_at · id_number
- Search (?q=): name, email, job_title
- Filters: ?account_id= ?persona_id= ?email= ?is_primary= ?is_draft= , repeat any filter to OR multiple values
- Trash: hidden by default; pass
?include_deleted=true
Examples
curlbash
curl 'https://productos.ca/api/v1/contacts?limit=10' \
-H "Authorization: Bearer $TOKEN"Try it out
Paste a token and hit a real endpoint. The request goes from your browser straight to /api/v1/contacts. The token is held in this page only for the request and is never stored.
Try it out
Issue tokens in Settings → API tokens. Token never leaves this page.
GET/api/v1/contacts?limit=3