# Meeting.rtms\_started webhook missing WebSocket URL / Stream ID

**URL:** <https://devforum.zoom.us/t/meeting-rtms-started-webhook-missing-websocket-url-stream-id/141905>\
**Category:** Authentication\
**Created:** [February 13, 2026, 9:04am UTC](https://devforum.zoom.us/t/meeting-rtms-started-webhook-missing-websocket-url-stream-id/141905 "2026-02-13T09:04:14Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![harkunal](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/harkunal/32/71136_2.png) [@harkunal](https://devforum.zoom.us/u/harkunal)\
**Post date:** [February 13, 2026, 9:04am UTC](https://devforum.zoom.us/t/meeting-rtms-started-webhook-missing-websocket-url-stream-id/141905/1 "2026-02-13T09:04:14Z")

</div>

Hi Team,  
Our RTMS-enabled Zoom App previously received full RTMS session details in the `meeting.rtms_started` webhook, including:

- `server_urls`

- `rtms_stream_id`

- signature / access token

Recently, the webhook only returns the event name and `meeting_uuid`, and all RTMS connection fields are missing. Because of this, we are unable to create RTMS records or connect to the RTMS WebSocket.

This behavior worked earlier with the same configuration and is now consistently reproducible.

**Environment:**

- Web SDK v3.12.0

- Salesforce (Visualforce + LWC)

- RTMS App from Marketplace

- Event: `meeting.rtms_started`

**Questions:**

1. Has RTMS Webhook payload behavior changed?

2. Is WebSocket mode now required to receive RTMS session details?

3. Is this related to license or RTMS app configuration?

Thanks for your support.

---

<div class="post-metadata">

**Author:** ![amanda-recallai](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/amanda-recallai/32/44747_2.png) [@amanda-recallai](https://devforum.zoom.us/u/amanda-recallai)\
**Post date:** [February 16, 2026, 7:09pm UTC](https://devforum.zoom.us/t/meeting-rtms-started-webhook-missing-websocket-url-stream-id/141905/2 "2026-02-16T19:09:14Z")

</div>

The RTMS `meeting.rtms_started` webhook is expected to include the connection details (`server_urls`, `rtms_stream_id`, and `signature`) under the nested [`payload.payload` object](https://github.com/zoom/rtms/blob/main/README.md#python---basic-usage). If your handler is only looking at the outer wrapper, you can end up logging just `event` plus whatever fields you happen to surface

Also make sure you’re correctly handling Zoom’s webhook validation ping: when the request includes the [`x-zoom-webhook-validator` header you must echo `plainToken`](https://github.com/zoom/rtms/blob/main/README.md#nodejs---advanced-webhook-handling), and only treat real POST bodies as RTMS events

If parsing/validation is correct and the RTMS fields are genuinely absent, it usually points to account/user enablement: RTMS access can be toggled by Zoom (see a real example where support enabled a trial in the forum thread on [missing RTMS events/scopes](https://devforum.zoom.us/t/issue-with-rtms-missing-webhook-events-and-scopes-for-websocket-connection/140262/22))

---

<div class="post-metadata">

**Author:** ![JenBrissman](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/jenbrissman/32/70512_2.png) [@JenBrissman](https://devforum.zoom.us/u/JenBrissman)\
**Post date:** [February 17, 2026, 5:23pm UTC](https://devforum.zoom.us/t/meeting-rtms-started-webhook-missing-websocket-url-stream-id/141905/3 "2026-02-17T17:23:29Z")

</div>

Hi @harkunal - I am going to DM you - I have a feeling your free trial of RTMS may have expired.
