Video Views
An individual video view tracked by Mux Data. For the full list of properties for each view please refer to the table of data fields in the Export raw video view data guide.
List Video Viewsget
Returns a list of video views.
Request path & query params
Number of items to include in the response
Offset by this many pages, of the size of limit
Viewer ID to filter results by. This value may be provided by the integration, or may be created by Mux.
Filter video views by the provided error ID (as returned in the error_type_id field in the list video views endpoint). If you provide any as the error ID, this will filter the results to those with any error.
Sort order.
Limit the results to rows that match conditions from provided key:value pairs. Must be provided as an array query string parameter.
To exclude rows that match a certain condition, prepend a !
character to the dimension.
Possible filter names are the same as returned by the List Filters endpoint.
Example:
filters[]=operating_system:windows&filters[]=!country:US
Timeframe window to limit results by. Must be provided as an array query string parameter (e.g. timeframe[]=).
Accepted formats are...
- array of epoch timestamps e.g.
timeframe[]=1498867200&timeframe[]=1498953600
- duration string e.g.
timeframe[]=24:hours or timeframe[]=7:days
{
"total_row_count": 4,
"timeframe": [
1610025789,
1610112189
],
"data": [
{
"viewer_os_family": "OS X",
"viewer_application_name": "Chrome",
"view_start": "2021-01-07T20:34:06Z",
"view_end": "2021-01-07T20:46:04Z",
"video_title": "my-title",
"total_row_count": 4,
"player_error_message": null,
"player_error_code": null,
"id": "JpA81zBfGaGZ85C6aGF3bptyD4CKwpdNgamr",
"error_type_id": 1,
"country_code": "US"
},
{
"viewer_os_family": "OS X",
"viewer_application_name": "Chrome",
"view_start": "2021-01-07T20:21:53Z",
"view_end": "2021-01-07T20:34:03Z",
"video_title": "",
"total_row_count": 4,
"player_error_message": null,
"player_error_code": null,
"id": "jPVLR5giYMrLYbHM88Tkn3cM3qCRDk0jL114",
"error_type_id": 1,
"country_code": "US"
},
{
"viewer_os_family": "OS X",
"viewer_application_name": "Chrome",
"view_start": "2021-01-07T15:16:06Z",
"view_end": "2021-01-07T15:17:06Z",
"video_title": "Video Test Title 12.14.20",
"total_row_count": 4,
"player_error_message": "this is an error message from the player",
"player_error_code": "1001",
"id": "pdLDVKBuPZJJ9YsPVmtmB9FG9gsWBWMmYar4",
"error_type_id": 1,
"country_code": "US"
},
{
"viewer_os_family": "OS X",
"viewer_application_name": "Chrome",
"view_start": "2021-01-07T15:15:09Z",
"view_end": "2021-01-07T15:15:17Z",
"video_title": "Video Test Title 12.14.20",
"total_row_count": 4,
"player_error_message": null,
"player_error_code": null,
"id": "zbZPowWtD3z54jcGMLCJJpF79zCjB03bV7o8",
"error_type_id": 1,
"country_code": "US"
}
]
}
Get a Video Viewget
Returns the details of a video view.
Request path & query params
ID of the Video View
{
"total_row_count": null,
"timeframe": [
1643133378,
1643219778
],
"data": {
"view_end": "2022-01-26T17:56:12Z",
"viewer_device_model": "iPhone10,4",
"viewer_os_version": "15.1",
"video_id": "rmp7fvw5lPD01l8PZ2aN74js84XrTWxHy",
"view_playing_time": "58134",
"exit_before_video_start": false,
"player_mux_plugin_name": "apple-mux",
"view_max_downscale_percentage": "0.32222223",
"country_name": "United States",
"view_id": "8d00a0ca-8456-4e55-9ff8-dc501814a6b1",
"view_start": "2022-01-26T17:08:18Z",
"view_max_playhead_position": "41126",
"player_source_host_name": "stream.mux.com",
"player_error_code": "1001",
"player_error_message": "error from player",
"player_source_url": "https://stream.mux.com/ax9qwyTIaUDLdmhesYDKir5kfE4Ve215.m3u8",
"city": "Austin",
"view_max_upscale_percentage": "0",
"asset_id": "rmp7fvw5lPD01l8PZ2aN74js84XrTWxHy",
"events": [
{
"viewer_time": 1643216891851,
"playback_time": 0,
"name": "playerready",
"event_time": 1643216898061
},
{
"viewer_time": 1643216891853,
"playback_time": 0,
"name": "viewstart",
"event_time": 1643216898101
}
],
"view_total_content_playback_time": 37521,
"asn": 11427,
"weighted_average_bitrate": 697078
}
}
Errors
Playback errors are tracked and aggregated by Mux Data. Errors can be listed by the API, which contains data about the error code, message, and how often the error occurred.
Properties
A unique identifier for this error.
The percentage of views that experienced this error.
Notes that are attached to this error.
The error message.
The last time this error was seen (ISO 8601 timestamp).
Description of the error.
The total number of views that experiend this error.
The error code
List Errorsget
Returns a list of errors.
Request path & query params
Limit the results to rows that match conditions from provided key:value pairs. Must be provided as an array query string parameter.
To exclude rows that match a certain condition, prepend a !
character to the dimension.
Possible filter names are the same as returned by the List Filters endpoint.
Example:
filters[]=operating_system:windows&filters[]=!country:US
Timeframe window to limit results by. Must be provided as an array query string parameter (e.g. timeframe[]=).
Accepted formats are...
- array of epoch timestamps e.g.
timeframe[]=1498867200&timeframe[]=1498953600
- duration string e.g.
timeframe[]=24:hours or timeframe[]=7:days
{
"total_row_count": 1,
"timeframe": [
1610027061,
1610113461
],
"data": [
{
"percentage": 30,
"notes": "a helpful note",
"message": "an error message",
"last_seen": "2021-01-08T13:42:39Z",
"id": 1,
"description": "a description for this error",
"count": 1,
"code": 100
}
]
}
Filters
Deprecated, please refer to the Dimensions APIs.
List Filtersget
The API has been replaced by the list-dimensions API call.
Lists all the filters broken out into basic and advanced.
{
"total_row_count": 1,
"timeframe": [
1610027251,
1610113651
],
"data": {
"basic": [
"browser",
"operating_system",
"player_remote_played",
"player_software",
"player_software_version",
"player_mux_plugin_name",
"player_mux_plugin_version",
"player_autoplay",
"player_preload",
"video_title",
"video_id",
"stream_type",
"source_type",
"source_hostname",
"continent_code",
"country",
"player_error_code"
],
"advanced": [
"browser_version",
"operating_system_version",
"viewer_device_name",
"viewer_device_model",
"viewer_device_category",
"viewer_device_manufacturer",
"player_name",
"player_version",
"video_series",
"video_encoding_variant",
"experiment_name",
"sub_property_id",
"asn",
"cdn",
"viewer_connection_type",
"view_session_id",
"region",
"viewer_user_id",
"exit_before_video_start",
"preroll_ad_asset_hostname",
"preroll_ad_tag_hostname",
"preroll_played",
"preroll_requested"
]
}
}
Lists values for a specific filterget
The API has been replaced by the list-dimension-values API call.
Lists the values for a filter along with a total count of related views.
Request path & query params
ID of the Filter
Number of items to include in the response
Offset by this many pages, of the size of limit
Limit the results to rows that match conditions from provided key:value pairs. Must be provided as an array query string parameter.
To exclude rows that match a certain condition, prepend a !
character to the dimension.
Possible filter names are the same as returned by the List Filters endpoint.
Example:
filters[]=operating_system:windows&filters[]=!country:US
Timeframe window to limit results by. Must be provided as an array query string parameter (e.g. timeframe[]=).
Accepted formats are...
- array of epoch timestamps e.g.
timeframe[]=1498867200&timeframe[]=1498953600
- duration string e.g.
timeframe[]=24:hours or timeframe[]=7:days
{
"total_row_count": 1,
"timeframe": [
1610028123,
1610114523
],
"data": [
{
"value": "Chrome",
"total_count": 5
}
]
}
Exports
Exports allow you to download the daily CSV files that are generated from the video views that occurred in the previous day. Please contact support for information about enabling exports for your organization.
List property video view export linksget
The API has been replaced by the list-exports-views API call.
Lists the available video view exports along with URLs to retrieve them.
{
"total_row_count": 10,
"timeframe": [
1610024528,
1610110928
],
"data": [
"https://s3.amazonaws.com/mux-data-exports/1/2021_01_01.csv.gz?...signature...",
"https://s3.amazonaws.com/mux-data-exports/1/2021_01_02.csv.gz?...signature...",
"https://s3.amazonaws.com/mux-data-exports/1/2021_01_03.csv.gz?...signature..."
]
}
List available property view exportsget
Lists the available video view exports along with URLs to retrieve them.
{
"total_row_count": 7,
"timeframe": [
1626296941,
1626383341
],
"data": [
{
"files": [
{
"version": 2,
"type": "csv",
"path": "https://s3.amazonaws.com/mux-data-exports/1/2021_01_03.csv.gz?...signature..."
}
],
"export_date": "2021-01-03"
},
{
"files": [
{
"version": 2,
"type": "csv",
"path": "https://s3.amazonaws.com/mux-data-exports/1/2021_01_02.csv.gz?...signature..."
}
],
"export_date": "2021-01-02"
},
{
"files": [
{
"version": 2,
"type": "csv",
"path": "https://s3.amazonaws.com/mux-data-exports/1/2021_01_01.csv.gz?...signature..."
}
],
"export_date": "2021-01-01"
}
]
}
Metrics
Historical metrics are used for tracking KPIs, diagnosing issues, and measuring viewers' quality of experience. Metrics are calculated using the video views that have been completed and are bucketed on the view end time for quality of experience metrics and view start time for engagement metrics. Historical metrics provide a large collection of dimensions that can be used to aggregate quality of experience based on view metadata. You can also easily compare experiences across viewer populations to, for example, find issues with specific devices or geographies. Historical metrics are similar but not directly comparable to the real-time metrics in the Real-time APIs. These metrics are aggregated for long-term storage historical reporting and are generated using different viewer populations.
List breakdown valuesget
List the breakdown values for a specific metric.
Request path & query params
ID of the Metric
Breakdown value to group the results by
Measurement for the provided metric. If omitted, the default for the metric will be used.
Limit the results to rows that match conditions from provided key:value pairs. Must be provided as an array query string parameter.
To exclude rows that match a certain condition, prepend a !
character to the dimension.
Possible filter names are the same as returned by the List Filters endpoint.
Example:
filters[]=operating_system:windows&filters[]=!country:US
Number of items to include in the response
Offset by this many pages, of the size of limit
Value to order the results by
Sort order.
Timeframe window to limit results by. Must be provided as an array query string parameter (e.g. timeframe[]=).
Accepted formats are...
- array of epoch timestamps e.g.
timeframe[]=1498867200&timeframe[]=1498953600
- duration string e.g.
timeframe[]=24:hours or timeframe[]=7:days
{
"total_row_count": 1,
"timeframe": [
1610028298,
1610114698
],
"meta": {
"aggregation": "view_end"
},
"data": [
{
"views": 5,
"value": 4,
"total_watch_time": 513934,
"total_playing_time": 413934,
"negative_impact": 1,
"field": "US"
}
]
}
Get Overall valuesget
Returns the overall value for a specific metric, as well as the total view count, watch time, and the Mux Global metric value for the metric.
Request path & query params
ID of the Metric
Timeframe window to limit results by. Must be provided as an array query string parameter (e.g. timeframe[]=).
Accepted formats are...
- array of epoch timestamps e.g.
timeframe[]=1498867200&timeframe[]=1498953600
- duration string e.g.
timeframe[]=24:hours or timeframe[]=7:days
Limit the results to rows that match conditions from provided key:value pairs. Must be provided as an array query string parameter.
To exclude rows that match a certain condition, prepend a !
character to the dimension.
Possible filter names are the same as returned by the List Filters endpoint.
Example:
filters[]=operating_system:windows&filters[]=!country:US
Measurement for the provided metric. If omitted, the default for the metric will be used.
{
"total_row_count": 1,
"timeframe": [
1610029525,
1610115925
],
"meta": {
"aggregation": "view_end"
},
"data": {
"value": 4,
"total_watch_time": 513934,
"total_playing_time": 413934,
"total_views": 5,
"global_value": 1169.1832095168065
}
}
List Insightsget
Returns a list of insights for a metric. These are the worst performing values across all breakdowns sorted by how much they negatively impact a specific metric.
Request path & query params
ID of the Metric
Measurement for the provided metric. If omitted, the default for the metric will be used.
Sort order.
Timeframe window to limit results by. Must be provided as an array query string parameter (e.g. timeframe[]=).
Accepted formats are...
- array of epoch timestamps e.g.
timeframe[]=1498867200&timeframe[]=1498953600
- duration string e.g.
timeframe[]=24:hours or timeframe[]=7:days
{
"total_row_count": 18,
"timeframe": [
1610029610,
1610116010
],
"meta": {
"aggregation": "view_end"
},
"data": [
{
"total_watch_time": 351144,
"total_playing_time": 341144,
"total_views": 1,
"negative_impact_score": -5,
"metric": 9,
"filter_value": "",
"filter_column": "video_title"
},
{
"total_watch_time": 513934,
"total_views": 5,
"negative_impact_score": 0,
"metric": 4,
"filter_value": "US",
"filter_column": "country"
}
]
}
Get metric timeseries dataget
Returns timeseries data for a specific metric.
Each interval represented in the data array contains an array with the following values:
- the first element is the interval time
- the second element is the calculated metric value
- the third element is the number of views in the interval that have a valid metric value
Request path & query params
ID of the Metric
Timeframe window to limit results by. Must be provided as an array query string parameter (e.g. timeframe[]=).
Accepted formats are...
- array of epoch timestamps e.g.
timeframe[]=1498867200&timeframe[]=1498953600
- duration string e.g.
timeframe[]=24:hours or timeframe[]=7:days
Limit the results to rows that match conditions from provided key:value pairs. Must be provided as an array query string parameter.
To exclude rows that match a certain condition, prepend a !
character to the dimension.
Possible filter names are the same as returned by the List Filters endpoint.
Example:
filters[]=operating_system:windows&filters[]=!country:US
Measurement for the provided metric. If omitted, the default for the metric will be used.
Sort order.
Time granularity to group results by. If this value is omitted, a default granularity is chosen based on the timeframe.
For timeframes of 6 hours or less, the default granularity is ten_minutes
. Between 6 hours and 15 days inclusive, the default granularity is hour
. The granularity of timeframes that exceed 15 days is day
. This default behavior is subject to change; it is strongly suggested that you explicitly specify the granularity.
{
"total_row_count": 2,
"timeframe": [
1610029711,
1610116111
],
"meta": {
"aggregation": "view_end"
},
"data": [
[
"2021-01-07T14:00:00Z",
"0.8743536882994202",
"154240"
],
[
"2021-01-07T15:00:00Z",
"0.8929105055911401",
"156056"
]
]
}
List all metric valuesget
List all of the values across every breakdown for a specific metric.
Request path & query params
Timeframe window to limit results by. Must be provided as an array query string parameter (e.g. timeframe[]=).
Accepted formats are...
- array of epoch timestamps e.g.
timeframe[]=1498867200&timeframe[]=1498953600
- duration string e.g.
timeframe[]=24:hours or timeframe[]=7:days
Limit the results to rows that match conditions from provided key:value pairs. Must be provided as an array query string parameter.
To exclude rows that match a certain condition, prepend a !
character to the dimension.
Possible filter names are the same as returned by the List Filters endpoint.
Example:
filters[]=operating_system:windows&filters[]=!country:US
Dimension the specified value belongs to
Value to show all available metrics for
{
"total_row_count": 1,
"timeframe": [
1610029906,
1610116306
],
"data": [
{
"watch_time": 513934,
"view_count": 5,
"started_views": 6,
"ended_views": 5,
"unique_viewers": 6,
"total_playing_time": 503934,
"name": "totals"
},
{
"value": 6,
"type": "number",
"name": "Views",
"metric": "views",
"items": [
{
"value": 6,
"type": "number",
"name": "Unique Viewers",
"metric": "unique_viewers"
},
{
"value": 503934,
"type": "milliseconds",
"name": "Playing Time",
"metric": "playing_time"
}
]
},
{
"value": 0.7803472280502319,
"type": "score",
"name": "Overall Score",
"metric": "viewer_experience_score"
},
{
"value": 0.8,
"type": "score",
"name": "Playback Failure Score",
"metric": "playback_failure_score",
"items": [
{
"value": 0.2,
"type": "percentage",
"name": "Playback Failure Percentage",
"metric": "playback_failure_percentage"
}
]
},
{
"value": 0.9991008877754212,
"type": "score",
"name": "Startup Time Score",
"metric": "startup_time_score",
"items": [
{
"value": 4,
"type": "milliseconds",
"name": "Video Startup Time (median)",
"metric": "video_startup_time",
"measurement": "median"
},
{
"value": 9,
"type": "milliseconds",
"name": "Video Startup Time (95th %)",
"metric": "video_startup_time",
"measurement": "95th"
},
{
"value": 52.5625,
"type": "milliseconds",
"name": "Player Startup Time (median)",
"metric": "player_startup_time",
"measurement": "median"
},
{
"value": 60.0625,
"type": "milliseconds",
"name": "Player Startup Time (95th %)",
"metric": "player_startup_time",
"measurement": "95th"
},
{
"value": 122.37890625,
"type": "milliseconds",
"name": "Page Load Time (median)",
"metric": "page_load_time",
"measurement": "median"
},
{
"value": 264.0625,
"type": "milliseconds",
"name": "Page Load Time (95th %)",
"metric": "page_load_time",
"measurement": "95th"
},
{
"value": 182.25,
"type": "milliseconds",
"name": "Aggregate Startup Time (median)",
"metric": "aggregate_startup_time",
"measurement": "median"
},
{
"value": 319.515625,
"type": "milliseconds",
"name": "Aggregate Startup Time (95th %)",
"metric": "aggregate_startup_time",
"measurement": "95th"
},
{
"value": 3042,
"type": "milliseconds",
"name": "Seek Latency",
"metric": "seek_latency"
},
{
"value": 0,
"type": "percentage",
"name": "Exits Before Video Start",
"metric": "exits_before_video_start"
}
]
},
{
"value": 0.9523247838020324,
"type": "score",
"name": "Rebuffer Score",
"metric": "rebuffer_score",
"items": [
{
"value": 0.0005564916895943838,
"type": "percentage",
"name": "Rebuffer Percentage",
"metric": "rebuffer_percentage"
},
{
"value": 0.11674650830651406,
"type": "per_minute",
"name": "Rebuffer Frequency",
"metric": "rebuffer_frequency"
},
{
"value": 0,
"type": "milliseconds",
"name": "Rebuffer Duration (median)",
"metric": "rebuffer_duration",
"measurement": "median"
},
{
"value": 256,
"type": "milliseconds",
"name": "Rebuffer Duration (95th %)",
"metric": "rebuffer_duration",
"measurement": "95th"
},
{
"value": 0,
"type": "number",
"name": "Rebuffer Count (median)",
"metric": "rebuffer_count",
"measurement": "median"
},
{
"value": 1,
"type": "number",
"name": "Rebuffer Count (95th %)",
"metric": "rebuffer_count",
"measurement": "95th"
}
]
},
{
"value": 1,
"type": "score",
"name": "Video Quality Score",
"metric": "video_quality_score",
"items": [
{
"value": 0,
"type": "percentage",
"name": "Upscale Percentage (median)",
"metric": "upscale_percentage",
"measurement": "median"
},
{
"value": 0,
"type": "percentage",
"name": "Upscale Percentage (95th %)",
"metric": "upscale_percentage",
"measurement": "95th"
},
{
"value": 0,
"type": "percentage",
"name": "Upscale Percentage (average)",
"metric": "upscale_percentage",
"measurement": "avg"
},
{
"value": 0.007,
"type": "percentage",
"name": "Downscale Percentage (median)",
"metric": "downscale_percentage",
"measurement": "median"
},
{
"value": 0.449,
"type": "percentage",
"name": "Downscale Percentage (95th %)",
"metric": "downscale_percentage",
"measurement": "95th"
},
{
"value": 0.11813909473676262,
"type": "percentage",
"name": "Downscale Percentage (average)",
"metric": "downscale_percentage",
"measurement": "avg"
},
{
"value": 0,
"type": "percentage",
"name": "Max Upscale Percentage (median)",
"metric": "max_upscale_percentage",
"measurement": "median"
},
{
"value": 0,
"type": "percentage",
"name": "Max Upscale Percentage (95th %)",
"metric": "max_upscale_percentage",
"measurement": "95th"
},
{
"value": 0.007,
"type": "percentage",
"name": "Max Downscale Percentage (median)",
"metric": "max_downscale_percentage",
"measurement": "median"
},
{
"value": 0.449,
"type": "percentage",
"name": "Max Downscale Percentage (95th %)",
"metric": "max_downscale_percentage",
"measurement": "95th"
},
{
"value": 851582.91015625,
"type": "mbps",
"name": "Weighted Average Bitrate (median)",
"metric": "weighted_average_bitrate",
"measurement": "median"
},
{
"value": 697016.265625,
"type": "mbps",
"name": "Weighted Average Bitrate (95th %)",
"metric": "weighted_average_bitrate",
"measurement": "95th"
}
]
}
]
}
Real-Time
Real-time metrics are used for operational monitoring of a video platform. The metrics are aggregated in five second intervals, across the views that are currently being watched. The real-time metrics' timeline, breakdown, and histogram representations are available via the APIs. Real-time metrics are similar but not directly comparable to the historical metrics in the Metrics APIs. These metrics are aggregated to provide the most operational detail possible used for resolving operational issues.
List Real-Time Dimensionsget
Lists available real-time dimensions.
{
"data": [
{
"display_name": "ASN",
"name": "asn"
},
{
"display_name": "CDN",
"name": "cdn"
},
{
"display_name": "Country",
"name": "country"
},
{
"display_name": "Operating system",
"name": "operating_system"
},
{
"display_name": "Player name",
"name": "player_name"
},
{
"display_name": "Region / State",
"name": "region"
},
{
"display_name": "Stream type",
"name": "stream_type"
},
{
"display_name": "Sub property ID",
"name": "sub_property_id"
},
{
"display_name": "Video series",
"name": "video_series"
},
{
"display_name": "Video title",
"name": "video_title"
}
],
"timeframe": [
1610034823,
1610121223
],
"total_row_count": 1
}
List Real-Time Metricsget
Lists available real-time metrics.
{
"data": [
{
"display_name": "Current Average Bitrate",
"name": "current-average-bitrate"
},
{
"display_name": "Current Concurrent Viewers (CCV)",
"name": "current-concurrent-viewers"
},
{
"display_name": "Current Rebuffering Percentage",
"name": "current-rebuffering-percentage"
},
{
"display_name": "Exits Before Video Start",
"name": "exits-before-video-start"
},
{
"display_name": "Playback Failure Percentage",
"name": "playback-failure-percentage"
},
{
"display_name": "Video Startup Time",
"name": "video-startup-time"
}
],
"timeframe": [
1610034858,
1610121258
],
"total_row_count": 1
}
Get Real-Time Breakdownget
Gets breakdown information for a specific dimension and metric along with the number of concurrent viewers and negative impact score.
Request path & query params
ID of the Realtime Metric
Dimension the specified value belongs to
Timestamp to limit results by. This value must be provided as a unix timestamp. Defaults to the current unix timestamp.
Limit the results to rows that match conditions from provided key:value pairs. Must be provided as an array query string parameter.
To exclude rows that match a certain condition, prepend a !
character to the dimension.
Possible filter names are the same as returned by the List Filters endpoint.
Example:
filters[]=operating_system:windows&filters[]=!country:US
Value to order the results by
Sort order.
{
"data": [
{
"concurrent_viewers": 2680,
"metric_value": 0.008195679660675846,
"negative_impact": 1,
"value": "FR"
},
{
"concurrent_viewers": 36,
"metric_value": 0.010317417106767573,
"negative_impact": 4,
"value": "ES"
},
{
"concurrent_viewers": 30,
"metric_value": 0.06408818534303201,
"negative_impact": 2,
"value": "RE"
},
{
"concurrent_viewers": 26,
"metric_value": 0.008232510579858339,
"negative_impact": 7,
"value": "GB"
},
{
"concurrent_viewers": 10,
"metric_value": 0,
"negative_impact": 26,
"value": "BE"
}
],
"timeframe": [
1610121421,
1610121421
],
"total_row_count": 1
}
Get Real-Time Histogram Timeseriesget
Gets histogram timeseries information for a specific metric.
Request path & query params
ID of the Realtime Histogram Metric
Limit the results to rows that match conditions from provided key:value pairs. Must be provided as an array query string parameter.
To exclude rows that match a certain condition, prepend a !
character to the dimension.
Possible filter names are the same as returned by the List Filters endpoint.
Example:
filters[]=operating_system:windows&filters[]=!country:US
{
"data": [
{
"average": 5298.1612903225805,
"bucket_values": [
{
"count": 3,
"percentage": 0.0967741935483871
},
{
"count": 0,
"percentage": 0
},
{
"count": 0,
"percentage": 0
},
{
"count": 1,
"percentage": 0.03225806451612903
},
{
"count": 16,
"percentage": 0.5161290322580645
},
{
"count": 7,
"percentage": 0.22580645161290322
},
{
"count": 4,
"percentage": 0.12903225806451613
}
],
"max_percentage": 0.5161290322580645,
"median": 4463,
"p95": 14834,
"sum": 31,
"timestamp": "2021-01-08T15:30:00Z"
},
{
"average": 3828.4146341463415,
"bucket_values": [
{
"count": 5,
"percentage": 0.12195121951219512
},
{
"count": 0,
"percentage": 0
},
{
"count": 0,
"percentage": 0
},
{
"count": 4,
"percentage": 0.0975609756097561
},
{
"count": 18,
"percentage": 0.43902439024390244
},
{
"count": 12,
"percentage": 0.2926829268292683
},
{
"count": 2,
"percentage": 0.04878048780487805
}
],
"max_percentage": 0.43902439024390244,
"median": 2625,
"p95": 7378,
"sum": 41,
"timestamp": "2021-01-08T15:31:00Z"
}
],
"meta": {
"bucket_unit": "milliseconds",
"buckets": [
{
"end": 100,
"start": 0
},
{
"end": 500,
"start": 100
},
{
"end": 1000,
"start": 500
},
{
"end": 2000,
"start": 1000
},
{
"end": 5000,
"start": 2000
},
{
"end": 10000,
"start": 5000
},
{
"end": 15000,
"start": 10000
}
]
},
"timeframe": [
1610119800,
1610121540
],
"total_row_count": 1
}
Get Real-Time Timeseriesget
Gets Time series information for a specific metric along with the number of concurrent viewers.
Request path & query params
ID of the Realtime Metric
Limit the results to rows that match conditions from provided key:value pairs. Must be provided as an array query string parameter.
To exclude rows that match a certain condition, prepend a !
character to the dimension.
Possible filter names are the same as returned by the List Filters endpoint.
Example:
filters[]=operating_system:windows&filters[]=!country:US
{
"data": [
{
"concurrent_viewers": 2790,
"date": "2021-01-08T15:31:20Z",
"value": 2790
},
{
"concurrent_viewers": 2788,
"date": "2021-01-08T15:31:25Z",
"value": 2788
},
{
"concurrent_viewers": 2791,
"date": "2021-01-08T15:31:30Z",
"value": 2791
},
{
"concurrent_viewers": 2791,
"date": "2021-01-08T15:31:35Z",
"value": 2791
},
{
"concurrent_viewers": 2792,
"date": "2021-01-08T15:31:40Z",
"value": 2792
}
],
"timeframe": [
1610119880,
1610121675
],
"total_row_count": 1
}
Dimensions
Dimensions are the types of metadata that can be collected for a video view. Some dimensions are collected automatically based on the playback or device, such as the viewer's Country or the device information. Other dimensions are specified by the developer when configuring a Mux Data video view such as the video title. The Dimensions APIs allow you to get a list of the supported dimensions and their values.
List Dimensionsget
List all available dimensions.
Note: This API replaces the list-filters API call.
{
"data": {
"advanced": [
"browser_version",
"operating_system_version",
"viewer_device_name",
"viewer_device_model",
"viewer_device_category",
"viewer_device_manufacturer",
"player_name",
"player_version",
"video_series",
"video_encoding_variant",
"experiment_name",
"sub_property_id",
"asn",
"cdn",
"viewer_connection_type",
"view_session_id",
"region",
"viewer_user_id",
"exit_before_video_start",
"preroll_ad_asset_hostname",
"preroll_ad_tag_hostname",
"preroll_played",
"preroll_requested"
],
"basic": [
"browser",
"operating_system",
"player_remote_played",
"player_software",
"player_software_version",
"player_mux_plugin_name",
"player_mux_plugin_version",
"player_autoplay",
"player_preload",
"video_title",
"video_id",
"stream_type",
"source_type",
"source_hostname",
"continent_code",
"country",
"player_error_code"
]
},
"timeframe": [
1610033879,
1610120279
],
"total_row_count": 1
}
Lists the values for a specific dimensionget
Lists the values for a dimension along with a total count of related views.
Note: This API replaces the list-filter-values API call.
Request path & query params
ID of the Dimension
Number of items to include in the response
Offset by this many pages, of the size of limit
Limit the results to rows that match conditions from provided key:value pairs. Must be provided as an array query string parameter.
To exclude rows that match a certain condition, prepend a !
character to the dimension.
Possible filter names are the same as returned by the List Filters endpoint.
Example:
filters[]=operating_system:windows&filters[]=!country:US
Timeframe window to limit results by. Must be provided as an array query string parameter (e.g. timeframe[]=).
Accepted formats are...
- array of epoch timestamps e.g.
timeframe[]=1498867200&timeframe[]=1498953600
- duration string e.g.
timeframe[]=24:hours or timeframe[]=7:days
{
"data": [
{
"total_count": 10000,
"value": "FR"
},
{
"total_count": 5000,
"value": "ES"
},
{
"total_count": 2000,
"value": "PT"
},
{
"total_count": 100,
"value": "DE"
},
{
"total_count": 1,
"value": "BE"
}
],
"timeframe": [
1610033976,
1610120376
],
"total_row_count": 5
}
Incidents
Incidents occur when an anomaly alert is triggered in Mux Data. The Incidents API provides operations related to the raising and managing of alerting incidents.
List Incidentsget
Returns a list of incidents.
Request path & query params
Number of items to include in the response
Offset by this many pages, of the size of limit
Value to order the results by
Sort order.
Status to filter incidents by
Severity to filter incidents by
{
"data": [
{
"affected_views": 71,
"affected_views_per_hour": 29,
"affected_views_per_hour_on_open": 75,
"breakdowns": [
{
"id": "abcdef",
"name": "error_type_id",
"value": "697070"
}
],
"description": "Something is broken",
"error_description": "No seriously, something is really really broken :(",
"id": "4u13td",
"impact": "*71 views* were affected at a rate of *29 per hour*",
"incident_key": "5312a7c0bbb5d8353bd88602f01fe58eb15e9febac8fd2f0d8ce8f1cb138145c",
"measured_value": 5.9,
"measured_value_on_close": 0.1,
"measurement": "error_rate",
"notification_rules": [],
"notifications": [
{
"attempted_at": "2021-01-05T09:52:15.119040Z",
"id": 103014,
"queued_at": "2021-01-05T09:52:14.945157Z"
},
{
"attempted_at": "2021-01-05T11:31:08.244462Z",
"id": 102025,
"queued_at": "2021-01-05T11:31:08.061924Z"
}
],
"resolved_at": "2021-01-05T11:31:04.000000Z",
"sample_size": 1000,
"sample_size_unit": "views",
"severity": "alert",
"started_at": "2021-01-05T09:04:46.000000Z",
"status": "closed",
"threshold": 5
},
{
"affected_views": 132,
"affected_views_per_hour": 11,
"affected_views_per_hour_on_open": 65,
"breakdowns": [
{
"id": "abcdef",
"name": "video_title",
"value": "Layla the dog video 1337"
},
{
"id": "abcdef",
"name": "error_type_id",
"value": "697065"
}
],
"description": "Something else is broken",
"error_description": "Detailed error: On no!",
"id": "rd9579",
"impact": "*132 views* were affected at a rate of *11 per hour*",
"incident_key": "fd9add7a85a013d768f4039f9e726133eddb476c2f16b22ebfe56f18f7c03b27",
"measured_value": 97,
"measured_value_on_close": 1,
"measurement": "error_rate",
"notification_rules": [],
"notifications": [
{
"attempted_at": "2020-12-31T09:26:19.416919Z",
"id": 102198,
"queued_at": "2020-12-31T09:26:18.987717Z"
},
{
"attempted_at": "2020-12-31T20:23:57.279325Z",
"id": 101269,
"queued_at": "2020-12-31T20:23:56.997068Z"
}
],
"resolved_at": "2020-12-31T20:22:54.000000Z",
"sample_size": 100,
"sample_size_unit": "views",
"severity": "alert",
"started_at": "2020-12-31T07:56:22.000000Z",
"status": "closed",
"threshold": 96
}
],
"timeframe": [
1610035979,
1610122379
],
"total_row_count": 2
}
Get an Incidentget
Returns the details of an incident.
Request path & query params
ID of the Incident
{
"data": {
"affected_views": 2026,
"affected_views_per_hour": 84,
"affected_views_per_hour_on_open": 12857,
"breakdowns": [
{
"id": "abcdef",
"name": "error_type_id",
"value": "499680"
},
{
"id": "abcdef",
"name": "video_title",
"value": "Cute dogs"
}
],
"description": "This video is erroring a lot",
"error_description": "Error Type ID 499680",
"id": "g7q2df",
"impact": "*2026 views* were affected at a rate of *84 per hour*",
"incident_key": "045dfcbefdb68c6003aaf3bf5ed217493772519f28f14d129f95eaff159ea6d6b",
"measured_value": 100,
"measured_value_on_close": 8,
"measurement": "error_rate",
"notification_rules": [],
"notifications": [
{
"attempted_at": "2020-05-14T17:23:08.034662Z",
"id": 63293,
"queued_at": "2020-05-14T17:23:07.944457Z"
},
{
"attempted_at": "2020-05-13T17:22:30.444389Z",
"id": 62212,
"queued_at": "2020-05-13T17:22:30.354828Z"
}
],
"resolved_at": "2020-05-14T17:22:30.000000Z",
"sample_size": 100,
"sample_size_unit": "views",
"severity": "alert",
"started_at": "2020-05-13T17:21:54.000000Z",
"status": "closed",
"threshold": 100
},
"timeframe": [
1610036456,
1610122856
],
"total_row_count": null
}
List Related Incidentsget
Returns all the incidents that seem related to a specific incident.
Request path & query params
ID of the Incident
Number of items to include in the response
Offset by this many pages, of the size of limit
Value to order the results by
Sort order.
{
"data": [
{
"affected_views": 71,
"affected_views_per_hour": 29,
"affected_views_per_hour_on_open": 75,
"breakdowns": [
{
"id": "abcdef",
"name": "error_type_id",
"value": "697070"
}
],
"description": "Something is broken",
"error_description": "No seriously, something is really really broken :(",
"id": "4u13td",
"impact": "*71 views* were affected at a rate of *29 per hour*",
"incident_key": "5312a7c0bbb5d8353bd88602f01fe58eb15e9febac8fd2f0d8ce8f1cb138145c",
"measured_value": 5.9,
"measured_value_on_close": 0.1,
"measurement": "error_rate",
"notification_rules": [],
"notifications": [
{
"attempted_at": "2021-01-05T09:52:15.119040Z",
"id": 103014,
"queued_at": "2021-01-05T09:52:14.945157Z"
},
{
"attempted_at": "2021-01-05T11:31:08.244462Z",
"id": 102025,
"queued_at": "2021-01-05T11:31:08.061924Z"
}
],
"resolved_at": "2021-01-05T11:31:04.000000Z",
"sample_size": 1000,
"sample_size_unit": "views",
"severity": "alert",
"started_at": "2021-01-05T09:04:46.000000Z",
"status": "closed",
"threshold": 5
},
{
"affected_views": 132,
"affected_views_per_hour": 11,
"affected_views_per_hour_on_open": 65,
"breakdowns": [
{
"id": "abcdef",
"name": "video_title",
"value": "Layla the dog video 1337"
},
{
"id": "abcdef",
"name": "error_type_id",
"value": "697065"
}
],
"description": "Something else is broken",
"error_description": "Detailed error: On no!",
"id": "rd9579",
"impact": "*132 views* were affected at a rate of *11 per hour*",
"incident_key": "fd9add7a85a013d768f4039f9e726133eddb476c2f16b22ebfe56f18f7c03b27",
"measured_value": 97,
"measured_value_on_close": 1,
"measurement": "error_rate",
"notification_rules": [],
"notifications": [
{
"attempted_at": "2020-12-31T09:26:19.416919Z",
"id": 102198,
"queued_at": "2020-12-31T09:26:18.987717Z"
},
{
"attempted_at": "2020-12-31T20:23:57.279325Z",
"id": 101269,
"queued_at": "2020-12-31T20:23:56.997068Z"
}
],
"resolved_at": "2020-12-31T20:22:54.000000Z",
"sample_size": 100,
"sample_size_unit": "views",
"severity": "alert",
"started_at": "2020-12-31T07:56:22.000000Z",
"status": "closed",
"threshold": 96
}
],
"timeframe": [
1610035979,
1610122379
],
"total_row_count": 2
}