conversation.handover
The conversation was handed to the team.
Fires when the assistant or the platform hands a conversation to a person: the customer asked for one, the assistant could not answer, the customer is upset, a flow reached a handover step, a lead qualified for handoff, or loop protection stepped in. reason says which, as a stable code; reasonText is the assistant's own words when it gave any.
Does not fire again while the same handover is still open — a customer who asks twice raises it once. Not when a team member simply replies or is assigned; that is conversation.assigned.
Header Parameters
t=<unix seconds>,v1=<hex HMAC-SHA256 of "{t}.{body}">, with a second v1 while a rotated secret still signs. Verify it before trusting the body.
The event's type, so a receiver can route before parsing.
This delivery's id. A resend of the same event keeps the envelope id and gets a new delivery id.
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Every event arrives in this envelope. Fields are only ever added, and a field that can be empty is sent as null rather than left out. Deduplicate on id: a delivery can arrive more than once.
Response Body
Example Requests
/conversation.handover