limited-spring-14213
09/16/2025, 5:06 PMtall-airline-16756
09/16/2025, 5:06 PMtall-airline-16756
09/16/2025, 5:07 PMcall_started, but no worries — you can use the room_started webhook instead. This one triggers when the very first participant joins a room and the room gets created, so it’s the best way to detect when a session begins.
Here’s how you can use the room_started webhook:
• Set up your webhook endpoint in the LiveKit Cloud dashboard under Settings, or if you’re self-hosting, in the webhook section of your config file.
• LiveKit will send an HTTP POST request to your specified URL with a JSON payload whenever the event happens.
• Make sure to validate the payload using a server SDK to confirm it’s authentic.
Also, if you’re working with the LiveKit Agents for Ultravox plugin, there’s a special CallStartedEvent sent via WebSocket for real-time voice AI communication. Feel free to ask if you’d like more details about that or anything else — I’m here to help!
Sources: livekit-api/tests/test_webhook.py | livekit/livekit_analytics.pb.go | livekit-protocol/src/livekit.rs | livekit-plugins/livekit-plugins-ultravox/livekit/plugins/ultravox/realtime/... | Webhooks | LiveKit Docs