Documentation Index
Fetch the complete documentation index at: https://api-docs-dev.iclosed.io/llms.txt
Use this file to discover all available pages before exploring further.
Overview
The Contact Updated webhook is triggered whenever an existing contact’s information is modified in your iClosed.io account. This event provides the complete updated contact object, including all current data and any changes that were made.Event Details
- Event Type:
contactUpdated - Trigger: When a contact’s information is updated through any channel (form submission, manual edit, API, etc.)
- Payload: Complete updated contact object with all current data
Webhook Payload
The webhook payload contains the full updated contact object with the following structure:Key Differences from Contact Created
Updated Timestamps
updatedAt: Shows when the contact was last modifiedcreatedAt: Remains the original creation timestampjoinedTime: Original join timestamp (unchanged)
Updated Attributes Tracking
updatedAttributes: Array of fields that were modified in this update- This field helps identify what specific information changed
Hook Type
hookType: Set to “Contact updated” to distinguish from creation events
Key Fields Explained
Basic Contact Information
id: Unique contact identifier (unchanged)firstName,lastName: Contact’s name (may be updated)email: Primary email address (may be updated)phoneNumber: Primary phone number (may be updated)secondary_email,secondary_phoneNumber: Additional contact methodsstatus: Contact qualification status (may change)
Event Information
event: Details about the event the contact was originally created from- This typically doesn’t change unless the contact is moved to a different event
Questions and Answers
questionsAndAnswers: All current form responses from the contact- May include new or updated responses
- Contains both numbered format and direct key-value pairs
Tracking Data
tracking: UTM parameters and tracking information- May be updated if new tracking data is available
first_utm_*fields preserve original attribution
Call Information
latestCall: Details about the most recent scheduled call- May be updated if new calls are scheduled
- Includes call host information
Disqualification Logic
disqualifyingGroup: Any current disqualifying conditions- May change based on updated responses or status changes
Use Cases
This webhook is useful for:- CRM Synchronization: Keep your CRM updated with the latest contact information
- Data Validation: Verify that contact updates are properly processed
- Audit Trails: Track changes to contact information over time
- Workflow Triggers: Initiate follow-up actions when specific fields are updated
- Analytics: Monitor contact engagement and information changes
- Lead Scoring Updates: Re-evaluate contact quality based on new information
Response Requirements
Your webhook endpoint should:- Return a 2xx status code to acknowledge receipt
- Respond within 5 seconds to avoid retries
- Handle duplicate events (idempotency)
- Log the contact ID and updated attributes for debugging
- Consider the
updatedAttributesfield to determine what changed
Best Practices
- Check
updatedAttributes: Use this field to identify what specifically changed - Compare with Previous State: Store previous contact state to track changes
- Handle Partial Updates: Not all fields may be present in every update
- Validate Changes: Ensure the updated data meets your business rules
- Update Timestamps: Use
updatedAtto determine if you have the latest data