captured_form.created and captured_form.updated
Two events for structured form data the assistant captures in a conversation. captured_form.created fires when the form first gets a submission; captured_form.updated fires if fields on that submission change later in the same conversation.
Naming note: these events use underscore, not dot, in the suffix:
captured_form.created(notcaptured-form.createdorcapturedform.created). If your old integration used a different name, update your subscription.
When they fire
captured_form.created— the assistant submits a form for the first time in a conversation (all required fields filled).captured_form.updated— a previously submitted form gets a field changed later in the same conversation (e.g., the assistant initially captured an email, then later in the call captured the phone number too).
Delivery
Same delivery model as every Insighto webhook: HTTP POST, JSON body, no HMAC, no retries. See conversation.closed for the cautionary notes.
Payload shape
{
"id": "evt_01HX...",
"object": "event",
"event": "captured_form.created",
"created_at": "2026-05-14T10:21:33Z",
"data": {
"captured_form_id": "cfm_01HX...",
"form_id": "frm_01HX...",
"form_name": "Mortgage lead intake",
"assistant_id": "asst_01HX...",
"widget_id": "wid_01HX...",
"conversation_id": "conv_01HX...",
"device_type": "phone",
"field_values": {
"full_name": "Priya Mehta",
"email": "priya@example.com",
"phone": "+15551234567",
"loan_amount": 450000,
"credit_range": "720-759",
"timeline": "next 30 days"
},
"attributes": {
"utm_campaign": "mortgage_spring_24",
"lead_score": 85
}
}
}
Data fields
| Field | What it is |
|---|---|
captured_form_id | Unique ID of this captured submission. |
form_id | Which form definition this submission belongs to. |
form_name | Human label of the form (matches the dropdown on the Forms captured page). |
assistant_id | Which assistant captured it. |
widget_id | Which widget surface. |
conversation_id | The conversation this submission came out of. Cross-reference for full transcript context. |
device_type | web, phone, whatsapp, messenger, instagram, telegram, sms. |
field_values | An object mapping each form field name to the captured value. Keys are the field names you defined on the form. |
attributes | Free-form metadata attached to the conversation. |
Typical uses
- Push every new lead into your CRM the moment the assistant qualifies them.
- Trigger a downstream email or SMS confirmation.
- Update a row in a spreadsheet for the sales team to review tomorrow morning.
Where to next
- Forms captured — the UI view of the same data.
- conversation.closed — get the full conversation when it ends.
- FAQ — webhook reliability and security notes.