Squarespace Developer Platform: APIs, Apps, and Docs
Contacts

Contact update

Code
"topic": "contact.update"

Occurs when an existing contact is updated on a Squarespace website — for example when contact fields, email, or marketing preferences change. See the Contacts API for the full resource model.

Read the Webhooks overview for details about the information sent with every Squarespace webhook notification.

When the default address changes, a contact.update is triggered. If a different address is assigned as the contact's default shipping address — for example because the previous default was deleted, or a new address was explicitly set as default — a contact.update event fires because the contact's defaultShippingAddress reference has changed. However, when the content of the already-default address changes (fields like line1, city, etc.), no contact.update is emitted — only an address.update event fires.

Marketing acceptance changes always produce a separate contact.update. When acceptsMarketing is changed alongside other contact fields, the marketing change generates its own contact.update event in addition to any other update event. When a new contact is created with acceptsMarketing set to true, an extra contact.update is also emitted — and due to the asynchronous nature of webhooks, it may arrive before the corresponding contact.create. Integrators should handle contact.update for a contact that has not yet been seen via contact.create.

Request payload example

JavascriptCode
{ // String; unique notification id "id": "5c2ba184b63ed3cb411ce2b1", // String; Squarespace website id that triggered the notification. "websiteId": "5f3c3d55ac435e1a051f77b3", // String; unique Webhook Subscriptions id "subscriptionId": "5f3c2155d947844beedda991", // String; description of the event that triggered notification. "topic": "contact.update", // ISO 8601 UTC date and time string; represents when the notification was created. "createdOn": "2024-01-28T10:44:00Z", // Object; data associated with the event "data": { // String; ISO 8601 date-time; when the contact was created "createdOn": "2024-01-28T10:44:00Z", // String; ISO 8601 date-time; when the contact was last updated "updatedOn": "2024-01-29T14:30:00Z", // Object; the full Contact resource (same shape as contact.create) "contact": { "contactId": "5f3c39ce69e11e796f19990e", "firstName": "Jane", "lastName": "Doe", "primaryEmail": { "value": "[email protected]", "createdOn": "2024-01-28T10:44:00Z", "acceptsMarketing": { "acceptsMarketing": true } }, "defaultShippingAddress": null } } }