conversation.started
This event is triggered when a new conversation is started, regardless of the channel.
conversation.closed
This event is triggered when a conversation is closed, a conversation can be marked as resolved or not resolved, and can be closed by a human or an AI.
conversation.handoff_to_human
This event is triggered when a conversation is handed off to a human agent. Note that a handoff event can happen for multiple reasons; for example, a human agent might decide to take over the conversation, or the AI might decide to hand off the conversation to a human agent.
conversation.contact_response
When a contact sends a message to your inbox.
conversation.ai_response
When an AI responds to a contact message,
conversation.agent_response
When a human agent responds from the Open inbox,
conversation.third_party_agent_response
When a third-party software agent responds to a previously handed-off conversation, Open will notify you. In some configurations, Open might also initiate the handoff to a third-party agent, such as Zendesk or Intercom. Even while the third-party agent handles the conversation, Open continues to monitor and send events to your webhooks.
conversation.handoff_to_third_party_failed
Triggered when a handoff to a third-party platform (e.g. Zendesk, Intercom) fails.
workflow.run.succeeded
Triggered when a workflow run completes successfully.
workflow.run.failed
Triggered when a workflow run fails.
csat.requested
Triggered when a CSAT survey is sent to a contact (via email, SMS, WhatsApp, Slack, or shown in the web widget).
csat.score_submitted
Triggered when a customer submits or updates a CSAT score for a conversation.
Phone Call Events
These events are fired for phone calls handled by AI phone agents (LiveKit). They apply to both inbound and outbound calls. When a phone call starts or ends, the correspondingconversation.started / conversation.closed events are also fired alongside the phone-specific events.
phone_call.started
Triggered when a phone call is initiated — either an inbound call is received or an outbound call is placed.
Also co-fires a conversation.started event.
phone_call.answered
Triggered when the remote party picks up the call (SIP participant joined).
phone_call.ended
Triggered when a phone call ends normally. Also co-fires a conversation.closed event.
phone_call.transferred
Triggered when the AI agent transfers a call to another destination (phone number, SIP URI, or graceful hangup).
phone_call.failed
Triggered when a phone call fails to connect. The failure_category field indicates the type of failure.
| Category | Description |
|---|---|
no_answer | Contact didn’t pick up |
rejected | Call was actively rejected |
busy | Line was busy |
trunk_error | SIP trunk failure |
failed | Generic failure (timeout, SIP error, etc.) |