Docs/Stream/Guides/Webhooks & Events

Stream Lifecycle Webhooks & Signatures

Receive real-time HTTP POST webhooks when live broadcasts start, end, or encounter health anomalies. Validate payloads using HMAC-SHA256 signatures.

Supported Stream Events

stream.startedBroadcast Live

Triggered the moment a broadcaster successfully completes the RTMP/SRT handshake and begins publishing media tracks.

{
  "event": "stream.started",
  "stream_id": "strm_98af21d09bc34e",
  "tenant_id": "tnt_8812c",
  "timestamp": "2026-08-18T19:40:00Z",
  "protocol": "RTMP",
  "resolution": "1920x1080",
  "bitrate_kbps": 4500
}
stream.endedBroadcast Ended

Triggered when the broadcaster disconnects. Contains full broadcast telemetry including peak concurrent viewers and DVR storage recording location.

{
  "event": "stream.ended",
  "stream_id": "strm_98af21d09bc34e",
  "tenant_id": "tnt_8812c",
  "duration_seconds": 3640,
  "peak_viewers": 284,
  "dvr_recording_url": "s3://vyntech-recordings/tnt_8812c/strm_98af21d09bc34e/output.mp4"
}
room.recording.readyMeeting Recording

Triggered when a multi-party meeting or call composite recording has finished processing and is ready for download or cloud playback.

{
  "event": "room.recording.ready",
  "room_id": "room_01J8F9X4Q2",
  "recording_id": "rec_01J8FZ81M9",
  "duration_seconds": 1820,
  "download_url": "https://storage.googleapis.com/vyntech-recordings/room_01J8F9X4Q2.mp4"
}
call.incomingIncoming Call

Triggered when an inbound voice or video call is routed to a registered virtual number in your organization.

{
  "event": "call.incoming",
  "call_id": "call_01J8K6T9Q0",
  "caller_number": "+15551009999",
  "callee_number": "+15551002000",
  "room_id": "room_call_01J8K6T9Q0"
}

Verifying Webhook Signatures (X-Vynstream-Signature)

When a webhook signing secret is configured (WEBHOOK_SIGNING_SECRET), every outbound payload contains an X-Vynstream-Signature HTTP header holding an HMAC-SHA256 signature:


Webhook HMAC Verification

Validate incoming webhook request integrity and ensure the payload originated from Vyntech Stream servers.

Request
HMACX-Vynstream-Signature
Response
← OBS & Encoder SetupChat Moderation Policies →

We use cookies and similar technologies to measure traffic and improve the site. You can choose which categories to allow. Manage Preferences.