• Skip to Search
  • Skip to Content
  • Skip to Side Navigation
Getting StartedSDK ReferenceGlossary
  • Home
  • Getting Started
  • SDK Reference
  • Portal
  • How-To
  • Troubleshooting
  • FAQs
  • Reference
  • Glossary
REST API
Web SDK
Android SDK
iOS SDK
Unity SDK
React Native SDK
EdgeAuth SDK
  • Overview
  • Channel
  • Room
  • Stream
  • RTMP
  • Transformation
  • Reporting
  • Analytics
  • Notification
  • Live and On-Demand

Reporting API

APIs for generating reports.

Generate a Publishing Report

This API generates a publishing report for all streams during an interval.

In order to be able to generate reports, your account needs to be provisioned accordingly. Please contact your primary Phenix technical support contact if you wish to use reporting.

Publishing Report Request

Send a PUT request to /pcast/reporting/publishing endpoint as shown:

HTTP
1PUT /pcast/reporting/publishing HTTP/1.1
2Host: pcast.phenixrts.com
3Accept: application/json
4Content-Type: application/json
5Content-Length: 157
6Authorization: Basic YXBwbGljYXRpb25JZDpzZWNyZXQ=
7
8{
9 "publishingReport": {
10 "applicationIds": ["example.com"],
11 "start": "2020-01-01T00:00:00Z",
12 "end": "2020-02-01T00:00:00Z"
13 }
14}
cURL
1$ curl https://pcast.phenixrts.com/pcast/reporting/publishing \
2-u <applicationId>:<secret> \
3-H "Accept: text/csv" \
4-H "Content-Type: application/json" \
5-X PUT \
6-d '{
7 "publishingReport": {
8 "applicationIds": ["example.com"],
9 "start": "2020-01-01T00:00:00Z",
10 "end": "2020-02-01T00:00:00Z"
11 }
12 }'
13--remote-name
14--remote-header-name

Request Headers

HeaderDescription
Authorization (required)Use HTTP Basic Authentication with your applicationId and secret

Request Query Parameters

NameDescription
version (optional)If used, must be one of the options in Publishing Report Versions, in the format of 'YYYY-MM-dd'. If absent, defaults to 2021-10-20.

Publishing Report Versions

VersionDescription
2021-10-20The 2021-10-20 version of the report.
2021-09-07The 2021-09-07 version of the report.

Request Fields

FieldDescription
publishingReport (required)See PublishingReport object below

PublishingReport Object

FieldDescription
applicationIds (optional)Array of applications IDs to report for. By default, it will report publishing for the application ID from credentials.
streamIds (optional)Array of stream IDs to report for. Limits the report to just these streams.
channelIds (optional)Array of channel IDs to report for. Limits the report to just these channels.
channelAliases (optional)Array of channel aliases to report for. Limits the report to just these channels.
roomIds (optional)Array of room IDs to report for. Limits the report to just these rooms.
roomAliases (optional)Array of room aliases to report for. Limits the report to just these rooms.
tags (optional)Array of tags to report for. Limits the report to just these tags.
start (required)The report start time. Either an RFC3339 timestamp string or an integer of UNIX epoch time in milliseconds.
end (required)The report end time. Either an RFC3339 timestamp string or an integer of UNIX epoch time in milliseconds.

Note: All filter conditions are cumulative.

Publishing Report Response

The response is in CSV format.

Report Response Fields (Default, Version 2021-10-20)

ColumnDescription
ReportTimestampTime of report generation
PeriodStartTimestampStart time of the reporting period
PeriodEndTimestampEnd time of the reporting period
ApplicationIdApplication ID of the stream
ChannelAliasChannel alias of the stream
ChannelIdChannel ID of the stream
RoomAliasRoom alias of the stream
RoomIdRoom ID of the stream
StreamIdStream ID of the publisher
RegionRegion of the publisher
AudioQualityAudio quality of the publisher, or "video-only" if the publisher was video-only
VideoQualityVideo quality of the publisher, or "audio-only" if the publisher was audio-only
PublishedMinutesDuringPeriodThe duration published during the report period
PublishedMinutesTotalTotal duration of the publishing stream, empty if stream did not end within the report period
FramesPerSecondFrames per second of the publishing stream
PeakConcurrentViewsPeak number of concurrent viewing streams
TotalViewsTotal number of viewing streams
StartTimestampTimestamp at which the publishing stream started
EndTimestampTimestamp at which the publishing stream ended
StartedDuringPeriodWhether the publishing stream started during the period
EndedDuringPeriodWhether the publishing stream ended during the period
EndedReasonWhy the publishing stream ended, empty if stream did not end within the report period
DeviceIdUnique device ID of the publisher
RemoteAddressIP address of the publisher
ContributionMethodThe method of publishing, either "URI", "RTMP", or "ITP-WebRTC"
IngestStreamIdStream ID of the ingest stream, empty if stream did not have a corresponding ingest stream
IngestStreamEndedReasonWhy the ingest stream ended, empty if stream did not have a corresponding ingest stream
IngestSourceSource of the published stream, one of "iOS SDK", "Android SDK", "Web SDK", "Phenix Encoder", "RTMP Encoder", or "Admin API"
MultiBitrateTranscodingWhether MultiBitrate transcoding is done for the stream. "TRUE" if either 1) "streaming" capability is set and "streaming-lite" capability is missing, or 2) "on-demand" capability is set and "on-demand-lite" capability is missing, or 3) "multi-bitrate" capability is set.
RepackagingWhether repackaging work is done for the stream. "TRUE" if any of the capabilities "streaming", "on-demand", or "rtmp" is presernt, or if ContributionMethod is "URI" or "RTMP"
CompositionWhether composition work is done for the stream. "TRUE" if the capability "composition" is set.
TagsTags on the publishing stream
CapabilitiesCapabilities on the publishing stream
audio_onlyDoes the publisher have "audio-only" capability
video_onlyDoes the publisher have "video-only" capability
encoding_profileEncoding profile of the publishing stream
multi_bitrateDoes the publisher have "multi-bitrate" capability
multi_bitrate_contributionDoes the publisher have "multi-bitrate-contribution" capability
streamingDoes the publisher have "streaming" capability
on_demandDoes the publisher have "on-demand" or "on-demand-archive=PT..." capability
rtmpDoes the publisher have "rtmp" capability
streaming_liteDoes the publisher have "streaming-lite" capability
on_demand_liteDoes the publisher have "on-demand-lite" capability

Report Response Fields (Version 2021-09-07)

ColumnDescription
ReportTimestampTime of report generation
PeriodStartTimestampStart time of the reporting period
PeriodEndTimestampEnd time of the reporting period
ApplicationIdApplication ID of the stream
ChannelAliasChannel alias of the stream
ChannelIdChannel ID of the stream
RoomAliasRoom alias of the stream
RoomIdRoom ID of the stream
StreamIdStream ID of the publisher
RegionRegion of the publisher
AudioQualityAudio quality of the publisher, or "video-only" if the publisher was video-only
VideoQualityVideo quality of the publisher, or "audio-only" if the publisher was audio-only
PublishedMinutesDuringPeriodThe duration published during the report period
PublishedMinutesTotalTotal duration of the publishing stream, empty if stream did not end within the report period
PeakConcurrentViewsPeak number of concurrent viewing streams
TotalViewsTotal number of viewing streams
FramesPerSecondFrames per second of the publishing stream
StartTimestampTimestamp at which the publishing stream started
EndTimestampTimestamp at which the publishing stream ended
StartedDuringPeriodWhether the publishing stream started during the period
EndedDuringPeriodWhether the publishing stream ended during the period
EndedReasonWhy the publishing stream ended, empty if stream did not end within the report period
DeviceIdUnique device ID of the publisher
RemoteAddressIP address of the publisher
IngestStreamIdStream ID of the ingest stream, empty if stream did not have a corresponding ingest stream
IngestStreamEndedReasonWhy the ingest stream ended, empty if stream did not have a corresponding ingest stream
LiveDoes the publisher have "streaming" capability
VODDoes the publisher have "on-demand" or "on-demand-archive=PT..." capability
RTMPDoes the publisher have "rtmp" capability
LiveLiteDoes the publisher have "streaming-lite" capability
VODLiteDoes the publisher have "on-demand-lite" capability
MBRDoes the publisher have "multi-bitrate" capability
MBRContributionDoes the publisher have "multi-bitrate-contribution" capability
AudioOnlyDoes the publisher have "audio-only" capability
TagsTags on the publishing stream
CapabilitiesCapabilities on the publishing stream
EncodingProfileEncoding profile of the publishing stream
HTTP
1HTTP/1.1 200 OK
2Content-Type: application/json; charset=utf-8
3Content-Length: 1,494
4Content-Disposition: attachment; filename="20200305T161052Z-START20200101T000000Z-END20200201T000000Z-Publishing-fGGvDe.csv"
5
6ReportTimestamp,PeriodStartTimestamp,PeriodEndTimestamp,ApplicationId,ChannelAlias,ChannelId,RoomAlias,RoomId,StreamId,Region,AudioQuality,VideoQuality,PublishedMinutesDuringPeriod,PublishedMinutesTotal,PeakConcurrentViews,TotalViews,FramesPerSecond,StartTimestamp,EndTimestamp,StartedDuringPeriod,EndedDuringPeriod,EndedReason,DeviceId,RemoteAddress,Ingest,Live,VOD,RTMP,LiveLite,VODLite,MBR,MBRContribution,AudioOnly,Tags,Capabilities,EncodingProfile
72020-03-05T16:10:53.769Z,2020-01-01T00:00:00.000Z,2020-02-01T00:00:00.000Z,example.com,,us-northeast#example.com#channel123456.S1b486elbH4I,,,us-northeast#US-ASHBURN-AD-1.abc1dmrQ.20191204.LggGuzQ8,us-northeast,,sd,44640,,,,60.12,2019-12-04T12:36:22.476Z,,FALSE,FALSE,,a18af5b7cf914765bd066b13ba842a90953d0bb92bf58c7cfd7b6839b861e5ed,::ffff:52.4.228.111,FALSE,FALSE,TRUE,FALSE,FALSE,FALSE,FALSE,FALSE,FALSE,channelId:us-northeast#example.com#channel123456.S1b486elbH4I|Status:STREAMING,sd|detached|rtmp|publish-uri,phenix-2020
82020-03-05T16:10:53.769Z,2020-01-01T00:00:00.000Z,2020-02-01T00:00:00.000Z,example.com,,,exampleRoomAlias,asia-south#example#roomName.abcdee,asia-south#asia-south1-c.Bqac2GbH.20191203.Vxg6P1AD,asia-south,,sd,44640,,,,59.89,2019-12-03T02:57:15.756Z,,FALSE,FALSE,,3d14957e6209e1c77db3086557d6a42655f8a54ded2a2cea33c9f43506c56297,::ffff:53.5.212.150,FALSE,FALSE,FALSE,FALSE,FALSE,TRUE,FALSE,FALSE,FALSE,x-ingest,publish-uri|resilient|monitor-tracks|no-session-stream-events|transcoding={}|sd|multi-bitrate|prefer-h264|origin-shield,phenix-2020
cURL
1curl: Saved to filename '20200204T171148Z-START20200101T000000Z-END20200201T000000Z-RealTime-RWYkT1.csv'

If the request fails, the platform will return a failed response that contains a "status" field. The HTTP status code is set according to the "status" field. If a .csv file is created following a failure, that file will include the status message, e.g., {"status":"version-does-not-exist" id:null uri:null filename:null}

HTTP
1HTTP/1.1 400 Bad request
2Content-Type: application/json; charset=utf-8
3Content-Length: 37
4
5{"status":"excessive-report-interval"}
cURL
1$ cat publishing
2{
3 "status":"excessive-report-interval"
4}

Publishing report API Response fields

FieldDescription
statusSee status codes below

Publishing report API Status Codes

HTTPStatusRetryDescription
200 OKokneverReport was successfully created.
400 Bad RequestvariesneverIndicates an issue with the request.
400 Bad Requestexcessive-report-intervalneverThe interval for the report exceed 1 year.
400 Bad Requestperiod-start-outside-supported-windowneverThe year of the start of period is more than 1 year before the current year.
400 Bad Requestperiod-end-must-be-in-pastneverThe end of period is in future.
400 Bad Requestperiod-end-must-be-after-startneverThe end of period is less than or equal to the start of the period.
400 Bad Requestmalformed-version-in-request-query-parameterneverThe supplied version in HTTP query parameter does not conform to the format "YYYY-MM-dd".
400 Bad Requestversion-does-not-existneverThe supplied version in HTTP query parameter does not exist, see Publishing Report Versions for supported versions.
400 Bad RequestunsupportedneverThe parameter combination is not supported.
401 UnauthorizedunauthorizedneverThe streaming platform was not able to authorize the provided credentials.
408 Request Timeoutrequest-timeoutonce immediately, then exponential backoffRequest timed out likely due to temporary resource or network conditions. Please try again.
4XXvariesneverIndicates an issue with the request.
503 Service UnavailablecapacityonceThe system is temporarily overloaded. Please try again later.
5XXvariesonce immediately, then exponential backoffA transient server error.
Error Responses: Please be aware that some server errors 5XX and request validation errors 400 and 401 may result in an arbitrary response body not encoded in JSON.

Generate a Viewing Report

This API generates a viewing report for all streams during an interval.

In order to be able to generate reports, your account needs to be provisioned accordingly. Please contact your primary Phenix technical support contact if you wish to use reporting.

Viewing Report Request

Send a PUT request to /pcast/reporting/viewing endpoint as shown:

HTTP
1PUT /pcast/reporting/viewing HTTP/1.1
2Host: pcast.phenixrts.com
3Accept: application/json
4Content-Type: application/json
5Content-Length: 174
6Authorization: Basic YXBwbGljYXRpb25JZDpzZWNyZXQ=
7
8{
9 "viewingReport": {
10 "kind": "RealTime",
11 "applicationIds": ["example.com"],
12 "start": "2020-01-01T00:00:00Z",
13 "end": "2020-02-01T00:00:00Z"
14 }
15}
cURL
1$ curl https://pcast.phenixrts.com/pcast/reporting/viewing \
2-u <applicationId>:<secret> \
3-H "Accept: text/csv" \
4-H "Content-Type: application/json" \
5-X PUT \
6-d '{
7 "viewingReport": {
8 "kind": "RealTime",
9 "applicationIds": ["example.com"],
10 "start": "2020-01-01T00:00:00Z",
11 "end": "2020-02-01T00:00:00Z"
12 }
13 }'
14--remote-name
15--remote-header-name

Request Headers

HeaderDescription
Authorization (required)Use HTTP Basic Authentication with your applicationId and secret

Request Fields

FieldDescription
viewingReport (required)See ViewingReport object below

ViewingReport Object

FieldDescription
kind (required)Kind of viewing report to generate.
applicationIds (optional)Array of applications IDs to report for. By default, it will report viewing for the application ID from credentials.
streamIds (optional)Array of stream IDs to report for. Limits the report to just these streams.
sessionIds (optional)Array of session IDs to report for. Limits the report to just these sessions.
originStreamIds (optional)Array of origin stream IDs to report for. Limits the report to just these origin streams.
channelIds (optional)Array of channel IDs to report for. Limits the report to just these channels.
channelAliases (optional)Array of channel aliases to report for. Limits the report to just these channel aliases.
tags (optional)Array of tags to report for. Limits the report to just these tags.
originTags (optional)Array of origin tags to report for. Limits the report to just these origin tags.
start (required)The report start time. Either an RFC3339 timestamp string or an integer of UNIX epoch time in milliseconds.
end (required)The report end time. Either an RFC3339 timestamp string or an integer of UNIX epoch time in milliseconds.

Note: All filter conditions are cumulative.

ViewingReport Kinds

FieldDescription
RealTimeReport for real time viewing.
RTMPReport for RTMP viewing.
HLSReport for HLS viewing.
DASHReport for DASH viewing.

Viewing Report Response

The response is in CSV format.

Report Response Fields

ColumnDescriptionReal TimeRTMPHLSDASH
ReportTimestampTime of report generation✔✔✔✔
PeriodStartTimestampStart time of the reporting period✔✔✔✔
PeriodEndTimestampEnd time of the reporting period✔✔✔✔
ApplicationIdApplication ID of the stream✔✔✔✔
ChannelAliasChannel alias of the stream✔✔✔✔
ChannelIdChannel ID of the stream✔✔✔✔
OriginStreamIdStream ID of the origin✔✔✔✔
OriginRegionRegion of the origin✔✔✔✔
OriginFramesPerSecondFrames per second of the origin✔✔✔✔
OriginAudioQualityAudio quality of the origin, or "video-only" if the origin was video-only✔✔✔✔
OriginVideoQualityVideo quality of the origin, or "audio-only" if the origin was audio-only✔✔✔✔
OriginTagsTags on the origin stream✔✔✔✔
ViewedMinutesDuringPeriodThe duration viewed during the report period✔✔✔✔
ViewedMinutesTotalTotal duration of the viewing stream, empty if stream did not end within the report period✔✔××
TotalBytesThe total bytes bidirectionally transferred for the stream✔✔✔✔
StartTimestampTimestamp at which the viewing stream started✔✔✔✔
EndTimestampTimestamp at which the viewing stream ended✔✔✔✔
StartedDuringPeriodWhether the viewing stream started during the period✔✔✔✔
EndedDuringPeriodWhether the viewing stream ended during the period✔✔✔✔
StreamIdStream ID of the viewer✔✔××
RegionRegion of the viewer✔✔××
FramesPerSecondFrames per second of the viewer✔✔××
AudioQualityAudio quality of the viewing stream, or "video-only" if the viewer or corresponding origin was video-only✔✔××
VideoQualityVideo quality of the viewing stream, or "audio-only" if the viewer or corresponding origin was audio-only✔✔××
DeviceIdUnique device ID of the viewer✔✔✔✔
RemoteAddressIP address of the viewer✔✔✔✔
ContinentContinent of the viewer✔✔✔✔
CountryCountry of the viewer✔✔✔✔
StateState of the viewer✔✔✔✔
CityCity of the viewer✔✔✔✔
PostalCodePostal code of the viewer✔✔✔✔
UserAgentUser agent of the viewer✔✔✔✔
TagsTags on the viewing stream✔✔✔✔
NumberOfRequestsTotal number of HTTP requests made by the viewer within the report period××✔✔
HTTP
1HTTP/1.1 200 OK
2Content-Type: application/json; charset=utf-8
3Content-Length: 905
4Content-Disposition: attachment; filename="20200204T171148Z-START20200101T000000Z-END20200201T000000Z-RealTime-RWYkT1.csv"
5
6ReportTimestamp,PeriodStartTimestamp,PeriodEndTimestamp,ApplicationId,ChannelAlias,ChannelId,OriginStreamId,OriginRegion,OriginFramesPerSecond,OriginAudioQuality,OriginVideoQuality,OriginTags,TotalBytes,ViewedMinutesDuringPeriod,ViewedMinutesTotal,StartTimestamp,EndTimestamp,StartedDuringPeriod,EndedDuringPeriod,StreamId,Region,FramesPerSecond,AudioQuality,VideoQuality,DeviceId,RemoteAddress,UserAgent,Tags
72020-02-04T17:11:49.734Z,2020-01-01T00:00:00.000Z,2020-02-01T00:00:00.000Z,applicationId,test,europe-west#applicationId#test.123456,europe-west#europe-west1-b.98iO2zP0.20190102.PUFMxKEZ,europe-west,30.01,,hd,“”,52130,4,4,2020-01-02T13:38:58.114Z,2020-01-02T13:42:49.042Z,TRUE,TRUE,europe-west#europe-west1-b.98iO2zP0.20190102.PoohNQEi,europe-west,30.00,,hd,64dabda4d6fae4ac0926290c6851ff8586e0cd9f58067c0ee0013c6a73060dd1,1.2.3.4,Mozilla/5.0 (Windows NT 6.1; Trident/7.0; rv:11.0) like Gecko,“”
cURL
1curl: Saved to filename '20200204T171148Z-START20200101T000000Z-END20200201T000000Z-RealTime-RWYkT1.csv'

If the request fails, the platform will return a failed response that contains a "status" field. The HTTP status code is set according to the "status" field.

HTTP
1HTTP/1.1 400 Bad request
2Content-Type: application/json; charset=utf-8
3Content-Length: 37
4
5{"status":"excessive-report-interval"}
cURL
1$ cat viewing
2{
3 "status":"excessive-report-interval"
4}

Viewing Report API Response fields

FieldDescription
statusSee status codes below

Viewing Report API Status Codes

HTTPStatusRetryDescription
200 OKokneverReport was successfully created.
400 Bad RequestvariesneverIndicates an issue with the request.
400 Bad Requestexcessive-report-intervalneverThe interval for the report exceed 1 year.
400 Bad Requestperiod-start-outside-supported-windowneverThe year of the start of period is more than 1 year before the current year.
400 Bad Requestperiod-end-must-be-in-pastneverThe end of period is in future.
400 Bad Requestperiod-end-must-be-after-startneverThe end of period is less than or equal to the start of the period.
400 Bad RequestunsupportedneverThe parameter combination is not supported.
401 UnauthorizedunauthorizedneverThe streaming platform was not able to authorize the provided credentials.
408 Request Timeoutrequest-timeoutonce immediately, then exponential backoffRequest timed out likely due to temporary resource or network conditions. Please try again.
4XXvariesneverIndicates an issue with the request.
503 Service UnavailablecapacityonceThe system is temporarily overloaded. Please try again later.
5XXvariesonce immediately, then exponential backoffA transient server error.
Error Responses: Please be aware that some server errors 5XX and request validation errors 400 and 401 may result in an arbitrary response body not encoded in JSON.

Generate a Fork History Report

This API retrieves history of fork-channel API calls.

In order to be able to generate reports, your account needs to be provisioned accordingly. Please contact your primary Phenix technical support contact if you wish to use reporting.

Fork History Report Request

Send a PUT request to pcast/reporting/fork/history endpoint as shown:

HTTP
1PUT pcast/reporting/fork/history HTTP/1.1
2Host: pcast.phenixrts.com
3Accept: application/json
4Content-Type: application/json
5Content-Length: 158
6Authorization: Basic YXBwbGljYXRpb25JZDpzZWNyZXQ=
7
8{
9 "forkHistoryReport": {
10 "applicationIds": ["example.com"],
11 "start": "2020-01-01T00:00:00Z",
12 "end": "2020-01-02T00:00:00Z"
13 }
14}
cURL
1$ curl https://pcast.phenixrts.com/pcast/reporting/fork/history \
2-u <applicationId>:<secret> \
3-H "Accept: text/csv" \
4-H "Content-Type: application/json" \
5-X PUT \
6-d '{
7 "forkHistoryReport": {
8 "applicationIds": ["example.com"],
9 "start": "2020-01-01T00:00:00Z",
10 "end": "2020-01-02T00:00:00Z"
11 }
12 }'
13--remote-name
14--remote-header-name

Request Headers

HeaderDescription
Authorization (required)Use HTTP Basic Authentication with your applicationId and secret

Request Fields

FieldDescription
forkHistoryReport (required)See ForkHistoryReport object below

ForkHistoryReport Object

FieldDescription
applicationIds (optional)Array of applications IDs to report for. By default, it will report fork requests for the application ID from credentials. A record is selected as long as at least one of the target or destination channel belongs to the supplied application ID.
destinationChannelIds (optional)Array of destination channel IDs to report for.
end (required)The report end time. Either an RFC3339 timestamp string or an integer of UNIX epoch time in milliseconds.
sourceChannelIds (optional)Array of source channel IDs to report for.
start (required)The report start time. Either an RFC3339 timestamp string or an integer of UNIX epoch time in milliseconds.

Note: All filter conditions are cumulative.

Fork History Report Response

The response is in CSV format.

Report Response Fields

ColumnDescription
TimestampThe time at which an fork API call is made.
ApplicationIdThe application ID that the request belongs to.
SourceIdThe ID of the room that was forked from.
DestinationIdThe ID of the room that was forked to.
RequestMethodThe HTTP request method of the API call.
RequestURLThe URL of the request.
RequestSizeThe size of the request.
StatusThe status code of the request.
ResponseSizeThe size of the response.
UserAgentThe useragent from which the request was sent.
RemoteAddressThe remote address from which the request was sent.
HTTP
1HTTP/1.1 200 OK
2Content-Type: application/json; charset=utf-8
3Content-Length: 85
4Content-Disposition: attachment; filename="20200204T171148Z-START20200101T000000Z-END20200102T000000Z-ForkHistory-RWYkT1.csv"
5
6Timestamp,ApplicationId,SourceId,DestinationId,RequestMethod,RequestURL,RequestSize,Status,ResponseSize,UserAgent,RemoteAddress
72020-01-01 03:10:00,example.com,us-east#example.com#2,uk-southeast#example.com#1,PUT,https://pcast.phenixrts.com/pcast/channel/uk-southeast#example.com#1/fork/us-east#example.com#2,465,200,978,okhttp/3.12.1,111.22.333.444
82020-01-02 03:12:00,example.com,us-east#example.com#4,uk-southeast#example.com#3,PUT,https://pcast.phenixrts.com/pcast/channel/uk-southeast#example.com#3/fork/us-east#example.com#4,482,200,938,okhttp/3.12.1,555.66.777.888
cURL
1curl: Saved to filename '20200204T171148Z-START20200101T000000Z-END20200102T000000Z-ForkHistory-RWYkT1.csv'

If the request fails, the platform will return a failed response that contains a "status" field. The HTTP status code is set according to the "status" field.

HTTP
1HTTP/1.1 400 Bad request
2Content-Type: application/json; charset=utf-8
3Content-Length: 37
4
5{"status":"excessive-report-interval"}
cURL
1$ cat history
2{
3 "status":"excessive-report-interval"
4}

Fork History Report API Response Fields

FieldDescription
statusSee status codes below

Fork History Report API Status Codes

HTTPStatusRetryDescription
200 OKokneverReport was successfully created.
400 Bad RequestvariesneverIndicates an issue with the request.
400 Bad Requestexcessive-report-intervalneverThe interval for the report exceed 1 day.
400 Bad Requestperiod-start-outside-supported-windowneverThe year of the start of period is more than 1 year before the current year.
400 Bad Requestperiod-end-must-be-in-pastneverThe end of period is in future.
400 Bad Requestperiod-end-must-be-after-startneverThe end of period is less than or equal to the start of the period.
400 Bad RequestunsupportedneverThe parameter combination is not supported.
401 UnauthorizedunauthorizedneverThe streaming platform was not able to authorize the provided credentials.
408 Request Timeoutrequest-timeoutonce immediately, then exponential backoffRequest timed out likely due to temporary resource or network conditions. Please try again.
413 Payload Too Largemaximal-result-size-exceededneverThe size of the result exceeds the maximum allowed (10GB).
4XXvariesneverIndicates an issue with the request.
503 Service UnavailablecapacityonceThe system is temporarily overloaded. Please try again later.
5XXvariesonce immediately, then exponential backoffA transient server error.
Error Responses: Please be aware that some server errors 5XX and request validation errors 400 and 401 may result in an arbitrary response body not encoded in JSON.

Generate an Ingest Report

This API generates an ingest report for the given interval.

In order to be able to generate reports, your account needs to be provisioned accordingly. Please contact your primary Phenix technical support contact if you wish to use reporting.

Ingest Report Request

Send a PUT request to pcast/ingest/buffer endpoint as shown:

HTTP
1PUT pcast/ingest/buffer HTTP/1.1
2Host: pcast.phenixrts.com
3Accept: application/json
4Content-Type: application/json
5Content-Length: 174
6Authorization: Basic YXBwbGljYXRpb25JZDpzZWNyZXQ=
7
8{
9 "ingestReport": {
10 "kind": "BufferUnderrun",
11 "applicationIds": ["example.com"],
12 "start": "2020-01-01T00:00:00Z",
13 "end": "2020-01-02T00:00:00Z"
14 }
15}
cURL
1$ curl https://pcast.phenixrts.com/pcast/ingest/buffer \
2-u <applicationId>:<secret> \
3-H "Accept: text/csv" \
4-H "Content-Type: application/json" \
5-X PUT \
6-d '{
7 "ingestReport": {
8 "kind": "BufferUnderrun",
9 "applicationIds": ["example.com"],
10 "start": "2020-01-01T00:00:00Z",
11 "end": "2020-01-02T00:00:00Z"
12 }
13 }'
14--remote-name
15--remote-header-name

Request Headers

HeaderDescription
Authorization (required)Use HTTP Basic Authentication with your applicationId and secret

Request Fields

FieldDescription
ingestReport (required)See IngestReport object below

IngestReport Object

FieldDescription
kind (required)Kind of ingest report to generate.
applicationIds (optional)Array of applications IDs to report for. By default, it will report ingest for the application ID from credentials.
streamIds (optional)Array of stream IDs to report for. Limits the report to just these streams.
channelIds (optional)Array of channel IDs to report for. Limits the report to just these channels IDs.
channelAliases (optional)Array of channel aliases to report for. Limits the report to just these channel aliases.
ingestIds (optional)Array of ingest IDs to report for. Limits the report to just these ingest IDs.
start (required)The report start time. Either an RFC3339 timestamp string or an integer of UNIX epoch time in milliseconds.
end (required)The report end time. Either an RFC3339 timestamp string or an integer of UNIX epoch time in milliseconds.

Note: All filter conditions are cumulative.

IngestReport Kinds

FieldDescription
BufferUnderrunReport for ingest buffer underrrun.

Ingest Report Response

The response is in CSV format.

Report Response Fields

ColumnDescriptionBufferUnderrun
ApplicationIdApplication ID of the stream✔
ChannelAliasChannel alias of the stream✔
ChannelIdChannel ID of the stream✔
StreamIdStream ID of the publisher✔
IngestIdIngest ID of the publisher✔
MediaTypeMedia type of the publisher✔
SsrcSsrc of the publisher✔
StartOfUnderrunTimestamp at which the ingest buffer underrun started✔
EndOfUnderrunTimestamp at which the ingest buffer underrun ended✔
DurationMillisecondThe duration of the ingest event in milliseconds✔
HTTP
1HTTP/1.1 200 OK
2Content-Type: application/json; charset=utf-8
3Content-Length: 85
4Content-Disposition: attachment; filename="20200204T171148Z-START20200101T000000Z-END20200102T000000Z-BufferUnderrun-RWYkT1.csv"
5
6ApplicationId,ChannelAlias,ChannelId,StreamId,IngestId,MediaType,Ssrc,StartOfUnderrun,EndOfUnderrun,DurationMillisecond
7example.com,MT_2audio,us-northeast#demo#mt2Audio.8sV13fIRnn4D,asia-east#asia-east1-b.4O506ci8.20200601.PSfVsDhh,asia-east#asia-east1-b.4O506ci8.20200601.ItnIMcjA,audio,4155586604,2020-01-01T20:16:38.294Z,2020-01-01T20:16:38.378Z,84
8example.com,MT_2audio,us-northeast#demo#mt2Audio.8sV13fIRnn4D,asia-east#asia-east1-b.4O506ci8.20200601.PSfVsDhh,asia-east#asia-east1-b.4O506ci8.20200601.ItnIMcjA,audio,4155586604,2020-01-01T20:16:38.922Z,2020-01-01T20:16:39.007Z,85
cURL
1curl: Saved to filename '20200204T171148Z-START20200101T000000Z-END20200102T000000Z-BufferUnderrun-RWYkT1.csv'

If the request fails, the platform will return a failed response that contains a "status" field. The HTTP status code is set according to the "status" field.

HTTP
1HTTP/1.1 400 Bad request
2Content-Type: application/json; charset=utf-8
3Content-Length: 37
4
5{"status":"excessive-report-interval"}
cURL
1$ cat ingest
2{
3 "status":"excessive-report-interval"
4}

Ingest Report API Response Fields

FieldDescription
statusSee status codes below

Ingest Report API Status Codes

HTTPStatusRetryDescription
200 OKokneverReport was successfully created.
400 Bad RequestvariesneverIndicates an issue with the request.
400 Bad Requestexcessive-report-intervalneverThe interval for the report exceed 1 day.
400 Bad Requestperiod-start-outside-supported-windowneverThe year of the start of period is more than 1 year before the current year.
400 Bad Requestperiod-end-must-be-in-pastneverThe end of period is in future.
400 Bad Requestperiod-end-must-be-after-startneverThe end of period is less than or equal to the start of the period.
400 Bad RequestunsupportedneverThe parameter combination is not supported.
401 UnauthorizedunauthorizedneverThe streaming platform was not able to authorize the provided credentials.
408 Request Timeoutrequest-timeoutonce immediately, then exponential backoffRequest timed out likely due to temporary resource or network conditions. Please try again.
4XXvariesneverIndicates an issue with the request.
503 Service UnavailablecapacityonceThe system is temporarily overloaded. Please try again later.
5XXvariesonce immediately, then exponential backoffA transient server error.
Error Responses: Please be aware that some server errors 5XX and request validation errors 400 and 401 may result in an arbitrary response body not encoded in JSON.

Generate a Network Throughput Report

This API generates a network throughput report for the given interval.

In order to be able to generate reports, your account needs to be provisioned accordingly. Please contact your primary Phenix technical support contact if you wish to use reporting.

Network Throughput Report Request

Send a PUT request to pcast/network/throughput endpoint as shown:

HTTP
1PUT pcast/network/throughput HTTP/1.1
2Host: pcast.phenixrts.com
3Accept: application/json
4Content-Type: application/json
5Content-Length: 185
6Authorization: Basic YXBwbGljYXRpb25JZDpzZWNyZXQ=
7
8{
9 "networkReport": {
10 "applicationIds": ["example.com"],
11 "start": "2021-01-01T00:00:00Z",
12 "end": "2021-01-02T00:00:00Z"
13 }
14}
cURL
1$ curl https://pcast.phenixrts.com/pcast/network/throughput \
2-u <applicationId>:<secret> \
3-H "Accept: text/csv" \
4-H "Content-Type: application/json" \
5-X PUT \
6-d '{
7 "networkReport": {
8 "applicationIds": ["example.com"],
9 "start": "2021-01-01T00:00:00Z",
10 "end": "2021-01-02T00:00:00Z"
11 }
12 }'
13--remote-name
14--remote-header-name

Request Headers

HeaderDescription
Authorization (required)Use HTTP Basic Authentication with your applicationId and secret

Request Fields

FieldDescription
networkReport (required)See NetworkReport object below

NetworkReport Object

FieldDescription
applicationIds (optional)Array of applications IDs to report for. By default, it will report network for the application ID from credentials.
streamIds (optional)Array of stream IDs to report for. Limits the report to just these streams.
channelIds (optional)Array of channel IDs to report for. Limits the report to just these channels IDs.
channelAliases (optional)Array of channel aliases to report for. Limits the report to just these channel aliases.
roomIds (optional)Array of room IDs to report for. Limits the report to just these rooms.
roomAliases (optional)Array of room aliases to report for. Limits the report to just these rooms.
start (required)The report start time. Either an RFC3339 timestamp string or an integer of UNIX epoch time in milliseconds.
end (required)The report end time. Either an RFC3339 timestamp string or an integer of UNIX epoch time in milliseconds.

Note: All filter conditions are cumulative.

Network Throughput Report Response

The response is in CSV format.

Report Response Fields

ColumnDescriptionThroughput
TimeBucketAggregated time bucket (in invervals of SECONDS)✔
MinimalTimestampMinimal timestamp window of normalized throughput✔
MaximalTimestampMaximal timestamp window of normalized throughput✔
KindKind/Media type of the stream✔
NumberOfSsrcTotal number of Synchronization Source(s) in TimeBucket✔
NumberOfStreamsTotal number of Stream(s) in TimeBucket✔
MediaBitsPerSecondThroughputNumber of payload bits sent as part of Media packets in TimeBucket✔
FecBitsPerSecondThroughputNumber of payload bits sent as part of FEC packets in TimeBucket✔
RtpBitsPerSecondThroughputNumber of payload bits sent as part of RTP packets in TimeBucket✔
HTTP
1HTTP/1.1 200 OK
2Content-Type: application/json; charset=utf-8
3Content-Length: 1604
4Content-Disposition: attachment; filename="20210915T230840Z-START20210903T173000Z-END20210903T180000Z-Throughput-eTe4HH.csv"
5
6TimeBucket,MinimalTimestamp,MaximalTimestamp,Kind,NumberOfSsrc,NumberOfStreams,MediaBitsPerSecondThroughput,FecBitsPerSecondThroughput,RtpBitsPerSecondThroughput
72021-09-03 17:45:35 UTC,2021-09-03 17:45:41.775 UTC,2021-09-03 17:45:41.775 UTC,audio,1,1,29116,,43260
82021-09-03 17:45:36 UTC,2021-09-03 17:45:41.775 UTC,2021-09-03 17:45:41.775 UTC,audio,1,1,29116,,43260
92021-09-03 17:45:37 UTC,2021-09-03 17:45:41.775 UTC,2021-09-03 17:45:41.775 UTC,audio,1,1,29116,,43260
102021-09-03 17:45:38 UTC,2021-09-03 17:45:41.775 UTC,2021-09-03 17:45:41.775 UTC,audio,1,1,29116,,43260
112021-09-03 17:45:39 UTC,2021-09-03 17:45:41.775 UTC,2021-09-03 17:45:41.775 UTC,audio,1,1,29116,,43260
122021-09-03 17:45:40 UTC,2021-09-03 17:45:41.775 UTC,2021-09-03 17:45:41.775 UTC,audio,1,1,29116,,43260
132021-09-03 17:45:41 UTC,2021-09-03 17:45:41.775 UTC,2021-09-03 17:45:41.775 UTC,audio,1,1,29116,,43260
142021-09-03 17:45:35 UTC,2021-09-03 17:45:41.773 UTC,2021-09-03 17:45:41.773 UTC,video,1,1,51600,,59784
152021-09-03 17:45:36 UTC,2021-09-03 17:45:41.773 UTC,2021-09-03 17:45:41.773 UTC,video,1,1,51600,,59784
162021-09-03 17:45:37 UTC,2021-09-03 17:45:41.773 UTC,2021-09-03 17:45:41.773 UTC,video,1,1,51600,,59784
172021-09-03 17:45:38 UTC,2021-09-03 17:45:41.773 UTC,2021-09-03 17:45:41.773 UTC,video,1,1,51600,,59784
182021-09-03 17:45:39 UTC,2021-09-03 17:45:41.773 UTC,2021-09-03 17:45:41.773 UTC,video,1,1,51600,,59784
192021-09-03 17:45:40 UTC,2021-09-03 17:45:41.773 UTC,2021-09-03 17:45:41.773 UTC,video,1,1,51600,,59784
202021-09-03 17:45:41 UTC,2021-09-03 17:45:41.773 UTC,2021-09-03 17:45:41.773 UTC,video,1,1,51600,,59784
cURL
1curl: Saved to filename '20210915T230840Z-START20210903T173000Z-END20210903T180000Z-Throughput-eTe4HH.csv'

If the request fails, the platform will return a failed response that contains a "status" field. The HTTP status code is set according to the "status" field.

HTTP
1HTTP/1.1 400 Bad request
2Content-Type: application/json; charset=utf-8
3Content-Length: 39
4
5{"status":"excessive-report-interval"}
cURL
1$ cat network
2{
3 "status":"excessive-report-interval"
4}

Network Throughput Report API Response Fields

FieldDescription
statusSee status codes below

Network Throughput Report API Status Codes

HTTPStatusRetryDescription
200 OKokneverReport was successfully created.
400 Bad RequestvariesneverIndicates an issue with the request.
400 Bad Requestexcessive-report-intervalneverThe interval for the report exceed 1 day.
400 Bad Requestperiod-start-outside-supported-windowneverThe year of the start of period is more than 1 year before the current year.
400 Bad Requestperiod-end-must-be-in-pastneverThe end of period is in future.
400 Bad Requestperiod-end-must-be-after-startneverThe end of period is less than or equal to the start of the period.
400 Bad RequestunsupportedneverThe parameter combination is not supported.
401 UnauthorizedunauthorizedneverThe streaming platform was not able to authorize the provided credentials.
408 Request Timeoutrequest-timeoutonce immediately, then exponential backoffRequest timed out likely due to temporary resource or network conditions. Please try again.
4XXvariesneverIndicates an issue with the request.
503 Service UnavailablecapacityonceThe system is temporarily overloaded. Please try again later.
5XXvariesonce immediately, then exponential backoffA transient server error.
Error Responses: Please be aware that some server errors 5XX and request validation errors 400 and 401 may result in an arbitrary response body not encoded in JSON.

Generate a Network Packet Loss Rate Report

This API generates a network packet loss rate report for the given interval.

In order to be able to generate reports, your account needs to be provisioned accordingly. Please contact your primary Phenix technical support contact if you wish to use reporting.

Network Packet Loss Rate Report Request

Send a PUT request to pcast/network/packet-loss-rate endpoint as shown:

HTTP
1PUT pcast/network/packet-loss-rate HTTP/1.1
2Host: pcast.phenixrts.com
3Accept: application/json
4Content-Type: application/json
5Content-Length: 185
6Authorization: Basic YXBwbGljYXRpb25JZDpzZWNyZXQ=
7
8{
9 "networkReport": {
10 "applicationIds": ["example.com"],
11 "start": "2021-01-01T00:00:00Z",
12 "end": "2021-01-02T00:00:00Z"
13 }
14}
cURL
1$ curl https://pcast.phenixrts.com/pcast/network/packet-loss-rate \
2-u <applicationId>:<secret> \
3-H "Accept: text/csv" \
4-H "Content-Type: application/json" \
5-X PUT \
6-d '{
7 "networkReport": {
8 "applicationIds": ["test"],
9 "start": "2022-04-05T10:00:00Z",
10 "end": "2022-04-05T18:10:00Z",
11 "streamIds": ["local#standalone.WHFHRnl6.20220405.PS3S3QsW"]
12 }
13 }'
14--remote-name
15--remote-header-name

Request Headers

HeaderDescription
Authorization (required)Use HTTP Basic Authentication with your applicationId and secret

Request Fields

FieldDescription
networkReport (required)See NetworkReport object below

NetworkReport Object

FieldDescription
applicationIds (optional)Array of applications IDs to report for. By default, it will report network for the application ID from credentials.
streamIds (optional)Array of stream IDs to report for. Limits the report to just these streams.
channelIds (optional)Array of channel IDs to report for. Limits the report to just these channels IDs.
channelAliases (optional)Array of channel aliases to report for. Limits the report to just these channel aliases.
roomIds (optional)Array of room IDs to report for. Limits the report to just these rooms.
roomAliases (optional)Array of room aliases to report for. Limits the report to just these rooms.
start (required)The report start time. Either an RFC3339 timestamp string or an integer of UNIX epoch time in milliseconds.
end (required)The report end time. Either an RFC3339 timestamp string or an integer of UNIX epoch time in milliseconds.

Note: All filter conditions are cumulative.

Network Packet Loss Rate Report Response

The response is in CSV format.

Report Response Fields

ColumnDescription
TimeBucketAggregated time bucket (in invervals of SECONDS)✔
MinimalTimestampMinimal timestamp window of normalized PacketLossRate✔
MaximalTimestampMaximal timestamp window of PacketLossRate✔
KindKind/Media type of the stream✔
NumberOfSsrcTotal number of Synchronization Source(s) in TimeBucket✔
NumberOfStreamsTotal number of Stream(s) in TimeBucket✔
PacketLossRateAverage Packet loss rate over set of filtered SSRC streams in TimeBucket✔
HTTP
1HTTP/1.1 200 OK
2Content-Type: application/json; charset=utf-8
3Content-Length: 1604
4Content-Disposition: attachment; filename="20220422T110526Z-START20220405T100000Z-END20220405T181000Z-PacketLossRate-JdxuIr.csv"
5
6TimeBucket,MinimalTimestamp,MaximalTimestamp,Kind,NumberOfSsrc,NumberOfStreams,PacketLossRate
72022-04-05 13:40:36 UTC,2022-04-05 13:40:36.498 UTC,2022-04-05 13:40:36.498 UTC,audio,1,1,0.5
82022-04-05 13:40:37 UTC,2022-04-05 13:40:37.501 UTC,2022-04-05 13:40:37.501 UTC,audio,1,1,0.2578125
92022-04-05 13:40:38 UTC,2022-04-05 13:40:38.502 UTC,2022-04-05 13:40:38.899 UTC,audio,1,1,0.275390625
102022-04-05 13:40:39 UTC,,,audio,1,1,
112022-04-05 13:40:40 UTC,2022-04-05 13:40:40.418 UTC,2022-04-05 13:40:40.902 UTC,audio,1,1,0.376953125
122022-04-05 13:40:41 UTC,2022-04-05 13:40:41.903 UTC,2022-04-05 13:40:41.903 UTC,audio,1,1,0.42578125
132022-04-05 13:40:42 UTC,,,audio,1,1,
142022-04-05 13:40:43 UTC,2022-04-05 13:40:43.42 UTC,2022-04-05 13:40:43.42 UTC,audio,1,1,0.31640625
152022-04-05 13:40:44 UTC,2022-04-05 13:40:44.42 UTC,2022-04-05 13:40:44.42 UTC,audio,1,1,0.40625
162022-04-05 13:40:45 UTC,2022-04-05 13:40:45.421 UTC,2022-04-05 13:40:45.421 UTC,audio,1,1,0.2578125
172022-04-05 13:40:46 UTC,2022-04-05 13:40:46.899 UTC,2022-04-05 13:40:46.899 UTC,audio,1,1,0.30859375
182022-04-05 13:40:47 UTC,,,audio,1,1,
192022-04-05 13:40:48 UTC,2022-04-05 13:40:48.418 UTC,2022-04-05 13:40:48.418 UTC,audio,1,1,0.27734375
202022-04-05 13:40:49 UTC,2022-04-05 13:40:49.419 UTC,2022-04-05 13:40:49.419 UTC,audio,1,1,0.27734375
212022-04-05 13:40:50 UTC,,,audio,1,1,
222022-04-05 13:40:51 UTC,2022-04-05 13:40:51.423 UTC,2022-04-05 13:40:51.423 UTC,audio,1,1,0.5
232022-04-05 13:40:52 UTC,2022-04-05 13:40:52.419 UTC,2022-04-05 13:40:52.419 UTC,audio,1,1,0.1171875
242022-04-05 13:40:53 UTC,2022-04-05 13:40:53.422 UTC,2022-04-05 13:40:53.422 UTC,audio,1,1,0.1171875
252022-04-05 13:40:54 UTC,2022-04-05 13:40:54.421 UTC,2022-04-05 13:40:54.421 UTC,audio,1,1,0.4140625
262022-04-05 13:40:55 UTC,2022-04-05 13:40:55.419 UTC,2022-04-05 13:40:55.419 UTC,audio,1,1,0.20703125
272022-04-05 13:40:56 UTC,2022-04-05 13:40:56.422 UTC,2022-04-05 13:40:56.422 UTC,audio,1,1,0.23828125
282022-04-05 13:40:57 UTC,,,audio,1,1,
292022-04-05 13:40:58 UTC,2022-04-05 13:40:58.418 UTC,2022-04-05 13:40:58.418 UTC,audio,1,1,0.25
302022-04-05 13:40:59 UTC,2022-04-05 13:40:59.422 UTC,2022-04-05 13:40:59.9 UTC,audio,1,1,0.2578125
312022-04-05 13:41:00 UTC,,,audio,1,1,
322022-04-05 13:41:01 UTC,2022-04-05 13:41:01.42 UTC,2022-04-05 13:41:01.42 UTC,audio,1,1,0.3984375
332022-04-05 13:41:02 UTC,2022-04-05 13:41:02.421 UTC,2022-04-05 13:41:02.421 UTC,audio,1,1,0.31640625
342022-04-05 13:41:03 UTC,2022-04-05 13:41:03.422 UTC,2022-04-05 13:41:03.422 UTC,audio,1,1,0.28515625
352022-04-05 13:41:04 UTC,2022-04-05 13:41:04.421 UTC,2022-04-05 13:41:04.421 UTC,audio,1,1,0.3515625
362022-04-05 13:41:05 UTC,2022-04-05 13:41:05.42 UTC,2022-04-05 13:41:05.42 UTC,audio,1,1,0.30078125
372022-04-05 13:41:06 UTC,2022-04-05 13:41:06.423 UTC,2022-04-05 13:41:06.423 UTC,audio,1,1,0.359375
382022-04-05 13:41:07 UTC,2022-04-05 13:41:07.423 UTC,2022-04-05 13:41:07.423 UTC,audio,1,1,0.33203125
392022-04-05 13:41:08 UTC,2022-04-05 13:41:08.903 UTC,2022-04-05 13:41:08.903 UTC,audio,1,1,0.2734375
402022-04-05 13:41:09 UTC,,,audio,1,1,
412022-04-05 13:41:10 UTC,2022-04-05 13:41:10.423 UTC,2022-04-05 13:41:10.423 UTC,audio,1,1,0.28125
422022-04-05 13:41:11 UTC,2022-04-05 13:41:11.422 UTC,2022-04-05 13:41:11.422 UTC,audio,1,1,0.2578125
432022-04-05 13:41:12 UTC,2022-04-05 13:41:12.422 UTC,2022-04-05 13:41:12.422 UTC,audio,1,1,0.18359375
442022-04-05 13:41:13 UTC,,,audio,1,1,
452022-04-05 13:41:14 UTC,2022-04-05 13:41:14.421 UTC,2022-04-05 13:41:14.421 UTC,audio,1,1,0.27734375
462022-04-05 13:41:15 UTC,2022-04-05 13:41:15.422 UTC,2022-04-05 13:41:15.422 UTC,audio,1,1,0.375
472022-04-05 13:41:16 UTC,2022-04-05 13:41:16.422 UTC,2022-04-05 13:41:16.903 UTC,audio,1,1,0.265625
482022-04-05 13:41:17 UTC,,,audio,1,1,
492022-04-05 13:41:18 UTC,2022-04-05 13:41:18.423 UTC,2022-04-05 13:41:18.903 UTC,audio,1,1,0.330078125
502022-04-05 13:41:19 UTC,2022-04-05 13:41:19.903 UTC,2022-04-05 13:41:19.903 UTC,audio,1,1,0.15625
512022-04-05 13:41:20 UTC,,,audio,1,1,
522022-04-05 13:41:21 UTC,2022-04-05 13:41:21.422 UTC,2022-04-05 13:41:21.422 UTC,audio,1,1,0.1640625
532022-04-05 13:41:22 UTC,2022-04-05 13:41:22.423 UTC,2022-04-05 13:41:22.904 UTC,audio,1,1,0.240234375
542022-04-05 13:41:23 UTC,2022-04-05 13:41:23.903 UTC,2022-04-05 13:41:23.903 UTC,audio,1,1,0.2578125
552022-04-05 13:41:24 UTC,2022-04-05 13:41:24.903 UTC,2022-04-05 13:41:24.903 UTC,audio,1,1,0.296875
562022-04-05 13:41:25 UTC,,,audio,1,1,
572022-04-05 13:41:26 UTC,2022-04-05 13:41:26.422 UTC,2022-04-05 13:41:26.422 UTC,audio,1,1,0.21484375
582022-04-05 13:41:27 UTC,,,audio,1,1,
592022-04-05 13:41:28 UTC,,,audio,1,1,
602022-04-05 13:41:29 UTC,,,audio,1,1,
612022-04-05 13:41:30 UTC,2022-04-05 13:41:30.419 UTC,2022-04-05 13:41:30.419 UTC,audio,1,1,0.27734375
622022-04-05 13:41:31 UTC,2022-04-05 13:41:31.418 UTC,2022-04-05 13:41:31.903 UTC,audio,1,1,0.234375
632022-04-05 13:41:32 UTC,,,audio,1,1,
642022-04-05 13:41:33 UTC,2022-04-05 13:41:33.422 UTC,2022-04-05 13:41:33.903 UTC,audio,1,1,0.279296875
652022-04-05 13:41:34 UTC,,,audio,1,1,
662022-04-05 13:41:35 UTC,2022-04-05 13:41:35.422 UTC,2022-04-05 13:41:35.899 UTC,audio,1,1,0.2578125
672022-04-05 13:40:37 UTC,2022-04-05 13:40:37.399 UTC,2022-04-05 13:40:37.399 UTC,video,1,1,0.10546875
682022-04-05 13:40:38 UTC,2022-04-05 13:40:38.65 UTC,2022-04-05 13:40:38.65 UTC,video,1,1,0.12890625
692022-04-05 13:40:39 UTC,2022-04-05 13:40:39.497 UTC,2022-04-05 13:40:39.497 UTC,video,1,1,0
702022-04-05 13:40:40 UTC,2022-04-05 13:40:40.538 UTC,2022-04-05 13:40:40.538 UTC,video,1,1,0.046875
712022-04-05 13:40:41 UTC,2022-04-05 13:40:41.523 UTC,2022-04-05 13:40:41.523 UTC,video,1,1,0.12109375
722022-04-05 13:40:42 UTC,2022-04-05 13:40:42.491 UTC,2022-04-05 13:40:42.491 UTC,video,1,1,0.0859375
732022-04-05 13:40:43 UTC,2022-04-05 13:40:43.534 UTC,2022-04-05 13:40:43.534 UTC,video,1,1,0.078125
742022-04-05 13:40:44 UTC,2022-04-05 13:40:44.65 UTC,2022-04-05 13:40:44.65 UTC,video,1,1,0.07421875
752022-04-05 13:40:45 UTC,2022-04-05 13:40:45.618 UTC,2022-04-05 13:40:45.618 UTC,video,1,1,0.05078125
762022-04-05 13:40:46 UTC,2022-04-05 13:40:46.623 UTC,2022-04-05 13:40:46.623 UTC,video,1,1,0.10546875
772022-04-05 13:40:47 UTC,2022-04-05 13:40:47.609 UTC,2022-04-05 13:40:47.609 UTC,video,1,1,0.08203125
782022-04-05 13:40:48 UTC,2022-04-05 13:40:48.682 UTC,2022-04-05 13:40:48.682 UTC,video,1,1,0.0546875
792022-04-05 13:40:49 UTC,2022-04-05 13:40:49.137 UTC,2022-04-05 13:40:49.137 UTC,video,1,1,0.0859375
802022-04-05 13:40:50 UTC,2022-04-05 13:40:50.185 UTC,2022-04-05 13:40:50.185 UTC,video,1,1,0.0859375
812022-04-05 13:40:51 UTC,2022-04-05 13:40:51.656 UTC,2022-04-05 13:40:51.656 UTC,video,1,1,0.0546875
822022-04-05 13:40:52 UTC,2022-04-05 13:40:52.655 UTC,2022-04-05 13:40:52.655 UTC,video,1,1,0.0859375
832022-04-05 13:40:53 UTC,2022-04-05 13:40:53.695 UTC,2022-04-05 13:40:53.695 UTC,video,1,1,0.06640625
842022-04-05 13:40:54 UTC,2022-04-05 13:40:54.215 UTC,2022-04-05 13:40:54.215 UTC,video,1,1,0.0625
852022-04-05 13:40:55 UTC,2022-04-05 13:40:55.246 UTC,2022-04-05 13:40:55.246 UTC,video,1,1,0.0625
862022-04-05 13:40:56 UTC,2022-04-05 13:40:56.275 UTC,2022-04-05 13:40:56.275 UTC,video,1,1,0.1015625
872022-04-05 13:40:57 UTC,2022-04-05 13:40:57.309 UTC,2022-04-05 13:40:57.309 UTC,video,1,1,0.06640625
882022-04-05 13:40:58 UTC,2022-04-05 13:40:58.39 UTC,2022-04-05 13:40:58.92 UTC,video,1,1,0.0546875
892022-04-05 13:40:59 UTC,2022-04-05 13:40:59.89 UTC,2022-04-05 13:40:59.89 UTC,video,1,1,0.04296875
902022-04-05 13:41:00 UTC,,,video,1,1,
912022-04-05 13:41:01 UTC,2022-04-05 13:41:01.46 UTC,2022-04-05 13:41:01.46 UTC,video,1,1,0.0625
922022-04-05 13:41:02 UTC,2022-04-05 13:41:02.46 UTC,2022-04-05 13:41:02.46 UTC,video,1,1,0.05078125
932022-04-05 13:41:03 UTC,2022-04-05 13:41:03.532 UTC,2022-04-05 13:41:03.532 UTC,video,1,1,0.08203125
942022-04-05 13:41:04 UTC,2022-04-05 13:41:04.56 UTC,2022-04-05 13:41:04.56 UTC,video,1,1,0.05859375
952022-04-05 13:41:05 UTC,2022-04-05 13:41:05.524 UTC,2022-04-05 13:41:05.524 UTC,video,1,1,0.10546875
962022-04-05 13:41:06 UTC,2022-04-05 13:41:06.56 UTC,2022-04-05 13:41:06.56 UTC,video,1,1,0.04296875
972022-04-05 13:41:07 UTC,2022-04-05 13:41:07.524 UTC,2022-04-05 13:41:07.524 UTC,video,1,1,0.08203125
982022-04-05 13:41:08 UTC,2022-04-05 13:41:08.045 UTC,2022-04-05 13:41:08.987 UTC,video,1,1,0.052734375
992022-04-05 13:41:09 UTC,,,video,1,1,
1002022-04-05 13:41:10 UTC,2022-04-05 13:41:10.503 UTC,2022-04-05 13:41:10.503 UTC,video,1,1,0.1171875
1012022-04-05 13:41:11 UTC,2022-04-05 13:41:11.085 UTC,2022-04-05 13:41:11.085 UTC,video,1,1,0.0625
1022022-04-05 13:41:12 UTC,2022-04-05 13:41:12.649 UTC,2022-04-05 13:41:12.649 UTC,video,1,1,0.0546875
1032022-04-05 13:41:13 UTC,2022-04-05 13:41:13.631 UTC,2022-04-05 13:41:13.631 UTC,video,1,1,0.0703125
1042022-04-05 13:41:14 UTC,2022-04-05 13:41:14.196 UTC,2022-04-05 13:41:14.196 UTC,video,1,1,0.08203125
1052022-04-05 13:41:15 UTC,2022-04-05 13:41:15.739 UTC,2022-04-05 13:41:15.739 UTC,video,1,1,0.02734375
1062022-04-05 13:41:16 UTC,2022-04-05 13:41:16.286 UTC,2022-04-05 13:41:16.286 UTC,video,1,1,0.14453125
1072022-04-05 13:41:17 UTC,2022-04-05 13:41:17.325 UTC,2022-04-05 13:41:17.777 UTC,video,1,1,0.05078125
1082022-04-05 13:41:18 UTC,,,video,1,1,
1092022-04-05 13:41:19 UTC,2022-04-05 13:41:19.348 UTC,2022-04-05 13:41:19.841 UTC,video,1,1,0.06640625
1102022-04-05 13:41:20 UTC,,,video,1,1,
1112022-04-05 13:41:21 UTC,2022-04-05 13:41:21.337 UTC,2022-04-05 13:41:21.337 UTC,video,1,1,0.05859375
1122022-04-05 13:41:22 UTC,,,video,1,1,
1132022-04-05 13:41:23 UTC,2022-04-05 13:41:23.464 UTC,2022-04-05 13:41:23.464 UTC,video,1,1,0.0546875
1142022-04-05 13:41:24 UTC,2022-04-05 13:41:24.053 UTC,2022-04-05 13:41:24.053 UTC,video,1,1,0.0546875
1152022-04-05 13:41:25 UTC,2022-04-05 13:41:25.58 UTC,2022-04-05 13:41:25.58 UTC,video,1,1,0.109375
1162022-04-05 13:41:26 UTC,2022-04-05 13:41:26.653 UTC,2022-04-05 13:41:26.653 UTC,video,1,1,0.11328125
1172022-04-05 13:41:27 UTC,2022-04-05 13:41:27.754 UTC,2022-04-05 13:41:27.754 UTC,video,1,1,0.09765625
1182022-04-05 13:41:28 UTC,2022-04-05 13:41:28.684 UTC,2022-04-05 13:41:28.684 UTC,video,1,1,0.07421875
1192022-04-05 13:41:29 UTC,2022-04-05 13:41:29.156 UTC,2022-04-05 13:41:29.156 UTC,video,1,1,0.05078125
1202022-04-05 13:41:30 UTC,2022-04-05 13:41:30.756 UTC,2022-04-05 13:41:30.756 UTC,video,1,1,0.03515625
1212022-04-05 13:41:31 UTC,2022-04-05 13:41:31.684 UTC,2022-04-05 13:41:31.684 UTC,video,1,1,0.0703125
1222022-04-05 13:41:32 UTC,2022-04-05 13:41:32.776 UTC,2022-04-05 13:41:32.776 UTC,video,1,1,0.04296875
1232022-04-05 13:41:33 UTC,2022-04-05 13:41:33.29 UTC,2022-04-05 13:41:33.29 UTC,video,1,1,0.07421875
1242022-04-05 13:41:34 UTC,2022-04-05 13:41:34.782 UTC,2022-04-05 13:41:34.782 UTC,video,1,1,0.08203125
1252022-04-05 13:41:35 UTC,2022-04-05 13:41:35.36 UTC,2022-04-05 13:41:35.36 UTC,video,1,1,0.11328125
1262022-04-05 13:41:36 UTC,2022-04-05 13:41:36.297 UTC,2022-04-05 13:41:36.297 UTC,video,1,1,0.02734375
cURL
1curl: Saved to filename '20220407T125518Z-START20220405T100000Z-END20220405T181000Z-PacketLossRate-3VreKW.csv'

If the request fails, the platform will return a failed response that contains a "status" field. The HTTP status code is set according to the "status" field.

HTTP
1HTTP/1.1 400 Bad request
2Content-Type: application/json; charset=utf-8
3Content-Length: 39
4
5{"status":"excessive-report-interval"}
cURL
1$ cat network
2{
3 "status":"excessive-report-interval"
4}

Network Packet Loss Rate Report API Response Fields

FieldDescription
statusSee status codes below

Network Packet Loss Rate Report API Status Codes

HTTPStatusRetryDescription
200 OKokneverReport was successfully created.
400 Bad RequestvariesneverIndicates an issue with the request.
400 Bad Requestexcessive-report-intervalneverThe interval for the report exceed 1 day.
400 Bad Requestperiod-start-outside-supported-windowneverThe year of the start of period is more than 1 year before the current year.
400 Bad Requestperiod-end-must-be-in-pastneverThe end of period is in future.
400 Bad Requestperiod-end-must-be-after-startneverThe end of period is less than or equal to the start of the period.
400 Bad RequestunsupportedneverThe parameter combination is not supported.
401 UnauthorizedunauthorizedneverThe streaming platform was not able to authorize the provided credentials.
408 Request Timeoutrequest-timeoutonce immediately, then exponential backoffRequest timed out likely due to temporary resource or network conditions. Please try again.
4XXvariesneverIndicates an issue with the request.
503 Service UnavailablecapacityonceThe system is temporarily overloaded. Please try again later.
5XXvariesonce immediately, then exponential backoffA transient server error.
Error Responses: Please be aware that some server errors 5XX and request validation errors 400 and 401 may result in an arbitrary response body not encoded in JSON.
Page Content
    Copyright 2023 © Phenix RTS
    Privacy Policy | Terms of Service
    v2023-01-31T21:25:10