Start live stream for a room

Use this to start a live stream for a room. This would return a playback URL (in m3u8 format) that can be shared with HLS player clients for playback.

The live stream will be in starting state to begin with, and turn into running shortly.

curl --location --request POST '<room_id>/start' \ --header 'Authorization: Bearer <management_token>' \ --header 'Content-Type: application/json' \ --data-raw '{ "meeting_url" : "<meeting_url>", "recording": { "hls_vod": true, "single_file_per_layer": true } }'
Status: 200 OK
{ "id": "<stream_id>", "room_id": "<room_id>", "session_id": "<session_id>", "status": "starting", "meeting_url": "<meeting_url>", "playback": { "url": "<master-manifest-url>" }, "recording": { "hls_vod": true, "single_file_per_layer": true }, "destination": "<destination_name>", "created_at": "2023-03-22T04:24:10.155978231Z", "started_at": null, "updated_at": "2023-03-22T04:24:10.155978231Z", "started_by": "", "stopped_at": null, "stopped_by": "", "recording_assets": null }


meeting_urlstringSingle click meeting URL for the streamNo[1]
recordingobjectFlags to enable recordingNo
destinationstringName of destination from template to pick up configurationNo[2]

[1] meeting_url is required when

  • Live streaming is not enabled on the dashboard
  • The template of this room does not have a subdomain (templates created through the REST API don't have subdomains)

[2] (Advanced usage only) destination is required when

  • There are multiple destinations of this type on the template

This is a URL which lands into the room directly. You can use 100ms room links that look like:


Other supported query parameters:

  • skip_preview=true: skips the preview page and directly joins the meeting with header and controls disabled
  • skip_preview_headful=true: skips the preview page and directly joins the meeting with header and controls enabled
  • auth_token=token1234: Use this to pass an auth token to authenticate the room join action
  • ui_mode=activespeaker: Render active speaker mode by default
  • name=johndoe: Use this to add a name for the peer
hls_vodboolGenerate a room-vod asset for on-demand playback use-caseNo
single_file_per_layerboolGenerate room-composite assets, one for each layerNo

Have a suggestion? Recommend changes ->

Run in postman

Was this helpful?