Skip to content

Wowza Video REST API Reference Documentation (v1.11)

API lifecycle phase: Supported 2

Want to take the API for a test run?

All you'll need is a Wowza Video subscription, or free trial, for the API access token. Then, fork our collection in Postman and you'll be making calls to our REST API in minutes!

See Trial the Wowza Video REST API using Postman for more information.

This reference documentation provides details about the operations, parameters, and request and reponse schemas for every resource and endpoint in the Wowza Video REST API. Samples appear in the right column. Sample requests are presented in cURL (Shell) and JavaScript; some samples also include just the JSON object. Response samples are all JSON. Examples in cURL use environment variables so you can easily copy and paste them. To learn more, see Using cURL.

Reference documentation is available for every version of the API. Use the Version menu at the top of the page to access the reference doc for a different version of the API.

Download OpenAPI description
Overview
License
Languages
Servers
Mock server
https://developer.wowza.com/_mock/docs/wowza-video/api/video/v1.11/openapi
https://api.video.wowza.com/api/v1.11

Live Streams

Operations related to live streams. A live stream is a single, linear video broadcast. You broadcast a live stream by receiving encoded source video into the Wowza Video service and letting Wowza Video transcode the stream and deliver it to viewers. A live stream is essentially a one-stop method for creating a transcoder, output renditions, stream targets, and associated players.

Operations

Players

Operations related to players, which are created through the /live_streams resource. Players created through Wowza Video live streams can be embedded into your own web page or played through a web page hosted by Wowza Video.

Operations

Transcoders

Operations related to transcoders, output renditions, and output stream targets.

Operations

Fetch all outputs of a transcoder

Request

This operation shows the details of all of the output renditions of a specific transcoder.

Path
transcoder_idstringrequired

The unique alphanumeric string that identifies the transcoder.

curl -i -X GET \
  'https://developer.wowza.com/_mock/docs/wowza-video/api/video/v1.11/openapi/transcoders/{transcoder_id}/outputs'

Responses

Success

Bodyapplication/json
outputsArray of objects(output)required
Example: [{"aspect_ratio_height":480,"aspect_ratio_width":848,"bitrate_audio":128,"bitrate_video":1600,"created_at":"2020-01-29T17:16:21.958Z","framerate_reduction":"1/2","h264_profile":"main","id":"w9vJm3BJ","keyframes":"follow_source","name":"Standard Output: Video (848 x 480) + Audio","output_stream_targets":[{}],"video_codec":"h264","audio_codec":"aac","transcoder_id":"PblTJm1t","updated_at":"2020-01-31T03:29:50.958Z"},{"created_at":"2020-01-29T17:16:21.958Z","id":"PPqV0kcm","name":"Standard Output: Video + Audio","output_stream_targets":[{}],"video_codec":"passthrough","audio_codec":"passthrough","transcoder_id":"Yf5lyjCV","updated_at":"2020-01-31T03:55:05.958Z"}]
outputs[].​aspect_ratio_heightinteger(int32)

The height, in pixels, of the output rendition. Should correspond to a widescreen or standard aspect ratio and be divisible by 8. The default is 1080. Combined with aspect_ratio_width, makes up the input resolution.

Example: 480
outputs[].​aspect_ratio_widthinteger(int32)

The width, in pixels, of the output rendition. Should correspond to a widescreen or standard aspect ratio and be divisible by 8. The default is 1920. Combined with aspect_ratio_height, makes up the input resolution.

Example: 848
outputs[].​bitrate_audiointeger(int32)

The audio bitrate, in kilobits per second (Kbps). Must be between 1 and 9999. If the audio_codec is opus, the default is 510, otherwise the default is 128.

Example: 128
outputs[].​bitrate_videointeger(int32)

The video bitrate, in kilobits per second (Kbps). Must be between 1 and 10240. The default is 4000.

Example: 1600
outputs[].​created_atstring(date-time)

The date and time that the output rendition was created.

Example: "2020-01-29T17:16:21.964Z"
outputs[].​framerate_reductionstring

Reduce the frame rate of the transcoded output rendition. The default, 0, uses the encoded stream's frame rate without reduction.

Enum"0""1/2""1/4""1/25""1/30""1/50""1/60"
Example: "1/2"
outputs[].​h264_profilestring

The encoding method. Specify main for desktop streaming, baseline for playback on mobile devices, or high for HD playback. The default is high.

Enum"main""baseline""high"
Example: "main"
outputs[].​idstring

The unique alphanumeric string that identifies the output rendition.

Example: "w9vJm3BJ"
outputs[].​keyframesstring

The interval used to define the compression applied to a group of frames. The default, follow_source, uses the keyframe interval of the source video.

Enum"follow_source""25""30""50""60""100""120"
Example: "follow_source"
outputs[].​namestring

A descriptive name for the output (generated, not writable).

Example: "Standard Output: Video (848 x 480) + Audio"
outputs[].​output_stream_targetsArray of objects(output_stream_target)
Example: [{}]
outputs[].​video_codecstring

The codec used to encode the video stream. disabled sends the stream without a video track and passthrough sends the stream without transcoding the video track. Available from version 1.6.

Enum"h264""passthrough""disabled"
Example: "h264"
outputs[].​audio_codecstring

The codec used to encode the audio stream. disabled sends the stream without an audio track and passthrough sends the stream without transcoding the audio track. aac is the most commonly compatible audio codec for protocols, while opus is for WebRTC streams. Available from version 1.6.

Enum"aac""opus""passthrough""disabled"
Example: "aac"
outputs[].​transcoder_idstring

The unique alphanumeric string that identifies the transcoder.

Example: "PblTJm1t"
outputs[].​updated_atstring(date-time)

The date and time that the output rendition was updated.

Example: "2020-01-31T13:47:33.964Z"
Response
application/json
{ "outputs": [ {}, {} ] }

Fetch an output

Request

This operation shows the details of a specific output rendition for a specific transcoder.

Path
transcoder_idstringrequired

The unique alphanumeric string that identifies the transcoder.

idstringrequired

The unique alphanumeric string that identifies the output rendition.

curl -i -X GET \
  'https://developer.wowza.com/_mock/docs/wowza-video/api/video/v1.11/openapi/transcoders/{transcoder_id}/outputs/{id}'

Responses

Success

Bodyapplication/json
outputobject(output)required
Example: {"aspect_ratio_height":480,"aspect_ratio_width":848,"bitrate_audio":128,"bitrate_video":1600,"created_at":"2020-01-29T17:16:21.964Z","framerate_reduction":"1/2","h264_profile":"main","id":"w9vJm3BJ","keyframes":"follow_source","name":"Standard Output: Video (848 x 480) + Audio","output_stream_targets":[{}],"video_codec":"h264","audio_codec":"aac","transcoder_id":"PblTJm1t","updated_at":"2020-01-31T13:47:33.964Z"}
output.​aspect_ratio_heightinteger(int32)

The height, in pixels, of the output rendition. Should correspond to a widescreen or standard aspect ratio and be divisible by 8. The default is 1080. Combined with aspect_ratio_width, makes up the input resolution.

Example: 480
output.​aspect_ratio_widthinteger(int32)

The width, in pixels, of the output rendition. Should correspond to a widescreen or standard aspect ratio and be divisible by 8. The default is 1920. Combined with aspect_ratio_height, makes up the input resolution.

Example: 848
output.​bitrate_audiointeger(int32)

The audio bitrate, in kilobits per second (Kbps). Must be between 1 and 9999. If the audio_codec is opus, the default is 510, otherwise the default is 128.

Example: 128
output.​bitrate_videointeger(int32)

The video bitrate, in kilobits per second (Kbps). Must be between 1 and 10240. The default is 4000.

Example: 1600
output.​created_atstring(date-time)

The date and time that the output rendition was created.

Example: "2020-01-29T17:16:21.964Z"
output.​framerate_reductionstring

Reduce the frame rate of the transcoded output rendition. The default, 0, uses the encoded stream's frame rate without reduction.

Enum"0""1/2""1/4""1/25""1/30""1/50""1/60"
Example: "1/2"
output.​h264_profilestring

The encoding method. Specify main for desktop streaming, baseline for playback on mobile devices, or high for HD playback. The default is high.

Enum"main""baseline""high"
Example: "main"
output.​idstring

The unique alphanumeric string that identifies the output rendition.

Example: "w9vJm3BJ"
output.​keyframesstring

The interval used to define the compression applied to a group of frames. The default, follow_source, uses the keyframe interval of the source video.

Enum"follow_source""25""30""50""60""100""120"
Example: "follow_source"
output.​namestring

A descriptive name for the output (generated, not writable).

Example: "Standard Output: Video (848 x 480) + Audio"
output.​output_stream_targetsArray of objects(output_stream_target)
Example: [{}]
output.​video_codecstring

The codec used to encode the video stream. disabled sends the stream without a video track and passthrough sends the stream without transcoding the video track. Available from version 1.6.

Enum"h264""passthrough""disabled"
Example: "h264"
output.​audio_codecstring

The codec used to encode the audio stream. disabled sends the stream without an audio track and passthrough sends the stream without transcoding the audio track. aac is the most commonly compatible audio codec for protocols, while opus is for WebRTC streams. Available from version 1.6.

Enum"aac""opus""passthrough""disabled"
Example: "aac"
output.​transcoder_idstring

The unique alphanumeric string that identifies the transcoder.

Example: "PblTJm1t"
output.​updated_atstring(date-time)

The date and time that the output rendition was updated.

Example: "2020-01-31T13:47:33.964Z"
Response
application/json
{ "output": { "aspect_ratio_height": 480, "aspect_ratio_width": 848, "bitrate_audio": 128, "bitrate_video": 1600, "created_at": "2020-01-29T17:16:21.964Z", "framerate_reduction": "1/2", "h264_profile": "main", "id": "w9vJm3BJ", "keyframes": "follow_source", "name": "Standard Output: Video (848 x 480) + Audio", "output_stream_targets": [], "video_codec": "h264", "audio_codec": "aac", "transcoder_id": "PblTJm1t", "updated_at": "2020-01-31T13:47:33.964Z" } }

Update an output

Request

This operation updates an output rendition.

Path
transcoder_idstringrequired

The unique alphanumeric string that identifies the transcoder.

idstringrequired

The unique alphanumeric string that identifies the output rendition.

Bodyapplication/jsonrequired

Provide the details of the output rendition to update in the body of the request.

outputobject(output)required
Example: {"video_codec":"h264","audio_codec":"aac","aspect_ratio_height":480,"aspect_ratio_width":848,"bitrate_audio":128,"bitrate_video":1600,"framerate_reduction":"1/2","h264_profile":"main","keyframes":"follow_source"}
output.​video_codecstringrequired

The codec used to encode the video stream. disabled sends the stream without a video track and passthrough sends the stream without transcoding the video track. Available from version 1.6.

Enum"h264""passthrough""disabled"
Example: "h264"
output.​audio_codecstringrequired

The codec used to encode the audio stream. disabled sends the stream without an audio track and passthrough sends the stream without transcoding the audio track. aac is the most commonly compatible audio codec for protocols, while opus is for WebRTC streams. Available from version 1.6.

Enum"aac""opus""passthrough""disabled"
Example: "aac"
output.​aspect_ratio_heightinteger(int32)

The height, in pixels, of the output rendition. Should correspond to a widescreen or standard aspect ratio and be divisible by 8. The default is 1080. Combined with aspect_ratio_width, makes up the input resolution.

Example: "aspect_ratio_height": 1080

Example: 480
output.​aspect_ratio_widthinteger(int32)

The width, in pixels, of the output rendition. Should correspond to a widescreen or standard aspect ratio and be divisible by 8. The default is 1920. Combined with aspect_ratio_height, makes up the input resolution.

Example: "aspect_ratio_width": 1920

Example: 848
output.​bitrate_audiointeger(int32)

The audio bitrate, in kilobits per second (Kbps). Must be between 1 and 9999. If the audio_codec is opus, the default is 510, otherwise the default is 128.

Example: "bitrate_audio": 128

Example: 128
output.​bitrate_videointeger(int32)

The video bitrate, in kilobits per second (Kbps). Must be between 1 and 10240. The default is 4000.

Example: "bitrate_audio": 1600

Example: 1600
output.​framerate_reductionstring

Reduce the frame rate of the transcoded output rendition. The default, 0, uses the encoded stream's frame rate without reduction.

Example: "frame_reduction": "1/2"

Enum"0""1/2""1/4""1/25""1/30""1/50""1/60"
Example: "1/2"
output.​h264_profilestring

The encoding method. Specify main for desktop streaming, baseline for playback on mobile devices, or high for HD playback. The default is high.

Example: "h264_profile": "main"

Enum"main""baseline""high"
Example: "main"
output.​keyframesstring

The interval used to define the compression applied to a group of frames. The default, follow_source, uses the keyframe interval of the source video.

Example: "keyframes": "follow_source"

Enum"follow_source""25""30""50""60""100""120"
Example: "follow_source"
curl -i -X PATCH \
  'https://developer.wowza.com/_mock/docs/wowza-video/api/video/v1.11/openapi/transcoders/{transcoder_id}/outputs/{id}' \
  -H 'Content-Type: application/json' \
  -d '{
    "output": {
      "video_codec": "h264",
      "audio_codec": "aac",
      "aspect_ratio_height": 480,
      "aspect_ratio_width": 848,
      "bitrate_audio": 128,
      "bitrate_video": 1600,
      "framerate_reduction": "1/2",
      "h264_profile": "main",
      "keyframes": "follow_source"
    }
  }'

Responses

Success

Bodyapplication/json
outputobject(output)required
Example: {"aspect_ratio_height":480,"aspect_ratio_width":848,"bitrate_audio":128,"bitrate_video":1600,"created_at":"2020-01-29T17:16:21.964Z","framerate_reduction":"1/2","h264_profile":"main","id":"w9vJm3BJ","keyframes":"follow_source","name":"Standard Output: Video (848 x 480) + Audio","output_stream_targets":[{}],"video_codec":"h264","audio_codec":"aac","transcoder_id":"PblTJm1t","updated_at":"2020-01-31T13:47:33.964Z"}
output.​aspect_ratio_heightinteger(int32)

The height, in pixels, of the output rendition. Should correspond to a widescreen or standard aspect ratio and be divisible by 8. The default is 1080. Combined with aspect_ratio_width, makes up the input resolution.

Example: 480
output.​aspect_ratio_widthinteger(int32)

The width, in pixels, of the output rendition. Should correspond to a widescreen or standard aspect ratio and be divisible by 8. The default is 1920. Combined with aspect_ratio_height, makes up the input resolution.

Example: 848
output.​bitrate_audiointeger(int32)

The audio bitrate, in kilobits per second (Kbps). Must be between 1 and 9999. If the audio_codec is opus, the default is 510, otherwise the default is 128.

Example: 128
output.​bitrate_videointeger(int32)

The video bitrate, in kilobits per second (Kbps). Must be between 1 and 10240. The default is 4000.

Example: 1600
output.​created_atstring(date-time)

The date and time that the output rendition was created.

Example: "2020-01-29T17:16:21.964Z"
output.​framerate_reductionstring

Reduce the frame rate of the transcoded output rendition. The default, 0, uses the encoded stream's frame rate without reduction.

Enum"0""1/2""1/4""1/25""1/30""1/50""1/60"
Example: "1/2"
output.​h264_profilestring

The encoding method. Specify main for desktop streaming, baseline for playback on mobile devices, or high for HD playback. The default is high.

Enum"main""baseline""high"
Example: "main"
output.​idstring

The unique alphanumeric string that identifies the output rendition.

Example: "w9vJm3BJ"
output.​keyframesstring

The interval used to define the compression applied to a group of frames. The default, follow_source, uses the keyframe interval of the source video.

Enum"follow_source""25""30""50""60""100""120"
Example: "follow_source"
output.​namestring

A descriptive name for the output (generated, not writable).

Example: "Standard Output: Video (848 x 480) + Audio"
output.​output_stream_targetsArray of objects(output_stream_target)
Example: [{}]
output.​video_codecstring

The codec used to encode the video stream. disabled sends the stream without a video track and passthrough sends the stream without transcoding the video track. Available from version 1.6.

Enum"h264""passthrough""disabled"
Example: "h264"
output.​audio_codecstring

The codec used to encode the audio stream. disabled sends the stream without an audio track and passthrough sends the stream without transcoding the audio track. aac is the most commonly compatible audio codec for protocols, while opus is for WebRTC streams. Available from version 1.6.

Enum"aac""opus""passthrough""disabled"
Example: "aac"
output.​transcoder_idstring

The unique alphanumeric string that identifies the transcoder.

Example: "PblTJm1t"
output.​updated_atstring(date-time)

The date and time that the output rendition was updated.

Example: "2020-01-31T13:47:33.964Z"
Response
application/json
{ "output": { "aspect_ratio_height": 480, "aspect_ratio_width": 848, "bitrate_audio": 128, "bitrate_video": 1600, "created_at": "2020-01-29T17:16:21.964Z", "framerate_reduction": "1/2", "h264_profile": "main", "id": "w9vJm3BJ", "keyframes": "follow_source", "name": "Standard Output: Video (848 x 480) + Audio", "output_stream_targets": [], "video_codec": "h264", "audio_codec": "aac", "transcoder_id": "PblTJm1t", "updated_at": "2020-01-31T13:47:33.964Z" } }

Stream Sources

Operations related to stream sources. You can create a Wowza stream source and associate it to a live stream or transcoder.

Operations

Stream Targets

Operations related to stream targets. A stream target is a destination for a stream. Stream targets can be Wowza Video edge resources; custom, external destinations target destinations.

Operations

Assets

Operations related to assets, which are created through the /assets resources. The Wowza Video service can store and transcode mp4 files that you can tag, manage, and restream.

Operations

Recordings

Operations related to recordings, which are created through the /live_streams or /transcoders resources. The Wowza Video service can create MP4 recordings of your live streams and transcoded output. Recordings can be downloaded and saved locally. They're based on the highest-bitrate output rendition that Wowza Video generates from your video source. See About recordings to learn more.

Operations

Schedules

Operations related to schedules. Schedules allow you to automatically start or stop a live stream or transcoder at a predetermined date and time. You can configure a schedule to start and/or stop a live stream or transcoder just once, or you can configure it to repeat the behavior on a regular basis. See About schedules to learn more.

Operations

VOD Streams

Operations related to video on demand (VOD) streams, which are created through the /live_streams or /transcoders resources. A VOD stream is a recording of a live stream that viewers can replay at a later date. After the broadcast is over and the live stream or transcoder is stopped, Wowza Video creates the VOD stream and generates a playback URL. See About VOD Streams to learn more.

Operations

Real-Time Streams

Operations related to Real-Time Streaming at Scale. If your audience is fewer than 300 viewers or you want to deliver a stream in near real time alongside other delivery protocols, use our WebRTC solution.

To enable and purchase capacity for Real-Time Streaming at Scale for your account and access the /real_time operations, contact 720.279.8163 or schedule a call.
Operations

Viewers

Operations related to viewer analytics.

Operations

Ingest

Operations related to ingest analytics for a live stream.

Operations

Engagement

Operations related to engagement analytics for a VOD stream.

Operations

Popularity

Operations related to popularity analytics.

Operations

Account

Operations related to stream analytics for an account.

Operations

Transcoders

Operations related to transcoder analytics.

Operations

Stream Targets

Operations related to stream target analytics, including CDN usage and viewer data.

Operations

Storage

Operations related to peak storage for an account. You can use this operation to show the amount of peak recording and VOD stream storage used by your account.

Operations

VOD Streams

Operations related to video on demand (VOD) stream analytics.

Operations

Real Time Streams

Operations related to real-time streams analytics.

Operations