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.

Create a live stream

This operation creates a live stream.

Request
Request Body schema: application/json
required

Provide the details of the live stream to create in the body of the request.

required
object (live_stream)
aspect_ratio_height
required
integer <int32>

The height, in pixels, of the video source. Should correspond to a widescreen (16:9) or standard (4:3) aspect ratio and be divisible by 8. Combined with aspect_ratio_width, makes up the input resolution.

aspect_ratio_width
required
integer <int32>

The width, in pixels, of the video source. Should correspond to a widescreen (16:9) or standard (4:3) aspect ratio and be divisible by 8. Combined with aspect_ratio_height, makes up the input resolution.

billing_mode
required
string

The billing mode for the stream. The default is pay_as_you_go.

pay_as_you_go — Billed as a single event. A single event is use-based and you incur charges for the time spent streaming.

twentyfour_seven — Billed as a 24x7 channel. A 24x7 channel is unlimited stream time for one channel. This billing mode doesn't incur overages, since it's unlimited.

Enum: "pay_as_you_go" "twentyfour_seven"
broadcast_location
required
string (broadcast_location)

The location of your stream. Choose a location as close as possible to your video source.

Enum: "asia_pacific_australia" "asia_pacific_india" "asia_pacific_japan" "asia_pacific_singapore" "asia_pacific_s_korea" "asia_pacific_taiwan" "eu_belgium" "eu_germany" "eu_ireland" "south_america_brazil" "us_central_iowa" "us_east_s_carolina" "us_east_virginia" "us_west_california" "us_west_oregon"
encoder
required
string

The video source for the live stream. Choose the type of camera or encoder you're using to connect to the Wowza Video transcoder. If your specific device isn't listed, choose ipcamera, other_rtmp, or other_rtsp.

Enum: "wowza_clearcaster" "wowza_gocoder" "wowza_streaming_engine" "media_ds" "axis" "epiphan" "file" "hauppauge" "jvc" "live_u" "matrox" "newtek_tricaster" "osprey" "sony" "telestream_wirecast" "teradek_cube" "vmix" "x_split" "ipcamera" "other_rtmp" "other_rtsp" "other_webrtc" "other_udp" "other_srt"
name
required
string

A descriptive name for the live stream. Maximum 200 characters.

transcoder_type
required
string

The type of transcoder, either transcoded for streams that are transcoded into adaptive bitrate renditions or passthrough for streams that aren't processed by the transcoder. The default is transcoded.

Enum: "transcoded" "passthrough"
closed_caption_type
string

The type of closed caption data being passed from the source. The default, none, indicates that no data is being provided. cea indicates that a CEA closed captioning data stream is being provided. on_text indicates that an onTextData closed captioning data stream is being provided. both indicates that both CEA and onTextData closed captioning data streams are being provided.

Example: "closed_caption_type": "none"

Enum: "none" "cea" "on_text" "both"
delivery_method
string

The type of connection between the video source and the transcoder. The default, push, instructs the source to push the stream to the transcoder. pull instructs the transcoder to pull the video from the source. cdn uses a stream source to deliver the stream to the transcoder.

Default: push

Example: "delivery_method": "pull"

Enum: "pull" "cdn" "push"
delivery_protocols
Array of strings

An array of direct delivery protocols enabled for this live stream. By default, rtmp, rtsp, webrtc, and wowz are enabled.

Example: See response body sample

disable_authentication
boolean

Authentication is required by default for RTMP and RTSP push connections from a video source to Wowza Video. Specify true to disable authentication with the video source.

Example: "disable_authentication": false

object (hosted_page_request_object_create)

Configuration of the hosted page.

low_latency
boolean

For streams whose target_delivery_protocol is hls-https. If true, turns off incoming and sort packet buffers and delivers smaller video packets to the player, which can reduce latency as long as networks can handle the increased overhead. The default is false.

Example: "low_latency": false

password
string

A password for authenticating an RTMP or RTSP push connection. Can contain only uppercase and lowercase letters; numbers; and the period (.), underscore (_), and hyphen (-) characters. No other special characters can be used.

Example: "password": 68332313

object (player_request_object_create)

Configuration of the player.

recording
boolean

If true, creates a recording of the live stream. The recording starts when the live stream starts and stops automatically when the live stream stops.

Recordings created from a live stream capture up to eight hours of content. If a live stream runs for longer than eight hours, the most recent eight hours are recorded. To record more than eight hours of a single broadcast, stop the live stream and start it again to create multiple recordings.

Default: false

Note: If save_asset is true, that field overrides a true recording value and the asset is saved in Asset Management.

Example: "recording": true

reference_id
string

A unique, alphanumeric ID returned in transcoder webhook payloads. Setting a reference_id is useful if you have an ID in your system or application you want to associate with transcoder events that trigger webhooks. Maximum 70 characters. Can only contain: a-z A-Z 0-9 !@#$%^&*()-_+=:;,.?~|

You can't use brackets or quotation marks.

See Wowza Video Webhook Event Reference Documentation to learn about webhooks.

Available from version 1.7.

Example: "reference_id": "mySystemID_01"

save_asset
boolean

If true, saves an MP4 recording and a VOD asset in Asset Management. The default is false. You can't set save_asset for a live stream created from re-streaming an asset in Asset Management.

Note: If this value is true, recording and/or vod_stream are set to false. You need a Wowza Video subscription to access Asset Management.

Available from version 1.8.

Example: "save_asset": true

source_url
string

For the delivery_method pull or encoder file.

For pull, enter the URL of an IP camera or video encoder using an RTMP and RTSP pull connection to Wowza Video. Consult the camera or encoder documentation for the URL syntax.

For file, enter the source file URL, including the protocol (http, https, gs, s3).

Example: "source_url": "xyz.streamlock.net/vod/mp4:Movie.mov"

target_delivery_protocol
string

The type of stream being delivered from Wowza Video. The default and only valid value is hls-https.

Example: "target_delivery_protocol": "hls-https"

Value: "hls-https"
use_stream_source
boolean

If true, uses a stream source to deliver the stream to Wowza Video. The default, false, pushes directly to Wowza Video.

Example: "use_stream_source": false

username
string

A user name for authenticating an RTMP or RTSP push connection. Can contain only uppercase and lowercase letters; numbers; and the period (.), underscore (_), and hyphen (-) characters. No other special characters can be used.

Example: "username": "client2"

vod_stream
boolean

If true, creates a VOD stream after the live stream ends. The default is false. VOD streams require a Fastly stream target with HLS as a delivery protocol.

Note: If save_asset is true, that field overrides a true vod_stream value and the asset is saved in Asset Management.

Example: "vod_stream": true

Responses
201

Success

Response Schema: application/json
required
object (live_stream)
aspect_ratio_height
integer <int32>

The height, in pixels, of the video source. Should correspond to a widescreen (16:9) or standard (4:3) aspect ratio and be divisible by 8. Combined with aspect_ratio_width, makes up the input resolution.

aspect_ratio_width
integer <int32>

The width, in pixels, of the video source. Should correspond to a widescreen (16:9) or standard (4:3) aspect ratio and be divisible by 8. Combined with aspect_ratio_height, makes up the input resolution.

asset_id
string

Only applies to live streams created from re-streaming an asset in Asset Management. The id for the asset associated with the re-streamed live stream. You can manage this asset in Asset Management.

billing_mode
string

The billing mode for the stream. The default is pay_as_you_go.

pay_as_you_go — Billed as a single event. A single event is use-based and you incur charges for the time spent streaming.

twentyfour_seven — Billed as a 24x7 channel. A 24x7 channel is unlimited stream time for one channel. This billing mode doesn't incur overages, since it's unlimited.

Enum: "pay_as_you_go" "twentyfour_seven"
broadcast_location
string (broadcast_location)

The location of your stream. Choose a location as close as possible to your video source.

Enum: "asia_pacific_australia" "asia_pacific_india" "asia_pacific_japan" "asia_pacific_singapore" "asia_pacific_s_korea" "asia_pacific_taiwan" "eu_belgium" "eu_germany" "eu_ireland" "south_america_brazil" "us_central_iowa" "us_east_s_carolina" "us_east_virginia" "us_west_california" "us_west_oregon"
closed_caption_type
string

The type of closed caption data being passed from the source. The default, none, indicates that no data is being provided. cea indicates that a CEA closed captioning data stream is being provided. on_text indicates that an onTextData closed captioning data stream is being provided. both indicates that both CEA and onTextData closed captioning data streams are being provided.

Enum: "none" "cea" "on_text" "both"
connection_code
string

A six-character, alphanumeric string that allows certain encoders, including Wowza Streaming Engine and the Wowza GoCoder app, to connect with Wowza Video. The code can be used once and expires 24 hours after it's created.

connection_code_expires_at
string <date-time>

The date and time that the connection_code expires.

created_at
string <date-time>

The date and time that the live stream was created.

delivery_method
string

The type of connection between the video source and the transcoder. The default, push, instructs the source to push the stream to the transcoder. pull instructs the transcoder to pull the video from the source. cdn uses a stream source to deliver the stream to the transcoder.

Enum: "pull" "cdn" "push"
delivery_protocols
Array of strings

An array of direct delivery protocols enabled for this live stream. By default, rtmp, rtsp, webrtc, and wowz are enabled.

object

A list of direct playback URLs for the live stream's delivery protocols. Each protocol has a URL for the source and a URL for each output rendition.

encoder
string

The video source for the live stream. Choose the type of camera or encoder you're using to connect to the Wowza Video transcoder. If your specific device isn't listed, choose ipcamera, other_rtmp, or other_rtsp.

Enum: "wowza_clearcaster" "wowza_gocoder" "wowza_streaming_engine" "media_ds" "axis" "epiphan" "file" "hauppauge" "jvc" "live_u" "matrox" "newtek_tricaster" "osprey" "sony" "telestream_wirecast" "teradek_cube" "vmix" "x_split" "ipcamera" "other_rtmp" "other_rtsp" "other_webrtc" "other_udp" "other_srt"
object (hosted_page_response_object)

Configuration of the hosted page.

id
string

The unique alphanumeric string that identifies the live stream.

low_latency
boolean

For streams whose target_delivery_protocol is hls-https. If true, turns off incoming and sort packet buffers and delivers smaller video packets to the player, which can reduce latency as long as networks can handle the increased overhead. The default is false.

name
string

A descriptive name for the live stream. Maximum 200 characters.

playback_stream_name
string

The stream name used in the direct playback URL.

object (player_response_object)

Configuration of the player.

recording
boolean

If true, creates a recording of the live stream. The recording starts when the live stream starts and stops automatically when the live stream stops.

Recordings created from a live stream capture up to eight hours of content. If a live stream runs for longer than eight hours, the most recent eight hours are recorded. To record more than eight hours of a single broadcast, stop the live stream and start it again to create multiple recordings.

Default: false.

Note: If save_asset is true, that field overrides a true recording value and the asset is saved in Asset Management.

reference_id
string

A unique, alphanumeric ID returned in transcoder webhook payloads. Setting a reference_id is useful if you have an ID in your system or application you want to associate with transcoder events that trigger webhooks. Maximum 70 characters. Can only contain: a-z A-Z 0-9 !@#$%^&*()-_+=:;,.?~|

You can't use brackets or quotation marks.

See Wowza Video Webhook Event Reference Documentation to learn about webhooks.

Available from version 1.7.

save_asset
boolean

If true, saves an MP4 recording and a VOD asset in Asset Management. The default is false. You can't set save_asset for a live stream created from re-streaming an asset in Asset Management.

Note: If this value is true, recording and/or vod_stream are set to false. You need a Wowza Video subscription to access Asset Management.

Available from version 1.8.

source_connection_information
object

Details that you can use to manually configure and connect a video source to the live stream.

stream_source_id
string

The unique alphanumeric string that identifies the stream source, if a stream source is used.

Array of objects (stream_targets)

An array of unique alphanumeric strings that identify the stream targets used by the live stream.

target_delivery_protocol
string

The type of stream being delivered from Wowza Video. The default and only valid value is hls-https.

Value: "hls-https"
transcoder_type
string

The type of transcoder, either transcoded for streams that are transcoded into adaptive bitrate renditions or passthrough for streams that aren't processed by the transcoder. The default is transcoded.

Enum: "transcoded" "passthrough"
updated_at
string <date-time>

The date and time that the live stream was updated.

use_stream_source
boolean

If true, uses a stream source to deliver the stream to Wowza Video. The default, false, pushes directly to Wowza Video.

vod_stream
boolean

If true, creates a VOD stream after the live stream ends. The default is false. VOD streams require a Fastly stream target with HLS as a delivery protocol.

Note: If save_asset is true, that field overrides a true vod_stream value and the asset is saved in Asset Management.

401

Unauthorized

422

Unprocessable Entity

post/live_streams
Request samples
application/json
{
  • "live_stream": {
    }
}
Response samples
application/json
{
  • "live_stream": {
    }
}

Fetch all live streams

This operation shows limited details for all of your live streams. For detailed information, fetch a single live stream.

Request
query Parameters
filter
string

Restricts the data that gets returned by filtering on one or more values associated with a field. Construct a filter using a two-part expression that specifies the field on which to filter and the logic to use to filter. Filters use a zero-based index.

For valid filter operators and filter fields, see How to get filtered query results with the Wowza Video REST API.

Example: filter[0][field]=state&filter[0][eq]=stopped

page
integer

Returns a paginated view of results from the HTTP request. Specify a positive integer to indicate which page of the results should be displayed. The default is 1.

For more information and examples, see Get paginated query results with the Wowza Video REST API.

per_page
integer

For use with the page parameter. Indicates how many records should be included in a page of results. A valid value is any positive integer. The default and maximum value is 1000.

Responses
200

Success

Response Schema: application/json
required
Array of objects (live_streams)
Array
created_at
string <date-time>

The date and time that the live stream was created.

id
string

The unique alphanumeric string that identifies the live stream.

name
string

A descriptive name for the live stream. Maximum 200 characters.

updated_at
string <date-time>

The date and time that the live stream was updated.

401

Unauthorized

get/live_streams
Request samples
// Using cURL
curl -H "Authorization: Bearer ${WV_JWT}" \
  
  -H "Content-Type: application/json" \
  -X "GET" \
  "${WV_HOST}/api/v1.10/live_streams"
Response samples
application/json
{
  • "live_streams": [
    ]
}

Fetch a live stream

This operation shows the details of a specific live stream.

Request
path Parameters
id
required
string

The unique alphanumeric string that identifies the live stream.

Responses
200

Success

Response Schema: application/json
required
object (live_stream)
aspect_ratio_height
integer <int32>

The height, in pixels, of the video source. Should correspond to a widescreen (16:9) or standard (4:3) aspect ratio and be divisible by 8. Combined with aspect_ratio_width, makes up the input resolution.

aspect_ratio_width
integer <int32>

The width, in pixels, of the video source. Should correspond to a widescreen (16:9) or standard (4:3) aspect ratio and be divisible by 8. Combined with aspect_ratio_height, makes up the input resolution.

asset_id
string

Only applies to live streams created from re-streaming an asset in Asset Management. The id for the asset associated with the re-streamed live stream. You can manage this asset in Asset Management.

billing_mode
string

The billing mode for the stream. The default is pay_as_you_go.

pay_as_you_go — Billed as a single event. A single event is use-based and you incur charges for the time spent streaming.

twentyfour_seven — Billed as a 24x7 channel. A 24x7 channel is unlimited stream time for one channel. This billing mode doesn't incur overages, since it's unlimited.

Enum: "pay_as_you_go" "twentyfour_seven"
broadcast_location
string (broadcast_location)

The location of your stream. Choose a location as close as possible to your video source.

Enum: "asia_pacific_australia" "asia_pacific_india" "asia_pacific_japan" "asia_pacific_singapore" "asia_pacific_s_korea" "asia_pacific_taiwan" "eu_belgium" "eu_germany" "eu_ireland" "south_america_brazil" "us_central_iowa" "us_east_s_carolina" "us_east_virginia" "us_west_california" "us_west_oregon"
closed_caption_type
string

The type of closed caption data being passed from the source. The default, none, indicates that no data is being provided. cea indicates that a CEA closed captioning data stream is being provided. on_text indicates that an onTextData closed captioning data stream is being provided. both indicates that both CEA and onTextData closed captioning data streams are being provided.

Enum: "none" "cea" "on_text" "both"
connection_code
string

A six-character, alphanumeric string that allows certain encoders, including Wowza Streaming Engine and the Wowza GoCoder app, to connect with Wowza Video. The code can be used once and expires 24 hours after it's created.

connection_code_expires_at
string <date-time>

The date and time that the connection_code expires.

created_at
string <date-time>

The date and time that the live stream was created.

delivery_method
string

The type of connection between the video source and the transcoder. The default, push, instructs the source to push the stream to the transcoder. pull instructs the transcoder to pull the video from the source. cdn uses a stream source to deliver the stream to the transcoder.

Enum: "pull" "cdn" "push"
delivery_protocols
Array of strings

An array of direct delivery protocols enabled for this live stream. By default, rtmp, rtsp, webrtc, and wowz are enabled.

object

A list of direct playback URLs for the live stream's delivery protocols. Each protocol has a URL for the source and a URL for each output rendition.

encoder
string

The video source for the live stream. Choose the type of camera or encoder you're using to connect to the Wowza Video transcoder. If your specific device isn't listed, choose ipcamera, other_rtmp, or other_rtsp.

Enum: "wowza_clearcaster" "wowza_gocoder" "wowza_streaming_engine" "media_ds" "axis" "epiphan" "file" "hauppauge" "jvc" "live_u" "matrox" "newtek_tricaster" "osprey" "sony" "telestream_wirecast" "teradek_cube" "vmix" "x_split" "ipcamera" "other_rtmp" "other_rtsp" "other_webrtc" "other_udp" "other_srt"
object (hosted_page_response_object)

Configuration of the hosted page.

id
string

The unique alphanumeric string that identifies the live stream.

low_latency
boolean

For streams whose target_delivery_protocol is hls-https. If true, turns off incoming and sort packet buffers and delivers smaller video packets to the player, which can reduce latency as long as networks can handle the increased overhead. The default is false.

name
string

A descriptive name for the live stream. Maximum 200 characters.

playback_stream_name
string

The stream name used in the direct playback URL.

object (player_response_object)

Configuration of the player.

recording
boolean

If true, creates a recording of the live stream. The recording starts when the live stream starts and stops automatically when the live stream stops.

Recordings created from a live stream capture up to eight hours of content. If a live stream runs for longer than eight hours, the most recent eight hours are recorded. To record more than eight hours of a single broadcast, stop the live stream and start it again to create multiple recordings.

Default: false.

Note: If save_asset is true, that field overrides a true recording value and the asset is saved in Asset Management.

reference_id
string

A unique, alphanumeric ID returned in transcoder webhook payloads. Setting a reference_id is useful if you have an ID in your system or application you want to associate with transcoder events that trigger webhooks. Maximum 70 characters. Can only contain: a-z A-Z 0-9 !@#$%^&*()-_+=:;,.?~|

You can't use brackets or quotation marks.

See Wowza Video Webhook Event Reference Documentation to learn about webhooks.

Available from version 1.7.

save_asset
boolean

If true, saves an MP4 recording and a VOD asset in Asset Management. The default is false. You can't set save_asset for a live stream created from re-streaming an asset in Asset Management.

Note: If this value is true, recording and/or vod_stream are set to false. You need a Wowza Video subscription to access Asset Management.

Available from version 1.8.

source_connection_information
object

Details that you can use to manually configure and connect a video source to the live stream.

stream_source_id
string

The unique alphanumeric string that identifies the stream source, if a stream source is used.

Array of objects (stream_targets)

An array of unique alphanumeric strings that identify the stream targets used by the live stream.

target_delivery_protocol
string

The type of stream being delivered from Wowza Video. The default and only valid value is hls-https.

Value: "hls-https"
transcoder_type
string

The type of transcoder, either transcoded for streams that are transcoded into adaptive bitrate renditions or passthrough for streams that aren't processed by the transcoder. The default is transcoded.

Enum: "transcoded" "passthrough"
updated_at
string <date-time>

The date and time that the live stream was updated.

use_stream_source
boolean

If true, uses a stream source to deliver the stream to Wowza Video. The default, false, pushes directly to Wowza Video.

vod_stream
boolean

If true, creates a VOD stream after the live stream ends. The default is false. VOD streams require a Fastly stream target with HLS as a delivery protocol.

Note: If save_asset is true, that field overrides a true vod_stream value and the asset is saved in Asset Management.

401

Unauthorized

403

Forbidden

404

Not Found

410

Gone

get/live_streams/{id}
Request samples
// Using cURL
curl -H "Authorization: Bearer ${WV_JWT}" \
  
  -H "Content-Type: application/json" \
  -X "GET" \
  "${WV_HOST}/api/v1.10/live_streams/2adffc17"
Response samples
application/json
{
  • "live_stream": {
    }
}

Update a live stream

This operation updates a live stream.

Request
path Parameters
id
required
string

The unique alphanumeric string that identifies the live stream.

Request Body schema: application/json
required

Provide the details of the live stream to update in the body of the request.

required
object (live_stream)
aspect_ratio_height
integer <int32>

The height, in pixels, of the video source. Should correspond to a widescreen (16:9) or standard (4:3) aspect ratio and be divisible by 8. Combined with aspect_ratio_width, makes up the input resolution.

Example: "aspect_ratio_height": 1080

aspect_ratio_width
integer <int32>

The width, in pixels, of the video source. Should correspond to a widescreen (16:9) or standard (4:3) aspect ratio and be divisible by 8. Combined with aspect_ratio_height, makes up the input resolution.

Example: "aspect_ratio_width": 1920

encoder
string

The video source for the live stream. Choose the type of camera or encoder you're using to connect to the Wowza Video transcoder. If your specific device isn't listed, choose ipcamera, other_rtmp, or other_rtsp.

Example: "encoder": "other_rtmp"

Enum: "wowza_clearcaster" "wowza_gocoder" "wowza_streaming_engine" "media_ds" "axis" "epiphan" "file" "hauppauge" "jvc" "live_u" "matrox" "newtek_tricaster" "osprey" "sony" "telestream_wirecast" "teradek_cube" "vmix" "x_split" "ipcamera" "other_rtmp" "other_rtsp" "other_webrtc" "other_udp" "other_srt"
name
string

A descriptive name for the live stream. Maximum 200 characters.

Example: "name": "My Updated Live Stream"

closed_caption_type
string

The type of closed caption data being passed from the source. The default, none, indicates that no data is being provided. cea indicates that a CEA closed captioning data stream is being provided. on_text indicates that an onTextData closed captioning data stream is being provided. both indicates that both CEA and onTextData closed captioning data streams are being provided.

Example: "closed_caption_type": "cea"

Enum: "none" "cea" "on_text" "both"
delivery_method
string

The type of connection between the video source and the transcoder. The default, push, instructs the source to push the stream to the transcoder. pull instructs the transcoder to pull the video from the source. cdn uses a stream source to deliver the stream to the transcoder.

Example: "delivery_method": "pull"

Enum: "pull" "cdn" "push"
delivery_protocols
Array of strings

An array of direct delivery protocols enabled for this live stream. By default, rtmp, rtsp, webrtc, and wowz are enabled.

Example: See response body sample

disable_authentication
boolean

Authentication is required by default for RTMP and RTSP push connections from a video source to Wowza Video. Specify true to disable authentication with the video source.

Example: "disable_authentication": false

object (hosted_page_request_object)

Configuration of the hosted page.

password
string

A password for authenticating an RTMP or RTSP push connection. Can contain only uppercase and lowercase letters; numbers; and the period (.), underscore (_), and hyphen (-) characters. No other special characters can be used.

Example: "password": 68332313

object (player_request_object)

Configuration of the player.

recording
boolean

If true, creates a recording of the live stream. The recording starts when the live stream starts and stops automatically when the live stream stops.

Recordings created from a live stream capture up to eight hours of content. If a live stream runs for longer than eight hours, the most recent eight hours are recorded. To record more than eight hours of a single broadcast, stop the live stream and start it again to create multiple recordings.

Default: false

Note: If save_asset is true, that field overrides a true recording value and the asset is saved in Asset Management.

Example: "recording": true

reference_id
string

A unique, alphanumeric ID returned in transcoder webhook payloads. Setting a reference_id is useful if you have an ID in your system or application you want to associate with transcoder events that trigger webhooks. Maximum 70 characters. Can only contain: a-z A-Z 0-9 !@#$%^&*()-_+=:;,.?~|

You can't use brackets or quotation marks.

See Wowza Video Webhook Event Reference Documentation to learn about webhooks.

Available from version 1.7.

Example: "reference_id": "mySystemID_01"

save_asset
boolean

If true, saves an MP4 recording and a VOD asset in Asset Management. The default is false. You can't set save_asset for a live stream created from re-streaming an asset in Asset Management

Note: If this value is true, recording and/or vod_stream are set to false. You need a Wowza Video subscription to access Asset Management.

Available from version 1.8.

Example: "save_asset": true

source_url
string

For the delivery_method pull or encoder file.

For pull, enter the URL of an IP camera or video encoder using an RTMP and RTSP pull connection to Wowza Video. Consult the camera or encoder documentation for the URL syntax.

For file, enter the source file URL, including the protocol (http, https, gs, s3).

Example: "source_url": "xyz.streamlock.net/vod/mp4:Movie.mov"

target_delivery_protocol
string

The type of stream being delivered from Wowza Video. The default and only valid value is hls-https.

Example: "target_delivery_protocol": "hls-https"

Value: "hls-https"
use_stream_source
boolean

If true, uses a stream source to deliver the stream to Wowza Video. The default, false, pushes directly to Wowza Video.

Example: "use_stream_source": false

username
string

A user name for authenticating an RTMP or RTSP push connection. Can contain only uppercase and lowercase letters; numbers; and the period (.), underscore (_), and hyphen (-) characters. No other special characters can be used.

Example: "username": "client2"

vod_stream
boolean

If true, creates a VOD stream after the live stream ends. The default is false.VOD streams require a Fastly stream target with HLS as a delivery protocol.

Note: If save_asset is true, that field overrides a true vod_stream value and the asset is saved in Asset Management.

Example: "vod_stream": true

Responses
200

Success

Response Schema: application/json
required
object (live_stream)
aspect_ratio_height
integer <int32>

The height, in pixels, of the video source. Should correspond to a widescreen (16:9) or standard (4:3) aspect ratio and be divisible by 8. Combined with aspect_ratio_width, makes up the input resolution.

aspect_ratio_width
integer <int32>

The width, in pixels, of the video source. Should correspond to a widescreen (16:9) or standard (4:3) aspect ratio and be divisible by 8. Combined with aspect_ratio_height, makes up the input resolution.

asset_id
string

Only applies to live streams created from re-streaming an asset in Asset Management. The id for the asset associated with the re-streamed live stream. You can manage this asset in Asset Management.

billing_mode
string

The billing mode for the stream. The default is pay_as_you_go.

pay_as_you_go — Billed as a single event. A single event is use-based and you incur charges for the time spent streaming.

twentyfour_seven — Billed as a 24x7 channel. A 24x7 channel is unlimited stream time for one channel. This billing mode doesn't incur overages, since it's unlimited.

Enum: "pay_as_you_go" "twentyfour_seven"
broadcast_location
string (broadcast_location)

The location of your stream. Choose a location as close as possible to your video source.

Enum: "asia_pacific_australia" "asia_pacific_india" "asia_pacific_japan" "asia_pacific_singapore" "asia_pacific_s_korea" "asia_pacific_taiwan" "eu_belgium" "eu_germany" "eu_ireland" "south_america_brazil" "us_central_iowa" "us_east_s_carolina" "us_east_virginia" "us_west_california" "us_west_oregon"
closed_caption_type
string

The type of closed caption data being passed from the source. The default, none, indicates that no data is being provided. cea indicates that a CEA closed captioning data stream is being provided. on_text indicates that an onTextData closed captioning data stream is being provided. both indicates that both CEA and onTextData closed captioning data streams are being provided.

Enum: "none" "cea" "on_text" "both"
connection_code
string

A six-character, alphanumeric string that allows certain encoders, including Wowza Streaming Engine and the Wowza GoCoder app, to connect with Wowza Video. The code can be used once and expires 24 hours after it's created.

connection_code_expires_at
string <date-time>

The date and time that the connection_code expires.

created_at
string <date-time>

The date and time that the live stream was created.

delivery_method
string

The type of connection between the video source and the transcoder. The default, push, instructs the source to push the stream to the transcoder. pull instructs the transcoder to pull the video from the source. cdn uses a stream source to deliver the stream to the transcoder.

Enum: "pull" "cdn" "push"
delivery_protocols
Array of strings

An array of direct delivery protocols enabled for this live stream. By default, rtmp, rtsp, webrtc, and wowz are enabled.

object

A list of direct playback URLs for the live stream's delivery protocols. Each protocol has a URL for the source and a URL for each output rendition.

encoder
string

The video source for the live stream. Choose the type of camera or encoder you're using to connect to the Wowza Video transcoder. If your specific device isn't listed, choose ipcamera, other_rtmp, or other_rtsp.

Enum: "wowza_clearcaster" "wowza_gocoder" "wowza_streaming_engine" "media_ds" "axis" "epiphan" "file" "hauppauge" "jvc" "live_u" "matrox" "newtek_tricaster" "osprey" "sony" "telestream_wirecast" "teradek_cube" "vmix" "x_split" "ipcamera" "other_rtmp" "other_rtsp" "other_webrtc" "other_udp" "other_srt"
object (hosted_page_response_object)

Configuration of the hosted page.

id
string

The unique alphanumeric string that identifies the live stream.

low_latency
boolean

For streams whose target_delivery_protocol is hls-https. If true, turns off incoming and sort packet buffers and delivers smaller video packets to the player, which can reduce latency as long as networks can handle the increased overhead. The default is false.

name
string

A descriptive name for the live stream. Maximum 200 characters.

playback_stream_name
string

The stream name used in the direct playback URL.

object (player_response_object)

Configuration of the player.

recording
boolean

If true, creates a recording of the live stream. The recording starts when the live stream starts and stops automatically when the live stream stops.

Recordings created from a live stream capture up to eight hours of content. If a live stream runs for longer than eight hours, the most recent eight hours are recorded. To record more than eight hours of a single broadcast, stop the live stream and start it again to create multiple recordings.

Default: false.

Note: If save_asset is true, that field overrides a true recording value and the asset is saved in Asset Management.

reference_id
string

A unique, alphanumeric ID returned in transcoder webhook payloads. Setting a reference_id is useful if you have an ID in your system or application you want to associate with transcoder events that trigger webhooks. Maximum 70 characters. Can only contain: a-z A-Z 0-9 !@#$%^&*()-_+=:;,.?~|

You can't use brackets or quotation marks.

See Wowza Video Webhook Event Reference Documentation to learn about webhooks.

Available from version 1.7.

save_asset
boolean

If true, saves an MP4 recording and a VOD asset in Asset Management. The default is false. You can't set save_asset for a live stream created from re-streaming an asset in Asset Management.

Note: If this value is true, recording and/or vod_stream are set to false. You need a Wowza Video subscription to access Asset Management.

Available from version 1.8.

source_connection_information
object

Details that you can use to manually configure and connect a video source to the live stream.

stream_source_id
string

The unique alphanumeric string that identifies the stream source, if a stream source is used.

Array of objects (stream_targets)

An array of unique alphanumeric strings that identify the stream targets used by the live stream.

target_delivery_protocol
string

The type of stream being delivered from Wowza Video. The default and only valid value is hls-https.

Value: "hls-https"
transcoder_type
string

The type of transcoder, either transcoded for streams that are transcoded into adaptive bitrate renditions or passthrough for streams that aren't processed by the transcoder. The default is transcoded.

Enum: "transcoded" "passthrough"
updated_at
string <date-time>

The date and time that the live stream was updated.

use_stream_source
boolean

If true, uses a stream source to deliver the stream to Wowza Video. The default, false, pushes directly to Wowza Video.

vod_stream
boolean

If true, creates a VOD stream after the live stream ends. The default is false. VOD streams require a Fastly stream target with HLS as a delivery protocol.

Note: If save_asset is true, that field overrides a true vod_stream value and the asset is saved in Asset Management.

401

Unauthorized

403

Forbidden

404

Not Found

410

Gone

422

Unprocessable Entity

patch/live_streams/{id}
Request samples
application/json
{
  • "live_stream": {
    }
}
Response samples
application/json
{
  • "live_stream": {
    }
}

Delete a live stream

This operation deletes a live stream, including all assigned outputs and targets.

Note: You can't remove live streams that have an asset_id. Assets must be removed by sending a DEL request to the /assets endpoint.

Request
path Parameters
id
required
string

The unique alphanumeric string that identifies the live stream.

Responses
204

No Content

401

Unauthorized

403

Forbidden

404

Not Found

410

Gone

422

Unprocessable Entity

delete/live_streams/{id}
Request samples
// Using cURL
curl -H "Authorization: Bearer ${WV_JWT}" \
  
  -H "Content-Type: application/json" \
  -X "DELETE" \
  "${WV_HOST}/api/v1.10/live_streams/2adffc17"
Response samples
application/json
{
  • "Example Response 1": {
    },
  • "Example Response 2": {
    },
  • "Example Response 3": {
    },
  • "Example Response 4": {
    },
  • "Example Response 5": {
    },
  • "Example Response 6": {
    },
  • "Example Response 7": {
    },
  • "Example Response 8": {
    },
  • "Example Response 9": {
    }
}

Start a live stream

This operation starts a live stream.

Request
path Parameters
id
required
string

The unique alphanumeric string that identifies the live stream.

Responses
200

Success

Response Schema: application/json
required
object (live_stream)
state
string

The state of the live stream.

Enum: "started" "stopped" "starting" "stopping" "resetting"
401

Unauthorized

403

Forbidden

404

Not Found

410

Gone

422

Unprocessable Entity

put/live_streams/{id}/start
Request samples
// Using cURL
curl -H "Authorization: Bearer ${WV_JWT}" \
  
  -H "Content-Type: application/json" \
  -X "PUT" \
  "${WV_HOST}/api/v1.10/live_streams/2adffc17/start"
Response samples
application/json
{
  • "live_stream": {
    }
}

Stop a live stream

This operation stops a live stream.

Request
path Parameters
id
required
string

The unique alphanumeric string that identifies the live stream.

Responses
200

Success

Response Schema: application/json
required
object (live_stream)
state
string

The state of the live stream.

Enum: "started" "stopped" "starting" "stopping" "resetting"
401

Unauthorized

403

Forbidden

404

Not Found

410

Gone

422

Unprocessable Entity

put/live_streams/{id}/stop
Request samples
// Using cURL
curl -H "Authorization: Bearer ${WV_JWT}" \
  
  -H "Content-Type: application/json" \
  -X "PUT" \
  "${WV_HOST}/api/v1.10/live_streams/2adffc17/stop"
Response samples
application/json
{
  • "live_stream": {
    }
}

Reset a live stream

This operation resets a live stream.

Request
path Parameters
id
required
string

The unique alphanumeric string that identifies the live stream.

Responses
200

Success

Response Schema: application/json
required
object (live_stream)
state
string

The state of the live stream.

Enum: "started" "stopped" "starting" "stopping" "resetting"
401

Unauthorized

403

Forbidden

404

Not Found

410

Gone

422

Unprocessable Entity

put/live_streams/{id}/reset
Request samples
// Using cURL
curl -H "Authorization: Bearer ${WV_JWT}" \
  
  -H "Content-Type: application/json" \
  -X "PUT" \
  "${WV_HOST}/api/v1.10/live_streams/2adffc17/reset"
Response samples
application/json
{
  • "live_stream": {
    }
}

Regenerate the connection code for a live stream

This operation regenerates the connection code of a live stream.

Request
path Parameters
id
required
string

The unique alphanumeric string that identifies the live stream.

Responses
200

Success

Response Schema: application/json
required
object (live_stream)
connection_code
string

A six-character, alphanumeric string that allows certain encoders, including Wowza Streaming Engine and the Wowza GoCoder app, to connect with Wowza Video. The code can be used once and expires 24 hours after it's created.

401

Unauthorized

403

Forbidden

404

Not Found

410

Gone

422

Unprocessable Entity

put/live_streams/{id}/regenerate_connection_code
Request samples
// Using cURL
curl -H "Authorization: Bearer ${WV_JWT}" \
  
  -H "Content-Type: application/json" \
  -X "PUT" \
  "${WV_HOST}/api/v1.10/live_streams/2adffc17/regenerate_connection_code"
Response samples
application/json
{
  • "live_stream": {
    }
}

Fetch the thumbnail URL of a live stream

This operation shows the thumbnail URL of a started live stream.

Request
path Parameters
id
required
string

The unique alphanumeric string that identifies the live stream.

Responses
200

Success

Response Schema: application/json
required
object (live_stream)
thumbnail_url
string

The URL to receive the preview thumbnail.

401

Unauthorized

403

Forbidden

404

Not Found

410

Gone

get/live_streams/{id}/thumbnail_url
Request samples
// Using cURL
curl -H "Authorization: Bearer ${WV_JWT}" \
  
  -H "Content-Type: application/json" \
  -X "GET" \
  "${WV_HOST}/api/v1.10/live_streams/2adffc17/thumbnail_url"
Response samples
application/json

Fetch the state of a live stream

This operation shows the current state of a live stream.

Request
path Parameters
id
required
string

The unique alphanumeric string that identifies the live stream.

Responses
200

Success

Response Schema: application/json
required
object (live_stream)
ip_address
string

The IP address of the live stream instance. If the live stream state is anything other than started, the ip_address is 0.0.0.0.

state
string

The state of the live stream.

Enum: "started" "stopped" "starting" "stopping" "resetting"
401

Unauthorized

403

Forbidden

404

Not Found

410

Gone

get/live_streams/{id}/state
Request samples
// Using cURL
curl -H "Authorization: Bearer ${WV_JWT}" \
  
  -H "Content-Type: application/json" \
  -X "GET" \
  "${WV_HOST}/api/v1.10/live_streams/2adffc17/state"
Response samples
application/json
{
  • "live_stream": {
    }
}

Fetch metrics for an active live stream

This operation returns a hash of metrics keys, each of which identifies a status, text description, unit, and value.

Request
path Parameters
id
required
string

The unique alphanumeric string that identifies the live stream.

Responses
200

Success

Response Schema: application/json
required
object (shm_metrics)
object (audio_codec_metric)
object (bits_in_rate_metric)
object (bits_out_rate_metric)
object (bytes_in_rate_metric)
object (bytes_out_rate_metric)
object (configured_bytes_out_rate_metric)
object (connected_metric)
object (frame_size_metric)
object (frame_rate_metric)
object (height_metric)
object (keyframe_interval_metric)
object (stream_target_status_OUTPUTIDX_STREAMTARGETIDX_metric)
object (unique_views_metric)

The number of unique viewers in the last 5 minutes.

Note: This parameter only returns data for Fastly stream targets.

object (video_codec_metric)
object (width_metric)
401

Unauthorized

403

Forbidden

404

Not Found

410

Gone

get/live_streams/{id}/stats
Request samples
// Using cURL
curl -H "Authorization: Bearer ${WV_JWT}" \
  
  -H "Content-Type: application/json" \
  -X "GET" \
  "${WV_HOST}/api/v1.10/live_streams/2adffc17/stats"
Response samples
application/json
{
  • "live_stream": {
    }
}