Events reference
Available events
| Event | Trigger |
|---|---|
FEEDBACK_CREATED | A feedback is created |
FEEDBACK_UPDATED | A feedback is updated |
DISCOVERY_CREATED | A discovery is created |
DISCOVERY_UPDATED | A discovery is updated |
COMPONENT_CREATED | A component is created |
COMPONENT_UPDATED | A component is updated |
MESSAGE_CREATED | A message is created |
MESSAGE_UPDATED | A message is updated |
Payload envelope
All webhook payloads share the same envelope structure:
{
"id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"event": "FEEDBACK_CREATED",
"data": { ... },
"changes": { ... }
}
| Field | Type | Description |
|---|---|---|
id | string | Unique identifier for this delivery |
event | string | The event type (e.g. FEEDBACK_CREATED) |
data | object | The resource data at the time of the event |
changes | object | Only present on *_UPDATED events. Contains the fields that changed, with their new values |
Common data fields
All resource payloads in data include these base fields:
| Field | Type | Description |
|---|---|---|
id | string | Resource ID |
clientId | string | External-facing resource ID (short ID) |
createdAt | string | ISO 8601 creation timestamp |
updatedAt | string | ISO 8601 last update timestamp |
FEEDBACK_CREATED / FEEDBACK_UPDATED
Triggered when a feedback is created or updated.
| Field | Type | Required | Description |
|---|---|---|---|
id | string | yes | Resource ID |
clientId | string | yes | External ID |
createdAt | string | yes | ISO 8601 timestamp |
updatedAt | string | yes | ISO 8601 timestamp |
starred | boolean | yes | Whether the feedback is starred |
score | number | yes | Feedback score |
messageId | string | yes | ID of the associated message |
discoveryId | string | yes | ID of the associated discovery |
requesterId | string | no | ID of the requester |
submitterId | string | no | ID of the submitter |
{
"id": "d7e8f9a0-b1c2-3d4e-5f6a-7b8c9d0e1f2a",
"event": "FEEDBACK_CREATED",
"data": {
"id": "clx1a2b3c4d5e6f7g8h9i0j1",
"clientId": "fb_2a3b4c5d6e7f8g9h",
"createdAt": "2025-01-15T10:30:00.000Z",
"updatedAt": "2025-01-15T10:30:00.000Z",
"starred": false,
"score": 3,
"messageId": "clx9k8j7h6g5f4e3d2c1b0a9",
"discoveryId": "clx0a1b2c3d4e5f6g7h8i9j0",
"requesterId": "clxr3q2w1e0r9t8y7u6i5o4p",
"submitterId": "clxs4a3s2d1f0g9h8j7k6l5m"
}
}
DISCOVERY_CREATED / DISCOVERY_UPDATED
Triggered when a discovery is created or updated.
| Field | Type | Required | Description |
|---|---|---|---|
id | string | yes | Resource ID |
clientId | string | yes | External ID |
createdAt | string | yes | ISO 8601 timestamp |
updatedAt | string | yes | ISO 8601 timestamp |
title | string | yes | Discovery title |
description | string | no | Discovery description |
discoveryStateId | string | no | ID of the discovery state |
parentId | string | no | ID of the parent discovery |
{
"id": "e8f9a0b1-c2d3-4e5f-6a7b-8c9d0e1f2a3b",
"event": "DISCOVERY_CREATED",
"data": {
"id": "clx2b3c4d5e6f7g8h9i0j1k2",
"clientId": "disc_3b4c5d6e7f8g9h0i",
"createdAt": "2025-01-15T11:00:00.000Z",
"updatedAt": "2025-01-15T11:00:00.000Z",
"title": "Users want dark mode support",
"description": "Multiple users have requested a dark mode option in the application settings.",
"discoveryStateId": "clxstate1a2b3c4d5e6f7g8h",
"parentId": null
}
}
COMPONENT_CREATED / COMPONENT_UPDATED
Triggered when a component is created or updated.
| Field | Type | Required | Description |
|---|---|---|---|
id | string | yes | Resource ID |
clientId | string | yes | External ID |
createdAt | string | yes | ISO 8601 timestamp |
updatedAt | string | yes | ISO 8601 timestamp |
title | string | yes | Component title |
description | string | no | Component description |
parentId | string | no | ID of the parent component |
{
"id": "f9a0b1c2-d3e4-5f6a-7b8c-9d0e1f2a3b4c",
"event": "COMPONENT_CREATED",
"data": {
"id": "clx3c4d5e6f7g8h9i0j1k2l3",
"clientId": "comp_4c5d6e7f8g9h0i1j",
"createdAt": "2025-01-15T12:00:00.000Z",
"updatedAt": "2025-01-15T12:00:00.000Z",
"title": "Dashboard",
"description": "Main analytics dashboard module",
"parentId": null
}
}
MESSAGE_CREATED / MESSAGE_UPDATED
Triggered when a message is created or updated.
| Field | Type | Required | Description |
|---|---|---|---|
id | string | yes | Resource ID |
clientId | string | yes | External ID |
createdAt | string | yes | ISO 8601 timestamp |
updatedAt | string | yes | ISO 8601 timestamp |
title | string | yes | Message title |
content | string | yes | Message content |
channel | string | yes | Source channel (see values below) |
read | boolean | yes | Whether the message has been read |
updated | boolean | yes | Whether the message has been updated |
archived | boolean | yes | Whether the message is archived |
bin | boolean | yes | Whether the message is in the bin |
requesterId | string | yes | ID of the requester |
submitterId | string | yes | ID of the submitter |
receivedAt | string | no | ISO 8601 timestamp of when the message was received |
integrationUrl | string | no | URL of the message in the source integration |
integrationId | string | no | ID of the message in the source integration |
assigneeId | string | no | ID of the assigned user |
Channel values
CHROME_WIDGET, FORM, FRESHDESK, HUBSPOT, INTERCOM, MAIL, NOTE, SALESFORCE, SHEET, SLACK, ZENDESK, MS_TEAMS, PUBLIC_API, HFC, AIRCALL, CLAAP, GONG, MODJO, PRAIZ
{
"id": "a0b1c2d3-e4f5-6a7b-8c9d-0e1f2a3b4c5d",
"event": "MESSAGE_CREATED",
"data": {
"id": "clx4d5e6f7g8h9i0j1k2l3m4",
"clientId": "msg_5d6e7f8g9h0i1j2k",
"createdAt": "2025-01-15T14:30:00.000Z",
"updatedAt": "2025-01-15T14:30:00.000Z",
"title": "Feature request: export to PDF",
"content": "It would be great if we could export reports to PDF directly from the dashboard.",
"channel": "INTERCOM",
"read": false,
"updated": false,
"archived": false,
"bin": false,
"requesterId": "clxr3q2w1e0r9t8y7u6i5o4p",
"submitterId": "clxs4a3s2d1f0g9h8j7k6l5m",
"receivedAt": "2025-01-15T14:28:00.000Z",
"integrationUrl": "https://app.intercom.com/conversations/12345",
"integrationId": "intercom_conv_12345",
"assigneeId": null
}
}
Changes object (update events only)
For all *_UPDATED events, the payload includes a changes object containing the fields that were modified. Each key is the field name and the value is the new value after the update.
{
"id": "b1c2d3e4-f5a6-7b8c-9d0e-1f2a3b4c5d6e",
"event": "DISCOVERY_UPDATED",
"data": {
"id": "clx2b3c4d5e6f7g8h9i0j1k2",
"clientId": "disc_3b4c5d6e7f8g9h0i",
"createdAt": "2025-01-15T11:00:00.000Z",
"updatedAt": "2025-01-16T09:15:00.000Z",
"title": "Users want dark mode support (validated)",
"description": "Multiple users have requested a dark mode option in the application settings.",
"discoveryStateId": "clxstate2b3c4d5e6f7g8h9i",
"parentId": null
},
"changes": {
"title": "Users want dark mode support (validated)",
"discoveryStateId": "clxstate2b3c4d5e6f7g8h9i"
}
}