Update a contact
Partially update a contact (person) by its ID. Only the fields provided in the body are modified; omitted fields are left unchanged.
The body follows the same contract as the response (English snake_case names). String fields are trimmed and limited to 255 characters; optin_marketing and optin_general are booleans; email must be a valid email address; account_id must reference an existing account within the contact’s venue or venues group. Pass null on any field to clear it. The country field is stored verbatim. Custom fields (custom_<uuid>) configured for your venue can be set too (string or array of strings); an unknown custom field key is rejected with 400. id and created_at are read-only and ignored.
Updating a contact automatically emits the contact.updated webhook when at least one exposed field changes.
Authorizations
Bearer authentication using your BookingShake API key. Retrieve your API key from Settings > Integrations in your BookingShake dashboard.
Path Parameters
Contact ID (the id field carried by the contact.* webhooks).
Body
Fields that can be updated on a contact. All fields are optional (partial update): only the fields present in the body are modified. Same conventions as the response (English snake_case names). String fields are trimmed and limited to 255 characters; email must be a valid email address; optin_marketing/optin_general are booleans; account_id must reference an existing account within the contact's venue or venues group. Pass null on any field to clear it. The country field is stored verbatim. Custom fields (custom_) configured for your venue can be set too (string or array of strings); an unknown custom field key is rejected with 400. id and created_at are read-only and ignored. At least one field must be provided.
First name
255Last name
255Email address (validated; pass null to clear)
255Mobile phone number
255Landline phone number
255Contact's title
255Job position
255Avatar image URL
255Free-text notes about the contact
255ID of an existing account (company) to link the contact to; must be within the contact's venue or venues group. Pass null to unlink.
Marketing communications opt-in
General communications opt-in
Address
255Address, line 2
255Postal code
255City
255Country, stored verbatim
255Custom fields (custom_) configured for your venue: a string or an array of strings. An unknown custom field key is rejected with 400.
Response
Contact updated successfully. Returns the full contact in its post-update state.
"success"
A contact (person) attached to your venue, optionally linked to an account. Every field is present with an explicit null when unset. The country field is verbatim as entered. account_id is the raw ID of the linked account (or null). Custom fields (custom_<uuid>) configured for your venue are included, also with explicit null when unset.
