Skip to main content
PATCH
Update a contact

Authorizations

Authorization
string
header
required

Bearer authentication using your BookingShake API key. Retrieve your API key from Settings > Integrations in your BookingShake dashboard.

Path Parameters

id
string
required

Contact ID (the id field carried by the contact.* webhooks).

Body

application/json

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
string | null

First name

Maximum string length: 255
last_name
string | null

Last name

Maximum string length: 255
email
string<email> | null

Email address (validated; pass null to clear)

Maximum string length: 255
phone
string | null

Mobile phone number

Maximum string length: 255
landline_phone
string | null

Landline phone number

Maximum string length: 255
title
string | null

Contact's title

Maximum string length: 255
position
string | null

Job position

Maximum string length: 255
avatar
string | null

Avatar image URL

Maximum string length: 255
comments
string | null

Free-text notes about the contact

Maximum string length: 255
account_id
string | null

ID of an existing account (company) to link the contact to; must be within the contact's venue or venues group. Pass null to unlink.

optin_marketing
boolean | null

Marketing communications opt-in

optin_general
boolean | null

General communications opt-in

address_line_1
string | null

Address

Maximum string length: 255
address_line_2
string | null

Address, line 2

Maximum string length: 255
postal_code
string | null

Postal code

Maximum string length: 255
city
string | null

City

Maximum string length: 255
country
string | null

Country, stored verbatim

Maximum string length: 255
{key}
any

Custom 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.

message
string
Example:

"success"

data
object

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.