# Release notes ## Versions At this time, API versions have the following statuses: | | | | --- | --- | | **API version** | **Status** | | 2.0 | Current | | 1.11 | Supported 2 | | 1.10 | Deprecated | See [Wowza Video REST API lifecycle management](/docs/wowza-video/about-the-rest-api/lifecycle/api-lifecycle) for more information about API versions and statuses. ## Changelog ### August 14, 2025 ##### Version 2.0 We've added an optional `force` parameter to hard delete a stream target. When set to `true`, the endpoint first removes the stream target from any associated transcoder and then deletes it. By default, the endpoint deletes the stream target only if it is not connected to a transcoder. - `DELETE /stream_targets/custom/{id}` - `DELETE /stream_targets/wowza_cdn/{id}` ### August 7, 2025 ##### Version 2.0 We’ve expanded our QoE analytics with new error-focused endpoints to help you analyze playback quality issues with greater precision. - `GET /analytics/qoe/error_density/account` - `GET /analytics/qoe/error_density/media/{id}` - `GET /analytics/qoe/error_free_sessions/account` - `GET /analytics/qoe/error_free_sessions/media/media_ids` - `GET /analytics/qoe/errors/detail/media/error_code` - `GET /analytics/qoe/errors/detail/message/error_code` - `GET /analytics/qoe/errors/detail/resources/error_code` - `GET /analytics/qoe/errors/drilldown` - `GET /analytics/qoe/errors/drilldown/trend/error_code` These endpoints offer: - Account-wide and media-level error density insights - Error-free session metrics - Detailed error reporting by error code and video source - Error trend visualization and drilldown ### May 15, 2025 ##### Version 2.0 You can now retrieve popularity and video start time analytics for your real-time streams (RTS) by passing an RTS stream ID to the supported endpoints below: - `GET /analytics/popularity/live_streams/{id}` - `GET /analytics/qoe/video_start_time/media/{id}` - `GET /analytics/qoe/video_start_time/drilldown` - `GET /analytics/qoe/video_start_time/drilldown_trend/{ids}` ### May 14, 2025 ##### Version 2.0 You can now use token authentication when distributing valuable or sensitive video content to audiences to ensure that only authorized users can access the content within the intended application. This allows for protection of intellectual property, compliance with regulations, and the ability to maintain control over content distribution. Examples of when this security may be important include: - For healthcare providers to ensure that medical training videos are only accessible within their applications. - For online education platforms to protect their course content from unauthorized sharing. - For entertainment streaming services that require the ability to control access to their exclusive content. - For corporate communicators who need to restrict access to confidential video updates. - For sports broadcasters to enforce regional restrictions on live game streams. You can select from the following enums that are part of the `playback_token_behavior` parameter using the `/videos` endpoints to configure the level of tokenization you need: - `NO_TOKEN`: Video files are accessible and can be downloaded and played by anyone at any time. This is the default. - `BASIC_TOKEN`: This enum automatically creates tokenized video URLs. The tokenization makes it hard for a viewer to extract the video URL and store it for usage in unintended applications over time since the embed URL, which has the token as part of the URL, is only playable for 48 hours. The token auto renews after 48 hours when used in the intended application only. - `FOLLOW_DEFAULT`: The token behavior is based on the Default Playback Token Behavior setting you selected for your Wowza Account for all videos. - `ADVANCED_TOKEN`: You add the stream’s JS-embed code and a token to your player site to provide tokenization. The protections are similar to those for the Basic Token option except you customize the time limit, geogratphical limits, etc. during token creation. Before selecting to use the `ADVANCED_TOKEN`, you must do one of the following: - Generate a playback token key via the Wowza Video API, then customize and generate a token via the Wowza Video 2.0 API to add to your player site. You’ll need the key to create and sign the token. - Generate a key via the Wowza Video 2.0 API, then customize and generate a standard common access (CAT) token through the means you usually use to create tokens to add to your site. You’ll need the key to create and sign the token. The following new endpoints are in the Wowza Video 2.0 API for playback token key and playback token tasks: - `POST /playback_tokens/keys` - `GET /playback_tokens/keys` - `DELETE /playback_tokens/keys/{id}` - `POST /playback_tokens` ### March 25, 2025 ##### Version 2.0 In Wowza Video, Quality of Experience (QoE) metrics are key performance indicators that measure aspects of video streaming from the viewer’s perspective. These metrics, video start time, rebuffer count, and rebuffer time, help evaluate how effectively video content is delivered and how viewers experience the stream. We now offer the following endpoints, as part of QoE metrics, that allow you to drill down into your key QoE metrics by trend or non-trend values. - `GET /analytics/qoe/rebuffer_count/drilldown` - `GET /analytics/qoe/rebuffer_count/drilldown_trend/{id}` - `GET /analytics/qoe/rebuffer_time/drilldown` - `GET /analytics/qoe/rebuffer_time/drilldown_trend/{id}` - `GET /analytics/qoe/video_start_time/drilldown` - `GET /analytics/qoe/video_start_time/drilldown_trend/{id}` A trend response includes an array of trend data for each stream with sample times and its QoE metric over the timeframe you request. For example, if you request a timeframe between 0-8 hours, sample data will be returned per minute with its related video start time by individual live stream or video. A non-trend response includes averages of the QoE metric for each live stream or video. Info Quality of Experience metrics is a premium feature available exclusively to Wowza Video subscribers with an annual subscription. To access this feature for enhanced streaming insights, [contact our sales team](https://www.wowza.com/contact?utm_campaign=24Q4-QOE-CUS-HS&utm_medium=banner&utm_source=wowza&utm_content=docs/). ### February 19, 2025 ##### Version 2.0 You can now add SRT PassPhrase security in Wowza Video to a transcoder with an incoming SRT stream from your device or encoder to Wowza Video. When setting up an SRT stream, you may want to safeguard it against unauthorized access. To achieve this, you can enable a password to protect the connection to the transcoder for these types of streams. The password protection secures the data payload of SRT live streams, ensuring that the transmitted content is encrypted and safeguarded against unauthorized interception during its journey across the network. The following endpoints include the new security option: - Post a property for a transcoder - Fetch a transcoder's properties - Fetch a property for a transcoder `srt` is a new section and `passPhrase` is its key. The value for the `passPhrase` can be a string between 10-79 characters in length. ### February 11, 2025 ##### Version 2.0 - We've added `url_suffix` to the API reference. This is a path you create that is appended to the end of the playback URL to make it a valid URL, to have playback with the Wowza Video Flowplayer. `url_suffix` can be found in the following endpoints: - Create a Wowza CDN stream target request and response. - Get a Wowza CDN stream target by id response. - Update a Wowza CDN stream target request and response. - Get a stream target by id response. When you use a Wowza Streaming Engine instance custom origin URL on a Wowza CDN stream target with HLS playback, you must add the URL suffix to be able to have playback with our Wowza Video Flowplayer. ### February 7, 2025 ##### Version 2.0 - We've added a 422 error message response when a user attempts to update a transcoder by changing the `broadcast location` when the transcoder is configured to autostart. ### January 24, 2025 ##### Version 2.0 - We've added `primary_stream_target` to the Wowza Video 2.0 API reference. It's a single stream target that automatically gets created for all output renditions (the ABR ladder) created when you create a live stream through a live stream flow. The `primary_stream_target` cannot be deleted or reassigned. - We've also added a 422 error that gets returned when you try to delete a `primary_stream_target` from an output. ### December 23, 2024 ##### Version 2.0 - You can now clip and stitch live streams in Wowza Video. Clipping lets you create shorter clips from existing live streams, while stitching combines multiple live streams or clips into one video. - `POST /clipping` ### December 12, 2024 ##### Version 2.0 - We've changed the response parameter, `target_state`. A `target_state` can now be either `enabled` or `disabled` instead of `active` or `disabled`. The parameter displays in the response when the transcoder or live stream associated with the stream target is running and receiving a stream. If the `target_state` is `enabled`, it means the stream target is enabled and streaming video to its destination. `Disabled` means the stream target is disabled and is not streaming video to its destination. ### December 6, 2024 ##### Version 2.0 - There is now a new endpoint to `GET /stream_targets/{id}` in Wowza Video. This fetches any of the four stream targets available in Wowza Video: - Wowza CDN - Custom - Facebook Live - LinkedIn Live The only way to fetch a stream target by id previously was to use an endpoint that was stream target type specific like `GET /stream_targets/custom/{id}`. - You can now add a countdown timer to your live stream so that viewers see a countdown to your live stream via our Wowza Flowplayer player. We have added the following optional parameters: - `countdown` - `countdown_at` - `countdown_timezone` The following endpoints contain the new parameters: - `POST /live_streams` - `GET /live_streams/{id}` - `PATCH /live_streams/{id}` ### November 21, 2024 ##### Version 2.0 We’re excited to introduce the Quality of Experience (QoE) metrics in Wowza Video! These new insights are designed to help you analyze the playback performance of your video streams for an optimal viewing experience. The QoE metrics include: - Rebuffer count – Tracks the number of times a video pauses due to buffering. - Rebuffer time – Indicates the duration of playback interruptions caused by buffering. - Video start time – Measures the time it takes for a video to start playing after a user initiates playback. Query the following endpoints to get the QoE metrics for all the live streams and videos within your account: - `GET /analytics/qoe/rebuffer_count/account` - `GET /analytics/qoe/rebuffer_time/account` - `GET /analytics/qoe/video_start_time/account` Query the following endpoints to get the QoE metrics for specific live streams or videos: - `GET /analytics/qoe/rebuffer_count/media/{id}` - `GET /analytics/qoe/rebuffer_time/media/{id}` - `GET /analytics/qoe/video_start_time/media/{id}` Info Quality of Experience (QoE) metrics data is available starting from November 7, 2024. You can fetch metrics data for streaming events occurring on or after this date using the QoE endpoints. ### November 12, 2024 ##### Version 2.0 - We've deleted `akamai` as a stream source `type` from the following endpoint's response. Only Wowza stream sources are returned now. - `GET /stream_sources` - We've added the new response parameter, `target_state`. The parameter displays in the response when the transcoder or live stream associated with the stream target is running and receiving a stream. If the `target_state` is `active`, it means the stream target is enabled and streaming video to its destination. `Disabled` means the stream target is disabled and is not streaming video to its destination. The following endpoints contain the parameter: - `POST /transcoders` - `GET /transcoders/{id}` - `PATCH /transcoders/{id}` - `POST /transcoders/{transcoder_id}/outputs` - `GET /transcoders/{transcoder_id}/outputs` - `GET /transcoders/{transcoder_id}/outputs/{id}` - `PATCH /transcoders/{transcoder_id}/outputs/{id}` - `POST /transcoders/{transcoder_id}/outputs/{output_id}/output_stream_targets` - `GET /transcoders/{transcoder_id}/outputs/{output_id}/output_stream_targets` - `GET /transcoders/{transcoder_id}/outputs/{output_id}/output_stream_targets/{stream_target_id}` - `PATCH /transcoders/{transcoder_id}/outputs/{output_id}/output_stream_targets/{stream_target_id}` ### November 7, 2024 ##### Version 2.0 We've added support for webhooks in the latest version of Wowza Video, enabling real-time notifications for specific events in your streaming workflows. Webhooks include events for: - Live stream transcoders - Real-time streams - Videos info If you upgrade from the legacy version of Wowza Video, existing webhooks will not carry over. You must create new webhooks after migrating to the latest version. For more information, see [Wowza Video Webhook Event Reference](https://developer.wowza.com/docs/wowza-video/reference/webhooks/webhook-event-reference/) and [Receive Wowza Video Event Notifications with Webhooks](https://developer.wowza.com/docs/wowza-video/reference/webhooks/receive-wowza-video-event-notifications-with-webhooks/). info The webhooks feature is currently offered **under limited availability**, meaning the functionality is available to select Wowza Video users. If you need this functionality, please email us at customerservice@wowza.com. ### November 6, 2024 ##### Version 2.0 We've added `transcoders` as a response parameter for the following endpoints: - `GET /stream_sources/wowza/{id}` - `PATCH /stream_sources/wowza/{id}` The parameter lists information for all transcoders associated with a Wowza stream source. ### November 1, 2024 ##### Version 2.0 We've added `categories` as a query parameter to the `GET /videos` endpoint which returns all videos in the specific categories. ### October 29, 2024 We've added a tutorial to better assist you with using our `/categories` endpoints. This tutorial walks you through how to query endpoints to categorize and subcategorize your videos. For more information, see [Organize videos using categories in Wowza Video](https://developer.wowza.com/docs/wowza-video/guides/videos/organize-videos-using-categories/). ### October 18, 2024 - We've removed the `stream_smoother` parameter from the response for the following endpoints: - `POST /transcoders` - `GET /transcoders/{id}` - `PATCH /transcoders/{id}` ### October 17, 2024 - We've added a new endpoint which allows you to clip and stitch videos. Clipping lets you create shorter clips from existing videos, while stitching combines multiple videos or clips into one. - `POST /clipping` - We've added a tutorial to better assist you with using our new clipping endpoint. This tutorial walks you through how to query this endpoint to create clips from existing videos. - [Clip and stitch videos in Wowza Video](https://developer.wowza.com/docs/wowza-video/guides/videos/clip-and-stitch-a-video/) ### September 19, 2024 - We've added `flowplayer` to the following endpoints: - `GET /live_streams/{id}` - `GET /real_time/{id}` - We've added an `assignable` query parameter to the endpoint below. `/stream_targets?assignable=true` returns all stream targets assignable to an output. - `GET /stream_targets` ### September 18, 2024 **API Versioned** The REST API has been versioned: - **Current (v2.0)** - Kept v2.0 as the base path for the current version of the API. - **v1.12** - Established v1.12 as discontinued. A discontinued version is no longer accessible. We created the v1.12 beta when v1.11 moved to current to facilitate the development process. While some changes related to real-time streams originated in v1.12, those changes are also present in v2.0. You should go directly to 2.0 when you’re ready to upgrade from v1.11. - **Supported 2 (v1.11)** - Established v1.11 as an older supported version of the API. The second supported version is no longer part of our active code base and the functionality is frozen. This version is offered as a convenience as you plan and execute your migration to the current version. - **Deprecated (v1.10)** - Established v1.10 as deprecated and it is no longer guaranteed to work in production environments. - **Discontinued (v1.9)** - Established v1.9 as discontinued. A discontinued version is no longer accessible. This stage was formerly known as **Sunset**. ### September 13, 2024 - We’ve added `type` and `delete_restrictions` for outputs to the following endpoints: - `POST /transcoders` - `GET /transcoders/{id}` - `PATCH /transcoders/{id}` - `POST /transcoders/{transcoder_id}/outputs` - `GET /transcoders/{transcoder_id}/outputs` - `GET /transcoders/{transcoder_id}/outputs/{id}` - `PATCH /transcoders/{transcoder_id}/outputs/{id}` - We now have error code messaging that explains why you can't delete an output. This affects the following endpoint: - `DELETE transcoders/{transcoder_id}/outputs/{id}` ### August 27, 2024 We've added `ad_insertion_points` to the following endpoints to insert time-specific ad positions in videos which enables a better viewing experience and advertising opportunity. - `POST /videos` - `GET /videos/{id}` - `PATCH /videos/{id}` - `PUT /videos/{id}` ### August 16, 2024 - Now, when you create an animated preview through the Wowza Video user interface, an MP4 animated preview file is generated along with the usual WebP file. Use the `GET /videos/{id}` endpoint to return the MP4 animated preview URL for a specified video, then use it on your own client-side code base for animation purposes. ### June 27, 2024 - We've added `time_zone`, a query parameter to the following endpoints. The `time_zone` parameter returns viewers analytics data in the requested time zone. - `GET /analytics/viewers/account` - `GET /analytics/viewers/live_streams/{id}` - `GET /analytics/viewers/vod_streams/{id}` - `GET /analytics/viewers/stream_targets/{id}` - `GET /analytics/viewers/account/total` - `GET /analytics/viewers/live_streams/{id}/total` - `GET /analytics/viewers/vod_streams/{id}/total` - `GET /analytics/viewers/stream_targets/{id}/total` - For viewer analytics trend data, we've extended the minute granularity to 8 hours for the following endpoints: - `GET /analytics/viewers/live_streams/{id}` - `GET /analytics/viewers/vod_streams/{id}` - `GET /analytics/viewers/stream_targets/{id}` ### June 26, 2024 We'll soon be replacing the existing IP addresses for Wowza CDN on Fastly stream targets. While the change hasn't gone into effect yet, if you stream directly to Wowza CDN from Wowza Streaming Engine, you should add these IP addresses to your firewall rules so your integration continues to work seamlessly when the change occurs. When we've completed the transition to these new IP addresses, you should remove the old addresses from your rules. We'll add information to these release notes when the transition is complete so you know when to remove the old addresses. - `44.232.207.68` - `54.245.251.133` - `35.161.232.146` - `13.124.180.184` - `3.39.128.171` - `3.39.185.132` - `3.65.160.245` - `3.76.110.124` - `18.195.249.55` See [Stream to Wowza CDN from Wowza Streaming Engine](https://www.wowza.com/docs/how-to-stream-to-wowza-cdn) to learn more. ### May 31, 2024 We've enabled functionality that lets you switch between the legacy version of the Wowza Video UI and the new version. See [Switch between Wowza Video Legacy and the new Wowza Video user experience](https://www.wowza.com/docs/switch-between-wowza-video-legacy-and-the-new-wowza-video-user-experience) for more information. While you can use the 1.x REST API with the new Wowza Video experience, you won’t be able to reach the following endpoints because their functionality isn’t supported in the new experience: - `/recordings` - Use `/videos` in the 2.0 REST API instead. - `/vod_streams` - Use `/videos` in the 2.0 REST API instead. - `/assets` - Use `/videos` in the 2.0 REST API instead. - `/players` - There is no replacement in the 2.0 REST API yet. See the [Wowza Video REST API migration guide](https://developer.wowza.com/docs/wowza-video/about-the-rest-api/lifecycle/migration-guide/) for more information about replacements for deprecated endpoints. The user interface and version of the REST API used to create a live stream (or real-time stream) make a difference with how you can interact with that stream in each UI. - A stream created in the **legacy version of the UI** or with **v1.x of the REST API** - If you open that stream with the new UI, you won’t be able to change the player configuration (styling). - A stream created in the **new version of the UI** or with **v2.0 of the REST API** - If you open that stream in the legacy UI, you won’t be able to change the player configuration (styling). ### May 30, 2024 ##### Version 2.0 We've added `origin_id`, a query parameter to the `GET /videos` endpoint which returns all the videos originated from a live stream or real-time stream associated with that ID. `origin_id` is returned in the response of the `GET /videos/{id}` endpoint. ### May 22, 2024 ##### Version 2.0 We've added `player_type` to the following endpoints: - `POST /live_stream` - `GET /live_stream/ID` - `PATCH /live_stream/ID` - `POST /real_time` - `GET /real_time/ID` - `PATCH /real_time/ID` Streams created in legacy Wowza Video have a player type of `wowza_flowplayer_v1`. Streams created in later versions of Wowza Video have a player type of `wowza_flowplayer_v2`. Knowing the player type is useful if you've migrated streams from legacy Wowza Video. The player for a stream created in the legacy version of Wowza Video isn't editable in the new platform. ### May 2, 2024 ##### All versions (v1.8 through v1.12, v2.0) - Fixed an issue where the `/live_streams/{id}` endpoint returned a `/n` as part of the embed code. - Fixed an issue where the poster didn't remove when you attempted to remove the poster using `PATCH /live_streams`. - Fixed an issue where `GET /transcoders/{id}/recordings` and `GET /recordings` returned something other than the asset uid. ##### v1.9 through v1.12, v2.0 - Fixed an issue where a 500 error returned when you attempted to delete a recording with no file name. ### April 29, 2024 ##### Version 2.0 - We've removed the 90-day and 12-month limit when you query historic `/viewers`, `/engagement`, and `/popularity` analytics data for your live streams and VOD assets. You can now fetch data as early as December 2022 or from the date of creation of your live stream or VOD asset. - The granualarity of trend data for viewer analytics endpoints is updated based on the from and to query parameters as: - 0 minutes to 3 hours - Samples returned per minute - 3 hours, 1 second to 24 hours - Samples returned per hour - 24 hours, 1 second to 175 days - Samples returned per day - 175 days to 14 years - Samples returned per month - 14 years or greater - Samples returned per year - For all the analytics endpoints, the queried data range is now rounded to the nearest second. For example, if you set the from query parameter as 2024-03-14T10:31:54.486Z, you will receive data starting at 2024-03-14T10:31:54.000Z. ### April 9, 2024 ##### Version 2.0 We've added four new endpoints to provide you with the total viewers data for a specific account, live stream, VOD stream, and stream target. - `GET /analytics/viewers/account/total` - `GET /analytics/viewers/live_streams/{id}/total` - `GET /analytics/viewers/vod_streams/{id}/total` - `GET /analytics/viewers/stream_targets/{id}/total` ### March 25, 2024 ##### Versions 2.0 and 1.11 We've added response caching to the following endpoints to reduce bandwidth, latency, and the load on servers. If the time range queried is less than 60 minutes, the response cache time is 10 seconds. If the time range queried is 60 minutes or greater, the response cache time is 60 seconds. In the API reference, we've updated the description of each of the following endpoints with the new response cache times. For example, see the description of the `GET /analytics/viewers/live_streams/{id}` endpoint. - `GET /analytics/viewers/account` - `GET /analytics/viewers/live_streams/{id}` - `GET /analytics/viewers/vod_streams/{id}` - `GET /analytics/viewers/stream_targets/{id}` - `GET /analytics/viewers/live_streams` - `GET /analytics/viewers/vod_streams` - `GET /analytics/engagement/vod_streams/{id}` - `GET /analytics/popularity/live_streams/{id}` - `GET /analytics/popularity/vod_streams/{id}` See [Wowza Video REST API server response caching](https://developer.wowza.com/docs/wowza-video/about-the-rest-api/response-caching/) for more information. ### March 20, 2024 **API Versioned** The REST API has been versioned: - **Current (v2.0)** - Kept v2.0 as the base path for the current version of the API. - **v1.12** - Established v1.12 as discontinued. A discontinued version is no longer accessible. We created the v1.12 beta when v1.11 moved to current to facilitate the development process. While some changes related to real-time streams originated in v1.12, those changes are also present in v2.0. You should go directly to 2.0 when you’re ready to upgrade from v1.11. - **Supported 1 (v1.11)** - Established v1.11 as a supported version of the API. - **Supported 2 (v1.10)** - Established v1.10 as an older supported version of the API. The second supported version is no longer part of our active code base and the functionality is frozen. This version is offered as a convenience as you plan and execute your migration to the current version. - **Deprecated (v1.9)** - Established v1.9 as deprecated and it is no longer guaranteed to work in production environments. - **Discontinued (v1.8)** - Established v1.8 as discontinued. A discontinued version is no longer accessible. This stage was formerly known as **Sunset**. ### February 21, 2024 ##### Current (v2.0) We've deprecated the following endpoints in v2.0 of the REST API: - VOD Streams (Usage) - VOD streams are now part of the new video content management systems. We don't have replacement endpoints for retrieving this data yet. - `GET /usage/vod_streams` - `GET /usage/vod_streams/ID` - `GET /usage/vod_streams/summary` - Storage - We don't currently have replacement endpoints for retrieving this data. - `GET /usage/storage/peak` - `GET /usage/storage/current` ### February 8, 2024 We've updated the user experience in Wowza Video to take advantage of Wowza Video's versatile live streaming functionality and Flowplayer OVP's superior player, video content management system, ad insertion technology, video playlist curation, and player analytics. For more information about these enhancements, see [About Wowza Video](https://www.wowza.com/docs/about-wowza-video-2). To support the video content management system change, we've released version 2.0 of the Wowza Video REST API. The following list summarizes all the changes we’ve made to the Wowza Video REST API version 2.0. info We're rolling the new experience out incrementally to our customers to ensure the best transition possible. We appreciate your patience and excitement as the changes roll out! ##### Current (v2.0) - Established v2.0 as the current version of the API. For a list of new features, improvements, differences between 1.11 and 2.0, and breaking changes, see the [Wowza Video REST API migration guide](https://developer.wowza.com/docs/wowza-video/about-the-rest-api/lifecycle/migration-guide/). If you haven't moved over to the new Wowza Video UI experience, you won't be able to access v2.0 of the API. We're migrating customers iteratively. See [Upgrade to the Wowza Video 2.0 REST API](https://developer.wowza.com/docs/wowza-video/upgrade-to-wowza-video/) for more information. - In v2.0 of the API, we added new endpoints for our new video content management system, `/videos`. These endpoints will replace `/assets`, `/recordings`, and `/vod_streams` from v1.11 of the API. We also added additional video management functionality with `/categories`. The categories feature lets you create categories and subcategories for videos within your organization. For example, create a comedy category with slapstick, standup, and dry humor subcategories your viewers can choose from. - `POST /videos` - `GET /videos` - `GET /videos/{id}` - `PATCH /videos/{id}` - `PUT /videos/{id}` - `DELETE /videos/{id}` - `POST /categories` - `GET /categories` - `GET /categories/{id}` - `PATCH /categories/{id}` - `DELETE /categories/{id}` - `GET /real_time/{id}/state` - `GET /usage/storage/current` - We’ve made changes to the following `/live_streams`, `/transcoders`, and `/real_time` endpoints: - `POST /live_streams` - `POST /live_streams/{id}` - `PATCH /live_streams/{id}` - `GET /live_streams/{id}` - `GET /live_streams` - `POST /transcoders` - `PATCH /transcoders/{id}` - `GET /transcoders/{id}` - `POST /real_time` - `GET /real_time/{id}` - `PATCH /real_time/{id}` - We've deprecated the following `/assets`, `/players`, `/recordings`, `/vod_streams`, and `/transcoder/{id}/recordings` endpoints to provide you with a more unified experience with the new `/videos` endpoints. We’ve deprecated a few other endpoints as well. - `POST /assets` - `GET /assets` - `GET /assets/{id}` - `PATCH /assets/{id}` - `DELETE /assets/{id}` - `POST /assets/{id}/live_streams` - `GET /asset_tags` - `PATCH /assets/{id}/upload_completed` - `PATCH /assets/{id}/upload_failed` - `GET /recordings` - `GET /recordings/{id}` - `DELETE /recordings/{id}` - `GET /recordings/{id}/state` - `GET /vod_streams` - `GET /vod_streams/{id}` - `PATCH /vod_streams/{id}` - `DELETE /vod_streams/{id}` - `GET /transcoders/{id}/recordings` - `GET /players` - `GET /players/{id}` - `PATCH /players/{id}` - `POST /players/{id}/rebuild` - `GET /players/{id}/state` - `POST /players/{player_id}/urls` - `GET /players/{player_id}/urls` - `GET /players/{player_id}/urls/{id}` - `PATCH /players/{player_id}/urls/{id}` - `DELETE /players/{player_id}/urls/{id}` - `GET /stream_targets/akamai` - `GET /stream_targets/akamai/{id}` - `PATCH /stream_targets/akamai/{id}` - `DELETE /stream_targets/akamai/{id}` ### January 16, 2024 ##### All versions (v1.9 through v1.12) - Fixed an issue where the `GET /recordings` endpoint with the `name` filter returned an empty array. ### December 12, 2023 ##### Beta (v1.12) - We've added the following endpoint to fetch the current state of a real-time stream. - `GET /real_time/{id}/state` - We've enabled webhook notifications for real-time streams. You can now receive notifications when your stream is started and stopped. See [Wowza Video webhook event reference documentation](https://developer.wowza.com/docs/wowza-video/reference/webhooks/webhook-event-reference/) for more information. - Added `reference_id` to the following endpoints: - `POST /real_time` - `GET /real_time/{id}` - `PATCH /real_time/{id}` Use this to set a unique ID returned in `object_data` of real-time streams webhook payloads. This is useful if you have an ID in your system or application you want to associate with real-time stream events. The default value for `reference_id` in the webhook payload is null. ### November 27, 2023 ##### All versions (v1.9 through v1.12) We've removed the following endpoints and the references to Akamai as we no longer support it. - `GET /stream_targets/akamai` - `GET /stream_targets/akamai/{id}` - `PATCH /stream_targets/akamai/{id}` - `DELETE /stream_targets/akamai/{id}` ### November 2, 2023 ##### Beta (v1.12) We've added the option to generate a player and a hosted page for your real-time streams. Call the `POST /real_time` or the `PATCH /real_time/{id}` endpoints to view the player's embed code. Added `customizations` and `plugins` for the following endpoints which allow you to customize the player appearance and enable casting to Airplay and Chromecast devices. - `POST /real_time` - `PATCH /real_time/{id}` ### October 4, 2023 Historically, the Wowza Video REST API has had designations for Supported 1 and Supported 2 versions. Beginning in October 2023, we'll begin the process of moving to only a single supported version. Once the existing API versions complete their lifecycle, we'll no longer maintain more than one supported version. We are also no longer re-routing the endpoints of the Deprecated API version to the Supported 2 version. This preserves the deprecated API version functionality without the introduction of compatibility issues due to re-routing. See [Wowza Video REST API lifecycle management](https://developer.wowza.com/docs/wowza-video/about-the-rest-api/lifecycle/api-lifecycle/) for more information. ### October 3, 2023 **API Versioned** The REST API has been versioned: - **Beta (v1.12)** - Established v1.12 as the base path for the beta version of the API. - **Current (v1.11)** - Established v1.11 as the current version of the API. For a list of new features, improvements, and breaking changes, see the [Wowza Video REST API migration guide](/docs/wowza-video/about-the-rest-api/lifecycle/migration-guide). - **Supported 1 (v1.10)** - Established v1.10 as a supported version of the API. - **Supported 2 (v1.9)** - Established v1.9 as an older supported version of the API. The second supported version is no longer part of our active code base and the functionality is frozen. This version is offered as a convenience as you plan and execute your migration to the current version. - **Deprecated (v1.8)** - Established v1.8 as deprecated and it is no longer guaranteed to work in production environments. - **Discontinued (v1.7)** - Established v1.7 as discontinued. A discontinued version is no longer accessible. This stage was formerly known as **Sunset**. ### September 29, 2023 ##### Beta (v1.11) - We've added four tutorials to better assist you with using our new analytics endpoints. These tutorials walk you through how to query these endpoints to gather analytics data for your streams. This is not tied to a development release. For more information, see the following tutorials. - [Get engagement analytics](https://developer.wowza.com/docs/wowza-video/guides/insights-and-analytics/get-engagement-analytics/) - [Get ingest analytics](https://developer.wowza.com/docs/wowza-video/guides/insights-and-analytics/get-ingest-analytics/) - [Get viewer analytics](https://developer.wowza.com/docs/wowza-video/guides/insights-and-analytics/get-viewer-analytics/) - [Get popularity analytics](https://developer.wowza.com/docs/wowza-video/guides/insights-and-analytics/get-popularity-analytics/) ### September 27, 2023 ##### All versions (v1.8 through 1.11) - Fixed an issue where `token_auth_playlist_only` set to true wasn't applying to the `manifest.mpd` for MPEG-DASH, when MPEG-DASH was enabled on the stream target. See [Update a Wowza CDN on Fastly Stream Target](https://developer.wowza.com/docs/wowza-video/api/video/current/tag/stream_targets/#tag/stream_targets/operation/updateFastlyStreamTarget) for more information. ### September 25, 2023 ##### Beta (v1.11) - We've added two new endpoints to provide you with viewer data for the top 100 viewed live and VOD streams. - `GET /analytics/viewers/live_streams` - `GET /analytics/viewers/vod_streams` ### August 29, 2023 As previously communicated, we have now replaced the older IP addresses for Wowza CDN on Fastly stream targets. If you stream directy to Wowza CDN from Wowza Streaming Engine, you should remove any of these old IP addresses from your firewall rules: - `34.81.115.95` - `34.159.18.6` - `35.198.130.93` - `35.202.71.195` - `35.238.167.42` - `130.211.240.176` These are the new IP addresses that we expect to remain static moving forward. - `129.153.100.158` - `129.153.114.13` - `129.154.207.194` - `132.145.253.238` - `138.3.255.30` - `141.147.1.186` - `146.56.156.1` - `158.101.43.210` - `193.123.241.42` To learn more, see Send a stream from Wowza Streaming Engine to a Wowza CDN HLS target using Wowza REST APIs and Stream to Wowza CDN from Wowza Streaming Engine. ### August 21, 2023 ##### Beta (v1.11) - You can now stop a real-time stream using the `PUT /real_time/stop/{id}` endpoint. Once stopped, you cannot restart the real-time stream. ### August 14, 2023 ##### Beta (v1.11) - We've added stream health monitoring metrics to the `GET /analytics/ingest/live_streams/{id}` endpoint. ### August 9, 2023 - We've updated [developer.wowza.com](https://developer.wowza.com/). All Wowza Video developer documentation is now available there with improved organization! ### August 7, 2023 ##### Beta (v1.11) - We've deprecated the following /usage endpoints to provide you with a more unified experience with the new /analytics endpoints. - `GET /usage/accounts/trend` - `GET /usage/accounts/live` - `GET /usage/accounts/countries` - `GET /usage/transcoders/{id}/trend` - `GET /usage/transcoders/{id}/live` - `GET /usage/transcoders/{id}/countries` - `GET /usage/stream_targets/{id}/countries` - `GET /usage/stream_targets/{id}/renditions` - `GET /usage/stream_targets/{id}/live` - `GET /usage/vod_streams/egress` - `GET /usage/vod_streams/egress/{id}` - `GET /usage/vod_streams/egress/summary` - `GET /usage/vod_streams/{id}/trend` - `GET /usage/vod_streams/{id}/live` - `GET /usage/vod_streams/{id}/countries` - `GET /usage/vod_streams/{id}/renditions` ### July 17, 2023 ##### Beta (v1.11) - We've added three new endpoints to provide popularity data for a live stream and a VOD stream and engagement data for a VOD stream. For popularity endpoints, plays and displays data is returned. For the engagement endpoint, `play_rate`, `completion_rate`, `trend`, and other data is returned. - `GET /analytics/popularity/live_streams/{id}` - `GET /analytics/popularity/vod_streams/{id}` - `GET /analytics/engagement/vod_streams/{id}` ### June 29, 2023 ##### Beta (v1.11) - We now automatically generate hosted pages and player embed codes for your assets once they're uploaded to Asset Management. You can view and edit this information using the following endpoints: - `PATCH /assets/{id}` - `GET /assets/{id}` ### June 20, 2023 ##### Beta (v1.11), Current (v1.10), Supported 1 (v1.9) - You can now change the `region` for real-time streams using `PATCH /real_time/ID`. ### June 15, 2023 - We've updated all our live streams to use Wowza Flowplayer as the default player. If you use an embed code that was built using Wowza Video Player, you'll need to update your site to use the new one we've generated for you. Call `GET /live_streams/{id}` to get the player's `embed_code`. ### June 5, 2023 ##### Beta (v1.11) - Added `GET /usage/real_time_streams/summary` endpoint to provide you with the usage data for real-time streams. - Added a new endpoint `GET /analytics/ingest/live_streams/{id}` to provide you with ingest analytics for a live stream. - With this change, we've sunset the following endpoints and the associated operations are no longer available. - `GET /live_streams/{id}/stats` - `GET /transcoders/{id}/stats` - `GET /transcoders/{id}/uptimes/{id}/metrics/current` - `GET /transcoders/{id}/uptimes/{id}/metrics/historic` ### May 30, 2023 - Changed `uptime_id` to `transcoder_uptime_id` in the recording deleted event for webhooks. While `uptime_id` is included in the payload currently, it is deprecated and will eventually be removed. Use `transcoder_uptime_id` instead. ##### Beta (v1.11), Current (v1.10), Supported 1 (v1.9) - Real-Time Streaming at Scale is improved to make real-time streaming to your global audiences even more powerful! When you create a real-time stream, select the region your video source is closest to in order to further minimize latency and improve performance. Available regions are `phoenix`, `singapore`, `bangalore`, and `auto`. If you send `auto` for the region parameter, Wowza Video will select the region based on the publisher's location. Existing streams that use the deprecated values of `americas` and `emea` are automatically re-routed. `americas` will go to `phoenix` and `emea` will go to `amsterdam`. Use the updated `region` parameter in `POST /real_time`. ### May 18, 2023 ##### All versions (v1.8 through 1.11) - Fixed a bug where `PATCH /stream_targets/custom/{id}` did not remove the password for RTMP authentication of a custom stream target that was created using `POST /stream_targets/custom` endpoint. To clear both username and password for RTMP authentication, send empty strings for both username and password fields when calling `PATCH /stream_targets/custom/{id}`. ### May 17, 2023 ##### All versions (v1.8 through 1.11) - We've changed the rendition naming in `/usage` for stream targets and VOD streams and rendition data in `/analytics/viewers` (version 1.11). A rendition name is now the smaller number of the resolution in which an asset was streamed. A resolution is [width]x[height]. For more information, see `GET /usage/stream_targets/{id}/renditions`. ##### Beta (v 1.11) - Added renditions and device data for the live `analytics/viewers` endpoints. ### May 11, 2023 ##### Beta (v 1.11) - We've added four new endpoints to provide you with live and historic viewer data for an account, a live stream, a VOD stream, and a stream target. The data returned includes viewers by device, rendition, and country, as well as viewer trend data. - `GET /analytics/viewers/account` - `GET /analytics/viewers/live_streams/{id}` - `GET /analytics/viewers/vod_streams/{id}` - `GET /analytics/viewers/stream_targets/{id}` ##### All versions (v1.8 through 1.11) - Fixed an issue where some boolean attributes in the REST API were set to true when the request had invalid string values. Now, the only acceptable values for boolean attributes are `true`, `false`, `"true"`, `"false"`, `1`, and `0`. - Fixed an issue where trying to update an existing asset name to longer than 255 characters didn't return the correct error. If you exceed the 255 character limit, you'll now receive a `422` error with the following message: - `The request couldn't be processed. Validation failed: Title is too long (maximum is 255 characters)` ### May 8, 2023 We've published developer.wowza.com! Soon to be your one-stop site for all things Wowza integration. During this first iteration, we've added Wowza Flowplayer developer documentation and the Wowza Video REST API reference to the developer portal. We'll continue to add developer documentation for all of our products, as well as development tools, resources, support, and so much more! ### April 27, 2023 ##### All versions (v1.7 through 1.11) - Fixed an issue where enabling the countdown clock for a hosted page didn't set the correct countdown time. ### April 26, 2023 - Fixed an issue where stream health data, which you can access through the stream health endpoints in `/transcoders`, wasn't returned for some streams. ### April 24, 2023 ##### Beta (v1.11) Added `reason` to `GET /vod_streams/ID` and `GET /vod_streams` to show why a VOD stream failed the processing phase. ### April 17, 2023 - Stream health data, which you can access through the stream health endpoints in `/transcoders`, is retained for 90 days now rather than 1 year. Example: `/transcoders/{transcoder_id}/uptimes/{id}/metrics/historic` - Usage reporting for stream targets used with Wowza Streaming Engine has changed. See our [support article](https://support.wowza.com/hc/en-us/articles/20747529742363) for more information. ### April 6, 2023 ##### Beta (v1.11) **Player customizations and plugins** Added `customizations` and `plugins` for the following endpoints which allow you to customize the player appearance and enable casting to Airplay and Chromecast devices. - `POST /live_streams` - `GET /live_streams/{id}` - `PATCH /live_streams/{id}` - `GET /players/{id}` - `PATCH /players/{id}` **Improvements to Asset Management** - Changed the name of `playback_enabled` to `published` for the following endpoints: - `GET /assets` - `GET /assets/{id}` - `PATCH /assets/{id}` - Added `reason` to `GET /asset/ID` and `GET /assets` to show why an asset failed the processing phase. - You can now delete an asset in a processing state. When you delete an asset, any associated VOD streams and recordings are deleted. **Other updates** - The Wowza Flowplayer instance used in the hosted page and in the embed code for your live stream now recognizes and displays closed captions. - Fixed an issue where custom stream targets didn't honor special characters, like ?, in the RTMP URL. ### March 15, 2023 ##### Beta (v1.10) **Live streams** We've changed the request and response format for configuring the hosted page and the player. This change groups the configuration options for each object together in a more structured way. - `POST /live_streams` - `PATCH /live_streams/{ID}` - `GET /live_streams/{ID}` table colgroup col col thead tr th div v1.9 th v1.10 tbody tr td pre code POST /live_streams { " live_stream " : { " name " : " MyLiveStream " ... " hosted_page " : true, " hosted_page_title " : " MyLiveHostedPage " , " hosted_page_description " : " This is my hosted page. " , " hosted_page_logo_image " : " [Base64-encoded string representation of GIF, JPEG, or PNG file] " , " hosted_page_sharing_icons " : true, ... " player_countdown " : true, " player_countdown_at " : " 2020-02-01T17:00:00.000Z. " , " player_logo_image " : " [Base64-encoded string representation of GIF, JPEG, or PNG file] " , " player_logo_position " : " top-left " , " player_responsive " : true, " player_type " : " wowza_flowplayer " , " player_video_poster_image " : " [Base64-encoded string representation of GIF, JPEG, or PNG file] " , " player_width " : 640, ... } } Response { " live_stream " : { " name " : " MyLiveStream " ... " hosted_page " : true, " hosted_page_title " : " MyLiveHostedPage " , " hosted_page_description " : " This is my hosted page. " , " hosted_page_logo_image_url " : " https://prod.s3.amazonaws.com/uploads/player/hosted_page_logo_image/23424/5bad28.jpg " , " hosted_page_sharing_icons " : true, " hosted_page_url " : " " https://player.video.wowza.com/hosted/e8dk5bf6/player.html " " , ... " player_countdown " : true, " player_countdown_at " : " 2020-02-01T17:00:00.000Z. " , " player_embed_code " : " null " , " player_hls_playback_url " : " https://wowzasubdomain.wowza.com/1/TWhoL3BiZnJXMFhmNzZVN3JrZDAwUT09/ZmYxSXRrTERrUlk9/hls/live/playlist.m3u8 " , " player_id " : " kwb6pwnv " , " player_logo_image_url " : " https://prod.s3.amazonaws.com/uploads/player/logo_image/23424/5bad28.jpg " , " player_logo_position " : " top-left " , " player_responsive " : true, " player_type " : " wowza_flowplayer " , " player_video_poster_image_url " : " https://prod.s3.amazonaws.com/uploads/player/video_poster_image/23424/5bad28.jpg " , " player_width " : 640, ... } } td pre code POST /live_streams { " live_stream " : { " name " : " MyLiveStream " ... " hosted_page " : { " enabled " : true, " page_title " : " MyLiveHostedPage " , " description " : " This is my hosted page. " , " logo_image " : " [Base64-encoded string representation of GIF, JPEG, or PNG file] " , " sharing_icons " : true } ... " player " : { " countdown " : true, " countdown_at " : " 2020-02-01T17:00:00.000Z. " , " logo_image " : " [Base64-encoded string representation of GIF, JPEG, or PNG file] " , " logo_position " : " top-left " , " responsive " : true, " type " : " wowza_flowplayer " , " video_poster_image " : " [Base64-encoded string representation of GIF, JPEG, or PNG file] " , " width " : 640 } ... } } Response { " live_stream " : { " name " : " MyLiveStream " ... " hosted_page " : { " enabled " :true, " title " : " MyLiveHostedPage " , " description " : " This is my hosted page. " , " logo_image_url " : " https://prod.s3.amazonaws.com/uploads/player/hosted_page_logo_image/23424/5bad28.jpg " , " sharing_icons " : true, " page_url " : " " https://player.video.wowza.com/hosted/e8dk5bf6/player.html " " } ... " player " : { " countdown " : true, " countdown_at " : " 2020-02-01T17:00:00.000Z. " , " embed_code " : " null " , " hls_playback_url " : " https://wowzasubdomain.wowza.com/1/TWhoL3BiZnJXMFhmNzZVN3JrZDAwUT09/ZmYxSXRrTERrUlk9/hls/live/playlist.m3u8 " , " id " : " kwb6pwnv " , " logo_image_url " : " https://prod.s3.amazonaws.com/uploads/player/logo_image/23424/5bad28.jpg " , " logo_position " : " top-left " , " responsive " : true, " type " : " wowza_flowplayer " , " video_poster_image_url " : " https://prod.s3.amazonaws.com/uploads/player/video_poster_image/23424/5bad28.jpg " , " width " : 640 } ... } } **Player** We've changed the request and response format for configuring the hosted page. This change groups the configuration options together in a more structured way. - `PATCH /players/{ID}` - `GET /players/{ID}` table colgroup col col thead tr th div v1.9 th v1.10 tbody tr td pre code PATCH /players { " player " : { " hosted_page " : true, " hosted_page_title " : " MyLiveHostedPage " , " hosted_page_description " : " This is my hosted page. " , " hosted_page_logo_image " : " [Base64-encoded string representation of GIF, JPEG, or PNG file] " , " hosted_page_sharing_icons " : true, ... " responsive " : true, } } Response { " player " : { " id " : " e8dk5bf6 " ... " hosted_page " : true, " hosted_page_title " : " MyLiveHostedPage " , " hosted_page_description " : " This is my hosted page. " , " hosted_page_logo_image_url " : " https://prod.s3.amazonaws.com/uploads/player/hosted_page_logo_image/23424/5bad28.jpg " , " hosted_page_sharing_icons " : true, " hosted_page_url " : " " https://player.video.wowza.com/hosted/e8dk5bf6/player.html " " , ... " player_responsive " : true, ... } } td pre code PATCH /players { " player " : { " hosted_page " : { " enabled " : true, " page_title " : " MyLiveHostedPage " , " description " : " This is my hosted page. " , " logo_image " : " [Base64-encoded string representation of GIF, JPEG, or PNG file] " , " sharing_icons " : true } ... " responsive " : true, ... } } Response { " player " : { " id " : " e8dk5bf6 " ... " hosted_page " : { " enabled " :true, " title " : " MyLiveHostedPage " , " description " : " This is my hosted page. " , " logo_image_url " : " https://prod.s3.amazonaws.com/uploads/player/hosted_page_logo_image/23424/5bad28.jpg " , " sharing_icons " : true, " page_url " : " " https://player.video.wowza.com/hosted/e8dk5bf6/player.html " " } ... " responsive " : true, ... } } **API Versioned** The REST API has also been versioned: - **Beta (v1.11)** - Established v1.11 as the base path for the beta version of the API. - **Current (v1.10)** - Established v1.10 as the current version of the API. For a list of new features, improvements, and breaking changes, see the [Wowza Video REST API migration guide](/docs/wowza-video/about-the-rest-api/lifecycle/migration-guide). - **Supported 1 (v1.9)** - Established v1.9 as a supported version of the API. - **Supported 2 (v1.8)** - Established v1.8 as an older supported version of the API. The second supported version is no longer part of our active code base and the functionality is frozen. This version is offered as a convenience as you plan and execute your migration to the current version. - **Deprecated (v1.7)** - Established v1.7 as deprecated and it is no longer guaranteed to work in production environments. - **Discontinued (v1.6)** - Established v1.6 as discontinued. A discontinued version is no longer accessible. This stage was formerly known as **Sunset**.