Skip to main content
These events cover the full lifecycle of a conversation — from opening to closing, including assignments and reopening. Use them to keep your CRM in sync, trigger SLAs, or generate support reports.

Event list


conversation.created

When it fires

A new conversation begins — either because a contact sent the first message, or because an agent or automation created the conversation manually via API.

Payload

Key fields

Usage example

Use conversation.created to register new conversations in your CRM or trigger a notification to the sales team when a new lead comes in.

conversation.assigned

When it fires

The conversation is assigned (or reassigned) to a human agent or an AI agent. This includes automatic assignments via routing rules and manual assignments from the inbox.

Payload

Key fields

Usage example

Use this to calculate average first response time (FRT) — record the assigned_at and compare it with the timestamp of the agent’s first message.

conversation.closed

When it fires

The conversation is marked as closed — either manually by an agent, by an inactivity timeout automation, or via API.

Payload

Key fields

Usage example

Use conversation.closed with duration_seconds and resolution to feed service quality dashboards and calculate CSAT automatically.

conversation.reopened

When it fires

A closed conversation returns to open status. This happens when a contact sends a new message in a closed conversation or when an agent reopens it manually.

Payload

Key fields

Usage example

Monitor conversation.reopened with reopened_reason: "new_message" to identify patterns of returning contacts — it may indicate an unsatisfactory resolution the first time around.
Always use the event_id to ensure idempotency. In the event of a retry, the same event may be delivered more than once with the same event_id.