Sent when a contact’s name, email, phone number, or latest activity timestamp changes.
string
Unique event ID (matches payload id) used for deduplication and signature verification.
webhook-timestamprequired
string
Unix timestamp in seconds when NMC signed this delivery attempt.
webhook-signaturerequired
string
Space-separated v1, signatures over {webhook-id}.{webhook-timestamp}.{raw_body}.
Media typeapplication/json
object
string
Allowed values: 2026-10-01
object
string
Allowed values: USD CAD
Whether NMC is currently tracking new calls, texts, forms, and forwarded emails for this business. Tracking pauses when the account’s plan isn’t running or its balance drops to $0 or below.
object
When tracking last switched between active and paused.
string format: date-time
string
Allowed values: active paused
object
Dot-separated paths of public fields on data.object that changed in this event (excluding updated_at). Empty on *.created events; an array, or an object that appears or disappears, is listed as a whole.
Array<string>
One of:
object
Any of:
object
contact_first_namerequired
contact_last_namerequired
string
Allowed values: pending succeeded failed
suggested_close_reasonrequired
Any of:
string
Allowed values: couldnt_reach_them price_too_high chose_another_company canceled too_busy other too_far_away work_we_dont_do job_too_small wrong_number existing_job job_seeker spam_or_sales_call
Any of:
Stable identifier for one of the business’s stages. Built-in keys are new, qualified, and converted; a business may also have custom stages. A stage’s key stays the same even if its display name changes.
string
/^[a-z][a-z0-9_]*$/
Any of:
object
object
string | null format: uuid
string
Allowed values: account client migration automatic api_key
string | null format: uuid
string
Allowed values: archived not_a_lead
Any of:
string
Allowed values: couldnt_reach_them price_too_high chose_another_company canceled too_busy other too_far_away work_we_dont_do job_too_small wrong_number existing_job job_seeker spam_or_sales_call
first_activity_idrequired
string | null format: date-time
note_updated_by_api_key_idrequired
string | null format: uuid
object
string
Allowed values: website google_ads google_business_profile local_services_ads other
google_ad_group_idrequired
google_asset_group_idrequired
google_campaign_idrequired
Google Ads {device} ValueTrack value from the ad click (for example, m for mobile).
string | null
google_match_typerequired
Google Ads {matchtype} ValueTrack value from the ad click (for example, e for exact match).
string | null
Google Ads {network} ValueTrack value from the ad click (for example, g for Google Search).
string | null
string | null format: uuid
Stable identifier for one of the business’s stages. Built-in keys are new, qualified, and converted; a business may also have custom stages. A stage’s key stays the same even if its display name changes.
string
/^[a-z][a-z0-9_]*$/
string
Allowed values: open archived not_a_lead
Job value in cents in the business currency. Changing the business currency later does not convert saved amounts.
integer format: int64
object
object
google_ad_group_idrequired
google_asset_group_idrequired
google_campaign_idrequired
Google Ads {device} ValueTrack value from the ad click (for example, m for mobile).
string | null
google_match_typerequired
Google Ads {matchtype} ValueTrack value from the ad click (for example, e for exact match).
string | null
Google Ads {network} ValueTrack value from the ad click (for example, g for Google Search).
string | null
Any of:
object
Any of:
string
Allowed values: human voicemail_message voicemail_no_message
forwarding_phone_e164required
recording_duration_secondsrequired
integer | null format: int32
Any of:
string
Allowed values: processing pending_storage stored none storage_failed
Array<object>
object
string
Allowed values: caller business
transcription_statusrequired
Any of:
string
Allowed values: pending succeeded failed
Any of:
Outcome of the call, matching the NMC dashboard. A call’s status can update after hangup (for example, changing from answered to a voicemail status once transcription finishes). answered: answered and recorded. answered_unrecorded: answered with call recording turned off (so voicemail can’t be distinguished from a person). didnt_connect: busy, unanswered, or failed to forward. Counts as Missed in NMC reports. voicemail_no_message: reached voicemail without leaving a message. Counts as Missed in NMC reports. voicemail_message: reached voicemail and left a message. Counts as Missed in NMC reports. unknown: call ended without a final carrier status. pending: call is still ringing or in progress.
string
Allowed values: answered answered_unrecorded didnt_connect voicemail_no_message voicemail_message unknown pending
integer | null format: int32
Any of:
object
submitted_phone_e164required
Any of:
An email forwarded by the business to its NMC forwarding address. The body contains the extracted plain-text email content, including any note added when forwarding.
object
is_first_activityrequired
string
Allowed values: call text form_submission forwarded_email
tracking_number_idrequired
string | null format: uuid
tracking_phone_e164required
tracking_source_namerequired
object
Phone number in E.164 format. Presence on a contact does not prove verified ownership.
string | null
object
string
Allowed values: USD CAD
Whether NMC is currently tracking new calls, texts, forms, and forwarded emails for this business. Tracking pauses when the account’s plan isn’t running or its balance drops to $0 or below.
object
When tracking last switched between active and paused.
string format: date-time
string
Allowed values: active paused
object
contact
object
Phone number in E.164 format. Presence on a contact does not prove verified ownership.
string | null
lead
object
Any of:
object
contact_first_namerequired
contact_last_namerequired
string
Allowed values: pending succeeded failed
suggested_close_reasonrequired
Any of:
string
Allowed values: couldnt_reach_them price_too_high chose_another_company canceled too_busy other too_far_away work_we_dont_do job_too_small wrong_number existing_job job_seeker spam_or_sales_call
Any of:
Stable identifier for one of the business’s stages. Built-in keys are new, qualified, and converted; a business may also have custom stages. A stage’s key stays the same even if its display name changes.
string
/^[a-z][a-z0-9_]*$/
Any of:
object
object
string | null format: uuid
string
Allowed values: account client migration automatic api_key
string | null format: uuid
string
Allowed values: archived not_a_lead
Any of:
string
Allowed values: couldnt_reach_them price_too_high chose_another_company canceled too_busy other too_far_away work_we_dont_do job_too_small wrong_number existing_job job_seeker spam_or_sales_call
first_activity_idrequired
string | null format: date-time
note_updated_by_api_key_idrequired
string | null format: uuid
object
string
Allowed values: website google_ads google_business_profile local_services_ads other
google_ad_group_idrequired
google_asset_group_idrequired
google_campaign_idrequired
Google Ads {device} ValueTrack value from the ad click (for example, m for mobile).
string | null
google_match_typerequired
Google Ads {matchtype} ValueTrack value from the ad click (for example, e for exact match).
string | null
Google Ads {network} ValueTrack value from the ad click (for example, g for Google Search).
string | null
string | null format: uuid
Stable identifier for one of the business’s stages. Built-in keys are new, qualified, and converted; a business may also have custom stages. A stage’s key stays the same even if its display name changes.
string
/^[a-z][a-z0-9_]*$/
string
Allowed values: open archived not_a_lead
Job value in cents in the business currency. Changing the business currency later does not convert saved amounts.
integer format: int64
string
Allowed values: lead.created lead.updated activity.created activity.updated contact.created contact.updated business.updated
Stop sending events to this webhook endpoint.
Webhook delivery received.