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:
PUT /pcast/reporting/publishing HTTP/1.1
Host: pcast.phenixrts.com
Accept: application/json
Content-Type: application/json
Content-Length: 157
Authorization: Basic YXBwbGljYXRpb25JZDpzZWNyZXQ=
{
"publishingReport": {
"applicationIds": ["example.com"],
"start": "2020-01-01T00:00:00Z",
"end": "2020-02-01T00:00:00Z"
}
}
Request Headers
Header | Description |
---|---|
Authorization (required) | Use HTTP Basic Authentication with your applicationId and secret |
Request Query Parameters
Name | Description |
---|---|
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
Version | Description |
---|---|
2021-10-20 | The 2021-10-20 version of the report. |
2021-09-07 | The 2021-09-07 version of the report. |
Request Fields
Field | Description |
---|---|
publishingReport (required) | See PublishingReport object below |
PublishingReport Object
Field | Description |
---|---|
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)
Column | Description |
---|---|
ReportTimestamp | Time of report generation |
PeriodStartTimestamp | Start time of the reporting period |
PeriodEndTimestamp | End time of the reporting period |
ApplicationId | Application ID of the stream |
ChannelAlias | Channel alias of the stream |
ChannelId | Channel ID of the stream |
RoomAlias | Room alias of the stream |
RoomId | Room ID of the stream |
StreamId | Stream ID of the publisher |
Region | Region of the publisher |
AudioQuality | Audio quality of the publisher, or "video-only" if the publisher was video-only |
VideoQuality | Video quality of the publisher, or "audio-only" if the publisher was audio-only |
PublishedMinutesDuringPeriod | The duration published during the report period |
PublishedMinutesTotal | Total duration of the publishing stream, empty if stream did not end within the report period |
FramesPerSecond | Frames per second of the publishing stream |
PeakConcurrentViews | Peak number of concurrent viewing streams |
TotalViews | Total number of viewing streams |
StartTimestamp | Timestamp at which the publishing stream started |
EndTimestamp | Timestamp at which the publishing stream ended |
StartedDuringPeriod | Whether the publishing stream started during the period |
EndedDuringPeriod | Whether the publishing stream ended during the period |
EndedReason | Why the publishing stream ended, empty if stream did not end within the report period |
DeviceId | Unique device ID of the publisher |
RemoteAddress | IP address of the publisher |
ContributionMethod | The method of publishing, either "URI", "RTMP", or "ITP-WebRTC" |
IngestStreamId | Stream ID of the ingest stream, empty if stream did not have a corresponding ingest stream |
IngestStreamEndedReason | Why the ingest stream ended, empty if stream did not have a corresponding ingest stream |
IngestSource | Source of the published stream, one of "iOS SDK", "Android SDK", "Web SDK", "Phenix Encoder", "RTMP Encoder", or "Admin API" |
MultiBitrateTranscoding | Whether 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. |
Repackaging | Whether repackaging work is done for the stream. "TRUE" if any of the capabilities "streaming", "on-demand", or "rtmp" is present, or if ContributionMethod is "URI" or "RTMP" |
Composition | Whether composition work is done for the stream. "TRUE" if the capability "composition" is set. |
Tags | Tags on the publishing stream |
Capabilities | Capabilities on the publishing stream |
audio_only | Does the publisher have "audio-only" capability |
video_only | Does the publisher have "video-only" capability |
encoding_profile | Encoding profile of the publishing stream |
multi_bitrate | Does the publisher have "multi-bitrate" capability |
multi_bitrate_contribution | Does the publisher have "multi-bitrate-contribution" capability |
streaming | Does the publisher have "streaming" capability |
on_demand | Does the publisher have "on-demand" or "on-demand-archive=PT..." capability |
rtmp | Does the publisher have "rtmp" capability. This capability is no longer in use (was used to support viewers using Flash). |
streaming_lite | Does the publisher have "streaming-lite" capability |
on_demand_lite | Does the publisher have "on-demand-lite" capability |
Report Response Fields (Version 2021-09-07)
Column | Description |
---|---|
ReportTimestamp | Time of report generation |
PeriodStartTimestamp | Start time of the reporting period |
PeriodEndTimestamp | End time of the reporting period |
ApplicationId | Application ID of the stream |
ChannelAlias | Channel alias of the stream |
ChannelId | Channel ID of the stream |
RoomAlias | Room alias of the stream |
RoomId | Room ID of the stream |
StreamId | Stream ID of the publisher |
Region | Region of the publisher |
AudioQuality | Audio quality of the publisher, or "video-only" if the publisher was video-only |
VideoQuality | Video quality of the publisher, or "audio-only" if the publisher was audio-only |
PublishedMinutesDuringPeriod | The duration published during the report period |
PublishedMinutesTotal | Total duration of the publishing stream, empty if stream did not end within the report period |
PeakConcurrentViews | Peak number of concurrent viewing streams |
TotalViews | Total number of viewing streams |
FramesPerSecond | Frames per second of the publishing stream |
StartTimestamp | Timestamp at which the publishing stream started |
EndTimestamp | Timestamp at which the publishing stream ended |
StartedDuringPeriod | Whether the publishing stream started during the period |
EndedDuringPeriod | Whether the publishing stream ended during the period |
EndedReason | Why the publishing stream ended, empty if stream did not end within the report period |
DeviceId | Unique device ID of the publisher |
RemoteAddress | IP address of the publisher |
IngestStreamId | Stream ID of the ingest stream, empty if stream did not have a corresponding ingest stream |
IngestStreamEndedReason | Why the ingest stream ended, empty if stream did not have a corresponding ingest stream |
Live | Does the publisher have "streaming" capability |
VOD | Does the publisher have "on-demand" or "on-demand-archive=PT..." capability |
RTMP | Does the publisher have "rtmp" capability. This capability is no longer in use (was used to support viewers using Flash). |
LiveLite | Does the publisher have "streaming-lite" capability |
VODLite | Does the publisher have "on-demand-lite" capability |
MBR | Does the publisher have "multi-bitrate" capability |
MBRContribution | Does the publisher have "multi-bitrate-contribution" capability |
AudioOnly | Does the publisher have "audio-only" capability |
Tags | Tags on the publishing stream |
Capabilities | Capabilities on the publishing stream |
EncodingProfile | Encoding profile of the publishing stream |
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Content-Length: 1,494
Content-Disposition: attachment; filename="20200305T161052Z-START20200101T000000Z-END20200201T000000Z-Publishing-fGGvDe.csv"
ReportTimestamp,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
2020-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
2020-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
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/1.1 400 Bad request
Content-Type: application/json; charset=utf-8
Content-Length: 37
{"status":"excessive-report-interval"}
Publishing report API Response fields
Field | Description |
---|---|
status | See status codes below |
Publishing report API Status Codes
HTTP | Status | Retry | Description |
---|---|---|---|
200 OK | ok | never | Report was successfully created. |
400 Bad Request | varies | never | Indicates an issue with the request. |
400 Bad Request | excessive-report-interval | never | The interval for the report exceed 1 year. |
400 Bad Request | period-start-outside-supported-window | never | The year of the start of period is more than 1 year before the current year. |
400 Bad Request | period-end-must-be-in-past | never | The end of period is in future. |
400 Bad Request | period-end-must-be-after-start | never | The end of period is less than or equal to the start of the period. |
400 Bad Request | malformed-version-in-request-query-parameter | never | The supplied version in HTTP query parameter does not conform to the format "YYYY-MM-dd". |
400 Bad Request | version-does-not-exist | never | The supplied version in HTTP query parameter does not exist, see Publishing Report Versions for supported versions. |
400 Bad Request | unsupported | never | The parameter combination is not supported. |
401 Unauthorized | unauthorized | never | The streaming platform was not able to authorize the provided credentials. |
408 Request Timeout | request-timeout | once immediately, then exponential backoff | Request timed out likely due to temporary resource or network conditions. Please try again. |
4XX | varies | never | Indicates an issue with the request. |
503 Service Unavailable | capacity | once | The system is temporarily overloaded. Please try again later. |
504 Gateway Timeout | queue-size-exceeded:local, queue-size-exceeded:regional, queuing-failed, or start-deadline-exceeded | once immediately, then exponential backoff | Query queue allotment exceeded. Please try again later. |
5XX | varies | once immediately, then exponential backoff | A 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:
PUT /pcast/reporting/viewing HTTP/1.1
Host: pcast.phenixrts.com
Accept: application/json
Content-Type: application/json
Content-Length: 174
Authorization: Basic YXBwbGljYXRpb25JZDpzZWNyZXQ=
{
"viewingReport": {
"kind": "RealTime",
"applicationIds": ["example.com"],
"start": "2020-01-01T00:00:00Z",
"end": "2020-02-01T00:00:00Z"
}
}
Request Headers
Header | Description |
---|---|
Authorization (required) | Use HTTP Basic Authentication with your applicationId and secret |
Request Fields
Field | Description |
---|---|
viewingReport (required) | See ViewingReport object below |
ViewingReport Object
Field | Description |
---|---|
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
Field | Description |
---|---|
RealTime | Report for real time viewing. |
RTMP | Report for RTMP viewing. |
HLS | Report for HLS viewing. |
DASH | Report for DASH viewing. |
Viewing Report Response
The response is in CSV format.
Report Response Fields
Column | Description | Real Time | RTMP | HLS | DASH |
---|---|---|---|---|---|
ReportTimestamp | Time of report generation | ✔ | ✔ | ✔ | ✔ |
PeriodStartTimestamp | Start time of the reporting period | ✔ | ✔ | ✔ | ✔ |
PeriodEndTimestamp | End time of the reporting period | ✔ | ✔ | ✔ | ✔ |
ApplicationId | Application ID of the stream | ✔ | ✔ | ✔ | ✔ |
ChannelAlias | Channel alias of the stream | ✔ | ✔ | ✔ | ✔ |
ChannelId | Channel ID of the stream | ✔ | ✔ | ✔ | ✔ |
OriginStreamId | Stream ID of the origin | ✔ | ✔ | ✔ | ✔ |
OriginRegion | Region of the origin | ✔ | ✔ | ✔ | ✔ |
OriginFramesPerSecond | Frames per second of the origin | ✔ | ✔ | ✔ | ✔ |
OriginAudioQuality | Audio quality of the origin, or "video-only" if the origin was video-only | ✔ | ✔ | ✔ | ✔ |
OriginVideoQuality | Video quality of the origin, or "audio-only" if the origin was audio-only | ✔ | ✔ | ✔ | ✔ |
OriginTags | Tags on the origin stream | ✔ | ✔ | ✔ | ✔ |
ViewedMinutesDuringPeriod | The duration viewed during the report period | ✔ | ✔ | ✔ | ✔ |
ViewedMinutesTotal | Total duration of the viewing stream, empty if stream did not end within the report period | ✔ | ✔ | × | × |
TotalBytes | The total bytes bidirectionally transferred for the stream | ✔ | ✔ | ✔ | ✔ |
StartTimestamp | Timestamp at which the viewing stream started | ✔ | ✔ | ✔ | ✔ |
EndTimestamp | Timestamp at which the viewing stream ended | ✔ | ✔ | ✔ | ✔ |
StartedDuringPeriod | Whether the viewing stream started during the period | ✔ | ✔ | ✔ | ✔ |
EndedDuringPeriod | Whether the viewing stream ended during the period | ✔ | ✔ | ✔ | ✔ |
StreamId | Stream ID of the viewer | ✔ | ✔ | × | × |
Region | Region of the viewer | ✔ | ✔ | × | × |
FramesPerSecond | Frames per second of the viewer | ✔ | ✔ | × | × |
AudioQuality | Audio quality of the viewing stream, or "video-only" if the viewer or corresponding origin was video-only | ✔ | ✔ | × | × |
VideoQuality | Video quality of the viewing stream, or "audio-only" if the viewer or corresponding origin was audio-only | ✔ | ✔ | × | × |
DeviceId | Unique device ID of the viewer | ✔ | ✔ | ✔ | ✔ |
RemoteAddress | IP address of the viewer | ✔ | ✔ | ✔ | ✔ |
Continent | Continent of the viewer | ✔ | ✔ | ✔ | ✔ |
Country | Country of the viewer | ✔ | ✔ | ✔ | ✔ |
State | State of the viewer | ✔ | ✔ | ✔ | ✔ |
City | City of the viewer | ✔ | ✔ | ✔ | ✔ |
PostalCode | Postal code of the viewer | ✔ | ✔ | ✔ | ✔ |
UserAgent | User agent of the viewer | ✔ | ✔ | ✔ | ✔ |
Tags | Tags on the viewing stream | ✔ | ✔ | ✔ | ✔ |
NumberOfRequests | Total number of HTTP requests made by the viewer within the report period | × | × | ✔ | ✔ |
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Content-Length: 905
Content-Disposition: attachment; filename="20200204T171148Z-START20200101T000000Z-END20200201T000000Z-RealTime-RWYkT1.csv"
ReportTimestamp,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
2020-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,“”
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/1.1 400 Bad request
Content-Type: application/json; charset=utf-8
Content-Length: 37
{"status":"excessive-report-interval"}
Viewing Report API Response fields
Field | Description |
---|---|
status | See status codes below |
Viewing Report API Status Codes
HTTP | Status | Retry | Description |
---|---|---|---|
200 OK | ok | never | Report was successfully created. |
400 Bad Request | varies | never | Indicates an issue with the request. |
400 Bad Request | excessive-report-interval | never | The interval for the report exceed 1 year. |
400 Bad Request | period-start-outside-supported-window | never | The year of the start of period is more than 1 year before the current year. |
400 Bad Request | period-end-must-be-in-past | never | The end of period is in future. |
400 Bad Request | period-end-must-be-after-start | never | The end of period is less than or equal to the start of the period. |
400 Bad Request | unsupported | never | The parameter combination is not supported. |
401 Unauthorized | unauthorized | never | The streaming platform was not able to authorize the provided credentials. |
408 Request Timeout | request-timeout | once immediately, then exponential backoff | Request timed out likely due to temporary resource or network conditions. Please try again. |
4XX | varies | never | Indicates an issue with the request. |
503 Service Unavailable | capacity | once | The system is temporarily overloaded. Please try again later. |
504 Gateway Timeout | queue-size-exceeded:local, queue-size-exceeded:regional, queuing-failed, or start-deadline-exceeded | once immediately, then exponential backoff | Query queue allotment exceeded. Please try again later. |
5XX | varies | once immediately, then exponential backoff | A 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:
PUT pcast/reporting/fork/history HTTP/1.1
Host: pcast.phenixrts.com
Accept: application/json
Content-Type: application/json
Content-Length: 158
Authorization: Basic YXBwbGljYXRpb25JZDpzZWNyZXQ=
{
"forkHistoryReport": {
"applicationIds": ["example.com"],
"start": "2020-01-01T00:00:00Z",
"end": "2020-01-02T00:00:00Z"
}
}
Request Headers
Header | Description |
---|---|
Authorization (required) | Use HTTP Basic Authentication with your applicationId and secret |
Request Fields
Field | Description |
---|---|
forkHistoryReport (required) | See ForkHistoryReport object below |
ForkHistoryReport Object
Field | Description |
---|---|
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
Column | Description |
---|---|
Timestamp | The time at which an fork API call is made. |
ApplicationId | The Application ID that the request belongs to. |
SourceId | The ID of the room that was forked from. |
DestinationId | The ID of the room that was forked to. |
RequestMethod | The HTTP request method of the API call. |
RequestURL | The URL of the request. |
RequestSize | The size of the request. |
Status | The status code of the request. |
ResponseSize | The size of the response. |
UserAgent | The useragent from which the request was sent. |
RemoteAddress | The remote address from which the request was sent. |
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Content-Length: 85
Content-Disposition: attachment; filename="20200204T171148Z-START20200101T000000Z-END20200102T000000Z-ForkHistory-RWYkT1.csv"
Timestamp,ApplicationId,SourceId,DestinationId,RequestMethod,RequestURL,RequestSize,Status,ResponseSize,UserAgent,RemoteAddress
2020-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
2020-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
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/1.1 400 Bad request
Content-Type: application/json; charset=utf-8
Content-Length: 37
{"status":"excessive-report-interval"}
Fork History Report API Response Fields
Field | Description |
---|---|
status | See status codes below |
Fork History Report API Status Codes
HTTP | Status | Retry | Description |
---|---|---|---|
200 OK | ok | never | Report was successfully created. |
400 Bad Request | varies | never | Indicates an issue with the request. |
400 Bad Request | excessive-report-interval | never | The interval for the report exceed 1 day. |
400 Bad Request | period-start-outside-supported-window | never | The year of the start of period is more than 1 year before the current year. |
400 Bad Request | period-end-must-be-in-past | never | The end of period is in future. |
400 Bad Request | period-end-must-be-after-start | never | The end of period is less than or equal to the start of the period. |
400 Bad Request | unsupported | never | The parameter combination is not supported. |
401 Unauthorized | unauthorized | never | The streaming platform was not able to authorize the provided credentials. |
408 Request Timeout | request-timeout | once immediately, then exponential backoff | Request timed out likely due to temporary resource or network conditions. Please try again. |
413 Payload Too Large | maximal-result-size-exceeded | never | The size of the result exceeds the maximum allowed (10GB). |
4XX | varies | never | Indicates an issue with the request. |
503 Service Unavailable | capacity | once | The system is temporarily overloaded. Please try again later. |
504 Gateway Timeout | queue-size-exceeded:local, queue-size-exceeded:regional, queuing-failed, or start-deadline-exceeded | once immediately, then exponential backoff | Query queue allotment exceeded. Please try again later. |
5XX | varies | once immediately, then exponential backoff | A 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:
PUT pcast/ingest/buffer HTTP/1.1
Host: pcast.phenixrts.com
Accept: application/json
Content-Type: application/json
Content-Length: 174
Authorization: Basic YXBwbGljYXRpb25JZDpzZWNyZXQ=
{
"ingestReport": {
"kind": "BufferUnderrun",
"applicationIds": ["example.com"],
"start": "2020-01-01T00:00:00Z",
"end": "2020-01-02T00:00:00Z"
}
}
Request Headers
Header | Description |
---|---|
Authorization (required) | Use HTTP Basic Authentication with your applicationId and secret |
Request Fields
Field | Description |
---|---|
ingestReport (required) | See IngestReport object below |
IngestReport Object
Field | Description |
---|---|
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
Field | Description |
---|---|
BufferUnderrun | Report for ingest buffer underrrun. |
Ingest Report Response
The response is in CSV format.
Report Response Fields
Column | Description | BufferUnderrun |
---|---|---|
ApplicationId | Application ID of the stream | ✔ |
ChannelAlias | Channel alias of the stream | ✔ |
ChannelId | Channel ID of the stream | ✔ |
StreamId | Stream ID of the publisher | ✔ |
IngestId | Ingest ID of the publisher | ✔ |
MediaType | Media type of the publisher | ✔ |
Ssrc | Ssrc of the publisher | ✔ |
StartOfUnderrun | Timestamp at which the ingest buffer underrun started | ✔ |
EndOfUnderrun | Timestamp at which the ingest buffer underrun ended | ✔ |
DurationMillisecond | The duration of the ingest event in milliseconds | ✔ |
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Content-Length: 85
Content-Disposition: attachment; filename="20200204T171148Z-START20200101T000000Z-END20200102T000000Z-BufferUnderrun-RWYkT1.csv"
ApplicationId,ChannelAlias,ChannelId,StreamId,IngestId,MediaType,Ssrc,StartOfUnderrun,EndOfUnderrun,DurationMillisecond
example.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
example.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
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/1.1 400 Bad request
Content-Type: application/json; charset=utf-8
Content-Length: 37
{"status":"excessive-report-interval"}
Ingest Report API Response Fields
Field | Description |
---|---|
status | See status codes below |
Ingest Report API Status Codes
HTTP | Status | Retry | Description |
---|---|---|---|
200 OK | ok | never | Report was successfully created. |
400 Bad Request | varies | never | Indicates an issue with the request. |
400 Bad Request | excessive-report-interval | never | The interval for the report exceed 1 day. |
400 Bad Request | period-start-outside-supported-window | never | The year of the start of period is more than 1 year before the current year. |
400 Bad Request | period-end-must-be-in-past | never | The end of period is in future. |
400 Bad Request | period-end-must-be-after-start | never | The end of period is less than or equal to the start of the period. |
400 Bad Request | unsupported | never | The parameter combination is not supported. |
401 Unauthorized | unauthorized | never | The streaming platform was not able to authorize the provided credentials. |
408 Request Timeout | request-timeout | once immediately, then exponential backoff | Request timed out likely due to temporary resource or network conditions. Please try again. |
4XX | varies | never | Indicates an issue with the request. |
503 Service Unavailable | capacity | once | The system is temporarily overloaded. Please try again later. |
504 Gateway Timeout | queue-size-exceeded:local, queue-size-exceeded:regional, queuing-failed, or start-deadline-exceeded | once immediately, then exponential backoff | Query queue allotment exceeded. Please try again later. |
5XX | varies | once immediately, then exponential backoff | A 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:
PUT pcast/network/throughput HTTP/1.1
Host: pcast.phenixrts.com
Accept: application/json
Content-Type: application/json
Content-Length: 185
Authorization: Basic YXBwbGljYXRpb25JZDpzZWNyZXQ=
{
"networkReport": {
"applicationIds": ["example.com"],
"start": "2021-01-01T00:00:00Z",
"end": "2021-01-02T00:00:00Z"
}
}
Request Headers
Header | Description |
---|---|
Authorization (required) | Use HTTP Basic Authentication with your applicationId and secret |
Request Fields
Field | Description |
---|---|
networkReport (required) | See NetworkReport object below |
NetworkReport Object
Field | Description |
---|---|
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
Column | Description | Throughput |
---|---|---|
TimeBucket | Aggregated time bucket (in invervals of SECONDS) | ✔ |
MinimalTimestamp | Minimal timestamp window of normalized throughput | ✔ |
MaximalTimestamp | Maximal timestamp window of normalized throughput | ✔ |
Kind | Kind/Media type of the stream | ✔ |
NumberOfSsrc | Total number of Synchronization Source(s) in TimeBucket | ✔ |
NumberOfStreams | Total number of Stream(s) in TimeBucket | ✔ |
MediaBitsPerSecondThroughput | Number of payload bits sent as part of Media packets in TimeBucket | ✔ |
FecBitsPerSecondThroughput | Number of payload bits sent as part of FEC packets in TimeBucket | ✔ |
RtpBitsPerSecondThroughput | Number of payload bits sent as part of RTP packets in TimeBucket | ✔ |
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Content-Length: 1604
Content-Disposition: attachment; filename="20210915T230840Z-START20210903T173000Z-END20210903T180000Z-Throughput-eTe4HH.csv"
TimeBucket,MinimalTimestamp,MaximalTimestamp,Kind,NumberOfSsrc,NumberOfStreams,MediaBitsPerSecondThroughput,FecBitsPerSecondThroughput,RtpBitsPerSecondThroughput
2021-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
2021-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
2021-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
2021-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
2021-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
2021-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
2021-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
2021-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
2021-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
2021-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
2021-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
2021-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
2021-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
2021-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: 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/1.1 400 Bad request
Content-Type: application/json; charset=utf-8
Content-Length: 39
{"status":"excessive-report-interval"}
$ cat network
{
"status":"excessive-report-interval"
}
Network Throughput Report API Response Fields
Field | Description |
---|---|
status | See status codes below |
Network Throughput Report API Status Codes
HTTP | Status | Retry | Description |
---|---|---|---|
200 OK | ok | never | Report was successfully created. |
400 Bad Request | varies | never | Indicates an issue with the request. |
400 Bad Request | excessive-report-interval | never | The interval for the report exceed 1 day. |
400 Bad Request | period-start-outside-supported-window | never | The year of the start of period is more than 1 year before the current year. |
400 Bad Request | period-end-must-be-in-past | never | The end of period is in future. |
400 Bad Request | period-end-must-be-after-start | never | The end of period is less than or equal to the start of the period. |
400 Bad Request | unsupported | never | The parameter combination is not supported. |
401 Unauthorized | unauthorized | never | The streaming platform was not able to authorize the provided credentials. |
408 Request Timeout | request-timeout | once immediately, then exponential backoff | Request timed out likely due to temporary resource or network conditions. Please try again. |
4XX | varies | never | Indicates an issue with the request. |
503 Service Unavailable | capacity | once | The system is temporarily overloaded. Please try again later. |
504 Gateway Timeout | queue-size-exceeded:local, queue-size-exceeded:regional, queuing-failed, or start-deadline-exceeded | once immediately, then exponential backoff | Query queue allotment exceeded. Please try again later. |
5XX | varies | once immediately, then exponential backoff | A 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:
PUT pcast/network/packet-loss-rate HTTP/1.1
Host: pcast.phenixrts.com
Accept: application/json
Content-Type: application/json
Content-Length: 185
Authorization: Basic YXBwbGljYXRpb25JZDpzZWNyZXQ=
{
"networkReport": {
"applicationIds": ["example.com"],
"start": "2021-01-01T00:00:00Z",
"end": "2021-01-02T00:00:00Z"
}
}
Request Headers
Header | Description |
---|---|
Authorization (required) | Use HTTP Basic Authentication with your applicationId and secret |
Request Fields
Field | Description |
---|---|
networkReport (required) | See NetworkReport object below |
NetworkReport Object
Field | Description |
---|---|
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
Column | Description | |
---|---|---|
TimeBucket | Aggregated time bucket (in invervals of SECONDS) | ✔ |
MinimalTimestamp | Minimal timestamp window of normalized PacketLossRate | ✔ |
MaximalTimestamp | Maximal timestamp window of PacketLossRate | ✔ |
Kind | Kind/Media type of the stream | ✔ |
NumberOfSsrc | Total number of Synchronization Source(s) in TimeBucket | ✔ |
NumberOfStreams | Total number of Stream(s) in TimeBucket | ✔ |
PacketLossRate | Average Packet loss rate over set of filtered SSRC streams in TimeBucket | ✔ |
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Content-Length: 1604
Content-Disposition: attachment; filename="20220422T110526Z-START20220405T100000Z-END20220405T181000Z-PacketLossRate-JdxuIr.csv"
TimeBucket,MinimalTimestamp,MaximalTimestamp,Kind,NumberOfSsrc,NumberOfStreams,PacketLossRate
2022-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
2022-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
2022-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
2022-04-05 13:40:39 UTC,,,audio,1,1,
2022-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
2022-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
2022-04-05 13:40:42 UTC,,,audio,1,1,
2022-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
2022-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
2022-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
2022-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
2022-04-05 13:40:47 UTC,,,audio,1,1,
2022-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
2022-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
2022-04-05 13:40:50 UTC,,,audio,1,1,
2022-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
2022-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
2022-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
2022-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
2022-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
2022-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
2022-04-05 13:40:57 UTC,,,audio,1,1,
2022-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
2022-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
2022-04-05 13:41:00 UTC,,,audio,1,1,
2022-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
2022-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
2022-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
2022-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
2022-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
2022-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
2022-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
2022-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
2022-04-05 13:41:09 UTC,,,audio,1,1,
2022-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
2022-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
2022-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
2022-04-05 13:41:13 UTC,,,audio,1,1,
2022-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
2022-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
2022-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
2022-04-05 13:41:17 UTC,,,audio,1,1,
2022-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
2022-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
2022-04-05 13:41:20 UTC,,,audio,1,1,
2022-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
2022-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
2022-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
2022-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
2022-04-05 13:41:25 UTC,,,audio,1,1,
2022-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
2022-04-05 13:41:27 UTC,,,audio,1,1,
2022-04-05 13:41:28 UTC,,,audio,1,1,
2022-04-05 13:41:29 UTC,,,audio,1,1,
2022-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
2022-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
2022-04-05 13:41:32 UTC,,,audio,1,1,
2022-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
2022-04-05 13:41:34 UTC,,,audio,1,1,
2022-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
2022-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
2022-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
2022-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
2022-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
2022-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
2022-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
2022-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
2022-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
2022-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
2022-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
2022-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
2022-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
2022-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
2022-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
2022-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
2022-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
2022-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
2022-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
2022-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
2022-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
2022-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
2022-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
2022-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
2022-04-05 13:41:00 UTC,,,video,1,1,
2022-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
2022-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
2022-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
2022-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
2022-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
2022-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
2022-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
2022-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
2022-04-05 13:41:09 UTC,,,video,1,1,
2022-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
2022-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
2022-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
2022-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
2022-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
2022-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
2022-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
2022-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
2022-04-05 13:41:18 UTC,,,video,1,1,
2022-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
2022-04-05 13:41:20 UTC,,,video,1,1,
2022-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
2022-04-05 13:41:22 UTC,,,video,1,1,
2022-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
2022-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
2022-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
2022-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
2022-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
2022-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
2022-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
2022-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
2022-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
2022-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
2022-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
2022-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
2022-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
2022-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
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/1.1 400 Bad request
Content-Type: application/json; charset=utf-8
Content-Length: 39
{"status":"excessive-report-interval"}
Network Packet Loss Rate Report API Response Fields
Field | Description |
---|---|
status | See status codes below |
Network Packet Loss Rate Report API Status Codes
HTTP | Status | Retry | Description |
---|---|---|---|
200 OK | ok | never | Report was successfully created. |
400 Bad Request | varies | never | Indicates an issue with the request. |
400 Bad Request | excessive-report-interval | never | The interval for the report exceed 1 day. |
400 Bad Request | period-start-outside-supported-window | never | The year of the start of period is more than 1 year before the current year. |
400 Bad Request | period-end-must-be-in-past | never | The end of period is in future. |
400 Bad Request | period-end-must-be-after-start | never | The end of period is less than or equal to the start of the period. |
400 Bad Request | unsupported | never | The parameter combination is not supported. |
401 Unauthorized | unauthorized | never | The streaming platform was not able to authorize the provided credentials. |
408 Request Timeout | request-timeout | once immediately, then exponential backoff | Request timed out likely due to temporary resource or network conditions. Please try again. |
4XX | varies | never | Indicates an issue with the request. |
503 Service Unavailable | capacity | once | The system is temporarily overloaded. Please try again later. |
504 Gateway Timeout | queue-size-exceeded:local, queue-size-exceeded:regional, queuing-failed, or start-deadline-exceeded | once immediately, then exponential backoff | Query queue allotment exceeded. Please try again later. |
5XX | varies | once immediately, then exponential backoff | A 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.