Mux

Mux Live Streams API

A Live Stream represents a unique live stream of video being pushed to Mux. It includes configuration details (a Stream Key) for live broadcasting software/hardware and a Playback ID for playing the stream anywhere. Currently, RTMP is the only supported method of ingesting video. Use rtmp://global-live.mux.com:5222/app with the Live Stream's Stream Key for getting the video into Mux, and use https://stream.mux.com with the Live Stream's Playback ID for playback. A Live Stream can be used once for a specific event, or re-used forever. If you're building an application like Facebook Live or Twitch, you could create one Live Stream per user. This allows them to configure their broadcasting software once, and the Live Stream Playback ID will always show their latest stream. Each RTMP session creates a new video asset automatically. You can set up a webhook to be notified each time a broadcast (or Live Stream RTMP session) begins or ends with the video.live_stream.active and video.live_stream.idle events respectively. Assets that are created from a Live Stream have the same behavior as other Assets you create. Learn more about [how to go live in our guides](https://docs.mux.com/guides/start-live-streaming).

Business capability
OTT & Streaming Delivery BC-3740.20

Operations 22

Each operation below carries the questions people ask an LLM about it and the instructions they give an agent to run it. Generated by API Evangelist overlay

GET /video/v1/live_streams List live streams (live_streams path) · List live streams #
Ask an LLM
“Is there an older underscore live_streams route to list my streams?”
“Which live streams does the live_streams listing return?”
Tell an agent
List my live streams using the live_streams underscore path.
Call the legacy live_streams listing.
POST /video/v1/live_streams Create a live stream (live_streams path) · Create a live stream #
Ask an LLM
“Can I create a live stream through the live_streams underscore route?”
“What's the legacy live_streams call for making a new stream?”
Tell an agent
Create a live stream using the live_streams underscore path.
Make a new stream with the legacy live_streams create call.
GET /video/v1/live_streams/{LIVE_STREAM_ID} Get a live stream (live_streams path) · Retrieve a live stream #
Ask an LLM
“Can I fetch a stream's details through the underscore live_streams route?”
“Which call retrieves one stream on the legacy live_streams path?”
Tell an agent
Get live stream {live_stream_id} via the live_streams underscore path.
Look up stream {live_stream_id} with the legacy live_streams call.
POST /video/v1/live-streams Create a live stream · Create a Live Stream #
Ask an LLM
“How do I set up a new live stream my encoder can broadcast to?”
“Can I create a low-latency live stream that records to an asset?”
Tell an agent
Create a new live stream with a {playback_policy} playback policy.
Create a live stream in {latency_mode} latency mode.
GET /video/v1/live-streams List live streams · List Live Streams #
Ask an LLM
“Which of my live streams are currently active?”
“Can I find a live stream by its stream key?”
Tell an agent
List my live streams.
List live streams with status {status}.
GET /video/v1/live-streams/{LIVE_STREAM_ID} Get a live stream's details · Retrieve a Live Stream #
Ask an LLM
“What's the stream key and status of one of my live streams?”
“Is my live stream idle or active right now?”
Tell an agent
Show live stream {live_stream_id}.
Get the stream key and status of live stream {live_stream_id}.
DELETE /video/v1/live-streams/{LIVE_STREAM_ID} Delete a live stream · Delete a Live Stream #
Ask an LLM
“What happens to an active broadcast if I delete the live stream?”
“How do I permanently remove a live stream?”
Tell an agent destructive · confirm first
Delete live stream {live_stream_id}.
Permanently remove live stream {live_stream_id} and disconnect its encoder.
PATCH /video/v1/live-streams/{LIVE_STREAM_ID} Update a live stream's settings · Update a Live Stream #
Ask an LLM
“Can I change the latency mode of a stream I already created?”
“How do I change the reconnect window on an existing live stream?”
Tell an agent
Switch existing live stream {live_stream_id} to {latency_mode} latency.
Set the reconnect window of live stream {live_stream_id} to {reconnect_window} seconds.
POST /video/v1/live-streams/{LIVE_STREAM_ID}/playback-ids Add a playback ID to a live stream · Create a Live Stream Playback ID #
Ask an LLM
“How do I get another playback URL for viewers of my live stream?”
“Can I add a signed playback ID to a live stream?”
Tell an agent
Add a playback ID to live stream {live_stream_id}.
Create a {policy} playback ID for live stream {live_stream_id}.
GET /video/v1/live-streams/{LIVE_STREAM_ID}/playback-ids/{PLAYBACK_ID} Get a live stream's playback ID · Retrieve a Live Stream Playback ID #
Ask an LLM
“What policy does one of my live stream's playback IDs use?”
“Can I look up a single playback ID on a live stream?”
Tell an agent
Show playback ID {playback_id} of live stream {live_stream_id}.
Get details of live stream {live_stream_id}'s playback {playback_id}.
DELETE /video/v1/live-streams/{LIVE_STREAM_ID}/playback-ids/{PLAYBACK_ID} Remove a playback ID from a live stream · Delete a Live Stream Playback ID #
Ask an LLM
“Will deleting a live stream's playback ID stop the broadcast ingest?”
“How do I block new viewers from one live stream playback URL?”
Tell an agent destructive · confirm first
Delete playback ID {playback_id} from live stream {live_stream_id}.
Revoke live stream {live_stream_id} playback {playback_id}.
POST /video/v1/live-streams/{LIVE_STREAM_ID}/reset-stream-key Reset a live stream's stream key · Reset a Live Stream's Stream Key #
Ask an LLM
“My stream key leaked — how do I get a new one immediately?”
“Does resetting a stream key stop the old key from working?”
Tell an agent destructive · confirm first
Reset the stream key for live stream {live_stream_id}.
Rotate live stream {live_stream_id}'s stream key now.
PUT /video/v1/live-streams/{LIVE_STREAM_ID}/complete Mark a live stream as finished · Signal a Live Stream Is Finished #
Ask an LLM
“How do I end a live recording right away instead of waiting for the reconnect window?”
“Can I tell players the broadcast is over so they stop waiting?”
Tell an agent
Signal live stream {live_stream_id} is complete.
End the recording of live stream {live_stream_id} now.
PUT /video/v1/live-streams/{LIVE_STREAM_ID}/disable Disable a live stream · Disable a Live Stream #
Ask an LLM
“How do I stop a live stream from accepting any incoming RTMP broadcasts?”
“Does disabling a stream also end the current recording?”
Tell an agent destructive · confirm first
Disable live stream {live_stream_id}.
Block incoming broadcasts on live stream {live_stream_id}.
PUT /video/v1/live-streams/{LIVE_STREAM_ID}/enable Re-enable a disabled live stream · Enable a Live Stream #
Ask an LLM
“How do I let a disabled live stream accept broadcasts again?”
“Can I turn a live stream back on after disabling it?”
Tell an agent
Enable live stream {live_stream_id}.
Allow live stream {live_stream_id} to accept RTMP again.
PUT /video/v1/live-streams/{LIVE_STREAM_ID}/embedded-subtitles Configure embedded closed captions on a stream · Update a Live Stream's Embedded Subtitles #
Ask an LLM
“Can my live stream pick up closed captions embedded in the incoming broadcast?”
“How do I turn on embedded captions for a live stream?”
Tell an agent
Set embedded subtitles on live stream {live_stream_id} to {embedded_subtitles}.
Enable embedded closed captions for live stream {live_stream_id}.
PUT /video/v1/live-streams/{LIVE_STREAM_ID}/generated-subtitles Configure auto-generated live subtitles · Update a Live Stream's Generated Subtitles #
Ask an LLM
“Can Mux add speech-recognition captions to my live stream?”
“How do I remove auto-generated subtitles from a live stream?”
Tell an agent
Set generated subtitles on live stream {live_stream_id} to {generated_subtitles}.
Turn off speech-recognition captions for live stream {live_stream_id}.
POST /video/v1/live-streams/{LIVE_STREAM_ID}/simulcast-targets Add a simulcast target to a live stream · Create a Live Stream Simulcast Target #
Ask an LLM
“How do I restream my live broadcast to another RTMP destination?”
“Does a live stream need to be idle before adding a simulcast target?”
Tell an agent
Add simulcast target {url} to live stream {live_stream_id}.
Simulcast live stream {live_stream_id} to {url} with stream key {stream_key}.
DELETE /video/v1/live-streams/{LIVE_STREAM_ID}/simulcast-targets/{SIMULCAST_TARGET_ID} Remove a simulcast target · Delete a Live Stream Simulcast Target #
Ask an LLM
“How do I stop restreaming to one of my simulcast destinations?”
“Can I delete a simulcast target while the stream is live?”
Tell an agent destructive · confirm first
Delete simulcast target {simulcast_target_id} from live stream {live_stream_id}.
Stop simulcasting live stream {live_stream_id} to target {simulcast_target_id}.
GET /video/v1/live-streams/{LIVE_STREAM_ID}/simulcast-targets/{SIMULCAST_TARGET_ID} Get a simulcast target's details · Retrieve a Live Stream Simulcast Target #
Ask an LLM
“What's the status of a restream destination on my live stream?”
“Can I check where a simulcast target is sending my stream?”
Tell an agent
Show simulcast target {simulcast_target_id} on live stream {live_stream_id}.
Get the status of simulcast {simulcast_target_id} for stream {live_stream_id}.
PUT /video/v1/live-streams/{LIVE_STREAM_ID}/new-asset-settings/static-renditions Set MP4 renditions for a stream's recordings · Update Live Stream Static Renditions for New Assets #
Ask an LLM
“Can future recordings of my live stream automatically get MP4 renditions?”
“Do I have to list every static rendition when changing a stream's recording settings?”
Tell an agent
Set static renditions {static_renditions} for new assets from live stream {live_stream_id}.
Make recordings of live stream {live_stream_id} produce renditions {static_renditions}.
DELETE /video/v1/live-streams/{LIVE_STREAM_ID}/new-asset-settings/static-renditions Stop MP4 renditions for a stream's recordings · Delete a Live Stream's Static Renditions Setting for New Assets #
Ask an LLM
“How do I stop future live recordings from creating MP4 renditions?”
“Can I clear the static rendition setting on a live stream?”
Tell an agent destructive · confirm first
Remove the static renditions setting from live stream {live_stream_id}.
Stop creating MP4s for new recordings of live stream {live_stream_id}.

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/mux-com:mux-com-live-streams-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

mux-com-live-streams-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Mux Com Live Streams API
  version: v1
  description: 'Operations tagged Live Streams across 2 of this provider''s published API definitions: mux-com-openapi.yml, mux-openapi.yml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://api.mux.com
  description: Mux production API
- url: https://image.mux.com
- url: https://stream.mux.com
- url: https://stats.mux.com
tags:


# --- truncated at 32 KB (77 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/mux-com/refs/heads/main/openapi/mux-com-live-streams-api-openapi.yml