Event: session_complete
Sent after the call ends and the transcript, summary, and insights are processed.Payload
Exit Reasons
| Exit Reason | Description |
|---|---|
participant_left | The user left the room, and the bot was the only remaining participant |
stop_phrase | The bot detected the configured stop phrase in the conversation and exited |
force_leave | The bot was forcefully stopped via API (POST /v1/bot/{bot_id}/stop) |
idle_timeout | The bot exited due to inactivity (no audio activity for 5 minutes) |
transcript_textis used in webhook payloads (the REST status endpoint returns the transcript astranscript).insightsis omitted if insight generation is disabled or fails.insights_erroris included only when insight processing fails.exit_reasonis included when available (always present for normal completions).
Event: bot_join_failed
Sent when a bot fails to join a Daily.co room (e.g., room not found, authentication error).Payload
Error Types
| Error Type | Description |
|---|---|
room_not_found | The Daily.co room doesn’t exist (404 error) |
auth_error | Authentication failed when joining the room |
unknown | Other errors (network issues, rate limiting, etc.) |
duration_secondsis how long the bot attempted to join before failing.- Configure webhooks by passing
webhook_callback_urlwhen creating or starting a bot.

