Skip to content
Start here

Start livestreaming a meeting

POST/accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/livestreams

Starts livestream of a meeting associated with the given meeting ID. Retreive the meeting ID using the Create a meeting API.

Security
API Token

The preferred authorization scheme for interacting with the Cloudflare API. Create a token.

Example:Authorization: Bearer Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY
API Email + API Key

The previous authorization scheme for interacting with the Cloudflare API, used in conjunction with a Global API key.

Example:X-Auth-Email: user@example.com

The previous authorization scheme for interacting with the Cloudflare API. When possible, use API tokens instead of Global API keys.

Example:X-Auth-Key: 144c9defac04969c7bfad8efaa8ea194
Accepted Permissions (at least one required)
Realtime AdminRealtime
Path ParametersExpand Collapse
account_id: string

The account identifier tag.

maxLength32
app_id: string

The app identifier tag.

meeting_id: string
formatuuid
Body ParametersJSONExpand Collapse
name: optional string
video_config: optional object { height, width }
height: optional number

Height of the livestreaming video in pixels

width: optional number

Width of the livestreaming video in pixels

ReturnsExpand Collapse
data: object { id, ingest_server, meeting_id, 4 more }
id: string

ID of the livestream.

formatuuid
ingest_server: string

The server URL to which the RTMP encoder sends the video and audio data.

meeting_id: string

ID of the meeting being livestreamed, if any.

name: string

Name of the livestream.

playback_url: string

The web address that viewers can use to watch the livestream.

status: "LIVE" or "IDLE" or "ERRORED" or 2 more

Status of the livestream.

One of the following:
"LIVE"
"IDLE"
"ERRORED"
"INVOKED"
"METRICS_READY"
stream_key: string

Unique key for accessing each livestream. Empty if the livestream is disabled.

success: boolean

Start livestreaming a meeting

curl https://api.cloudflare.com/client/v4/accounts/$ACCOUNT_ID/realtime/kit/$APP_ID/meetings/$MEETING_ID/livestreams \
    -H 'Content-Type: application/json' \
    -H "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
    -d '{}'
{
  "data": {
    "id": "b60ef3da-fbbb-441b-9168-8235b0035248",
    "ingest_server": "rtmps://live.cloudflare.com:443/live/",
    "meeting_id": "bbb87945-df1c-49d9-8159-262a7ae6cfde",
    "name": "test",
    "playback_url": "https://customer-s8oj0c1n5ek8ah1e.cloudflarestream.com/7de6a3fec0f9c05bf1df140950d3a237/manifest/video.m3u8",
    "status": "LIVE",
    "stream_key": "f26566285faca6fbe2e79a73a66rsrrsrrsr3cde23a2bb7dbc6c2c1761b98f4e4"
  },
  "success": true
}
Returns Examples
{
  "data": {
    "id": "b60ef3da-fbbb-441b-9168-8235b0035248",
    "ingest_server": "rtmps://live.cloudflare.com:443/live/",
    "meeting_id": "bbb87945-df1c-49d9-8159-262a7ae6cfde",
    "name": "test",
    "playback_url": "https://customer-s8oj0c1n5ek8ah1e.cloudflarestream.com/7de6a3fec0f9c05bf1df140950d3a237/manifest/video.m3u8",
    "status": "LIVE",
    "stream_key": "f26566285faca6fbe2e79a73a66rsrrsrrsr3cde23a2bb7dbc6c2c1761b98f4e4"
  },
  "success": true
}