Contacts

get

Get all contacts

Rate limit: 60 requests per minute

Authorizations
AuthorizationstringRequired

Authorization: Bearer

Responses
chevron-right
200Success
application/json
get
/contacts
post

Create a new contact

Rate limit: 60 requests per minute

Authorizations
AuthorizationstringRequired

Authorization: Bearer

Body
account_external_idstringOptional

The external ID of the account that this contact belongs to. Cannot be used together with account_id.

account_idstringOptional

The account that this contact belongs to.

avatar_urlstringOptional

The avatar URL of the contact. Must be a square .png, .jpg or .jpeg.

emailstringOptional

The email of the contact.

namestringRequired

The name of the contact.

phone_numbersstring[]Optional

The phone numbers of the contact. Must contain only digits 0-9 and be 15 digits or less.

portal_rolestring · enumOptional

The portal role to assign to the contact. If not provided uses the default portal role from the portal settings.

  • no_access PortalRoleNoAccess

  • member PortalRoleMember

  • admin PortalRoleAdmin

Possible values:
portal_role_idstringOptional

The ID of the custom portal role to assign to the contact. Takes precedence over portal_role if provided.

primary_phone_numberstringOptional

The primary phone number. Must be in the list of phone_numbers. If there are any phone_numbers and this is not specified, the first phone number will be primary.

Responses
chevron-right
200Success
application/json
post
/contacts
get

Get a contact by its ID

Rate limit: 60 requests per minute

Authorizations
AuthorizationstringRequired

Authorization: Bearer

Path parameters
idstringRequired

The ID of the contact.

Query parameters
cursorstringOptional

The cursor to use for pagination.

limitinteger · int64Required

The number of accounts to fetch. Defaults to 100. Must be greater than 0 and less than 1000.

Responses
chevron-right
200Success
application/json
get
/contacts/{id}
patch

Update an existing contact

Rate limit: 60 requests per minute

Authorizations
AuthorizationstringRequired

Authorization: Bearer

Path parameters
idstringRequired

The ID of the contact to update.

Body
account_external_idstringOptional

The external ID of the account to move the contact to. Cannot be used together with account_id.

account_idstringOptional

The account to move the contact to.

avatar_urlstringOptional

The avatar URL of the contact. Must be a square .png, .jpg or .jpeg.

emailstringOptional

The email of the contact.

namestringOptional

in: body

The name of the contact.

portal_rolestring · enumOptional

The portal role to assign to the contact. Can be one of no_access, member, or admin, or a custom role slug.

  • no_access PortalRoleNoAccess

  • member PortalRoleMember

  • admin PortalRoleAdmin

Possible values:
portal_role_idstringOptional

The ID of the custom portal role to assign to the contact. Takes precedence over portal_role if provided.

Responses
chevron-right
200Success
application/json
patch
/contacts/{id}
delete

Delete an existing contact

Rate limit: 10 requests per minute

Authorizations
AuthorizationstringRequired

Authorization: Bearer

Path parameters
idstringRequired

The ID of the contact to delete.

Responses
chevron-right
200Success
application/json
delete
/contacts/{id}
200Success

Search for contacts by a given filter

post

Currently, the following fields are filterable for contacts:

  • id. Allowed operators: equals, in, not_in

  • email. Allowed operators: equals, in, not_in, string_contains

  • custom fields (pass in the slug of the custom field)

  • account_id. Allowed operators: equals, in, not_in

Rate limit: 20 requests per minute

Authorizations
AuthorizationstringRequired

Authorization: Bearer

Body
cursorstringOptional

The cursor to use for pagination.

limitinteger · int64Optional

The number of contacts to fetch. Defaults to 100. Must be greater than 0 and less than 1000.

Responses
chevron-right
200Success
application/json
post
/contacts/search
200Success

Last updated

Was this helpful?