Skip to main content

Contacts

The Contacts API provides CRUD access to contacts — the users that belong to a client account (type = client) — plus an ancillary action for setting a contact as the client’s account owner.
New to the API? Start with Getting started (base URL, response envelope, errors, pagination) and Authentication (API keys). Those conventions apply to every endpoint below and are not repeated here.
Identifier note: contacts are addressed by their numeric id. Wherever {id} appears below it is the contact id.

The contact object

All endpoints that return a contact use this shape:

List / search contacts

Query parameters

Example request

Example response — 200 OK


Get a contact

Example request

Returns the contact (200) with message “Contact retrieved successfully.”

Create a contact

Creates a contact (client-type user) under an existing client account. A password is generated automatically. A welcome email is not sent unless you pass send_email=yes. The email must be unique across all users — a duplicate returns a 422.

Body parameters

Example request

Example response — 201 Created


Update a contact

first_name, last_name and email are required. The account owner is not changed here — use the account-owner action.

Body parameters

Example request

Example response — 200 OK


Delete a contact

Soft-deletes the contact (the account is marked deleted and its email/password are cleared), mirroring the web application’s delete behaviour. Once deleted, the contact is treated as gone: it no longer appears in listings and any subsequent request for it by id (get, update, delete, account-owner) returns 404.

Example request

Example response — 200 OK


Set as account owner

Promotes the contact to the account owner of its client. This replaces the client’s previous account owner. No request body is required.
Returns the contact (200) with account_owner now yes and message “Contact set as account owner successfully.”

Errors

See Getting started for the shared error format. Contact-specific: