Event Type
lead.completed
Description
This event is fired when all required checklist items for a lead have been completed or marked as needs review. Use this event to trigger downstream processing, notify your team, or sync the completed application to your systems. This event fires only once per lead.Payload Structure
string
required
The event type:
lead.completedobject
required
The completed lead data
Show data
Show data
string
required
Unique identifier for the lead
string | null
External identifier for the lead (if set)
string | null
Lead’s first name
string | null
Lead’s middle name
string | null
Lead’s last name
string | null
Lead’s phone number (E.164 format, e.g.,
+15551234567)string | null
Lead’s email address
string | null
Lead’s business name
string | null
Lead’s website URL
string | null
How the lead was created:
inbound-email, inbound-sms, inbound-whatsapp, admin-email, portal, api, http, salesforcestring[]
Tags attached to the lead at completion, or an empty array when none
array
required
All checklist items for the lead
Show checklistItems
Show checklistItems
string
ID of the checklist item definition
string
Code identifier for the checklist item
string | number | object | null
Current value of the checklist item. Type depends on the field type:
string for text fields, number for numeric fields, or an address object with the following structure: { "street": "...", "city": "...", "state": "...", "postalCode": "...", "country": "..." }.array | null
string
Status:
TODO, COMPLETED, INVALID, SKIPPED, NEEDS_REVIEWstring
ISO 8601 timestamp of the last update
array
Array of documents associated with the checklist item (only for file-type fields)
Show documents
Show documents
string
Unique identifier for the document
string | null
External identifier for the document
string
Original filename
string
MIME type of the document
number
File size in bytes
string
S3 bucket name (only included if external S3 integration is configured)
string
S3 object key (only included if external S3 integration is configured)
object | null
Document validation results (if validation rules are configured)
Show validationResult
Show validationResult
string
ID of the validated document
boolean
Whether the document passed all validation rules
string | null
Additional notes from validation
array
string
ID of the associated checklist item
boolean | null
Whether the document passed all validation rules
{
"event": "lead.completed",
"data": {
"leadId": "50713355-df73-4077-9d84-dcda6da5729c",
"externalId": "ext-lead-001",
"firstName": "John",
"middleName": null,
"lastName": "Doe",
"phoneNumber": "+15551234567",
"email": "john@example.com",
"businessName": "Acme Inc",
"website": "https://acme.com",
"source": "inbound-email",
"tags": ["VIP", "priority-1"],
"checklistItems": [
{
"checklistItemId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"checklistItemCode": "company_name",
"value": "Acme Inc",
"alternateValues": [],
"status": "COMPLETED",
"updatedAt": "2025-10-31T18:30:00.000Z"
},
{
"checklistItemId": "b2c3d4e5-f6a7-8901-bcde-f12345678901",
"checklistItemCode": "bank_statement",
"value": "bank-statement-oct.pdf",
"alternateValues": [],
"status": "COMPLETED",
"updatedAt": "2025-10-31T19:00:01.675Z",
"documents": [
{
"documentId": "8349efe7-3c68-49c3-9411-f9affda0d03a",
"externalId": null,
"filename": "bank-statement-oct.pdf",
"mimeType": "application/pdf",
"size": 153143,
"validationResult": {
"documentId": "8349efe7-3c68-49c3-9411-f9affda0d03a",
"overallValid": true,
"otherNotes": null,
"validationResults": [
{
"isValid": true,
"ruleName": "First name should match",
"ruleIndex": 0,
"isValidReason": "Lead first name 'John' matches document name 'JOHN'."
},
{
"isValid": true,
"ruleName": "Statement must be dated within the last 3 months",
"ruleIndex": 1,
"isValidReason": "October 2025 is within the required period."
}
],
"leadChecklistItemId": "f830cc29-16ad-4c64-9fa8-f90f318f8dce"
},
"overallValid": true
}
]
}
]
}
}