Skip to content
API PlatformDevelopers

Webhook events · contacts

contact.custom_field.updated/1

Contact field changed. One custom field value of a contact changed.

Payload

We POST this JSON to your endpoint. Answer any 2xx within 30 seconds. The same id arrives again on a retry — skip ones you have handled.

Payload fields
FieldTypeWhat it is
idrequiredstringEvent id. The same on every retry: use it to skip duplicates.pattern ^evt_[0-9A-HJKMNP-TV-Z]{26}$
typerequiredstringEvent type.always contact.custom_field.updated
versionrequiredstringPayload version.always 1
api_versionrequiredstringThe endpoint's API version.
occurred_atrequiredstringWhen it happened.date-time
company_idrequiredintegerYour workspace id.
datarequiredobject
contactrequiredobject
idrequiredintegerContact id.
fieldrequiredobject
idrequiredintegerField id.
labelstring or nullLabel.
namerequiredstringKey.
typerequiredstringType.
valueanyNew value.
changedrequiredbooleanFalse when the same value was written again.

Example

{
  "id": "evt_01J8Z7BZQ4F6G8J2K5N7Q9S1VC",
  "type": "contact.custom_field.updated",
  "version": "1",
  "api_version": "2026-10-01",
  "occurred_at": "2026-09-24T09:20:00Z",
  "company_id": 1001,
  "data": {
    "contact": {
      "id": 48213
    },
    "field": {
      "id": 12,
      "label": "Orders",
      "name": "order_count",
      "type": "number",
      "value": 5
    },
    "changed": true
  }
}

Headers

  • Webhook-Signature: t=…,v1=… — how to check it
  • Webhook-Id (also Webhook-Event-Id): the event id, the same on every retry — skip ones you have handled
  • Webhook-Delivery-Id: this delivery attempt, new on every try