> For clean Markdown of any page, append .md to the page URL. > For a complete documentation index, see https://mediakind.ferndocs.com/harmonic/api/vos/monitor-service/get-activated-service/llms.txt. > For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://mediakind.ferndocs.com/_mcp/server. # Get activated service GET https://device.example.com:443/cluster1/vos-api/monitor/v1/services/{id} Get activated service. Reference: https://mediakind.ferndocs.com/harmonic/api/vos/monitor-service/get-activated-service ## Authentication - `Authorization` header (bearer token, required) — Bearer authentication of the form `Bearer `, where token is your auth token. ## Request ### Path parameters - `id` (string, required) — id ## Response ### 200 OK - `activeInstanceId` (string, required) — The active instance ID of service - `destinationStatus` (com.harmonicinc.vos.app.monitor.model.DestinationStatus, required) - `downlinkOutputStatus` (com.harmonicinc.vos.app.monitor.model.DownlinkOutputStatus, required) - `id` (string, required) — Unique identifier of a service in UUID format - `muteOperationData` (com.harmonicinc.vos.app.monitor.model.MuteOperationData, required) - `name` (string, required) — Display name of a service - `originStatus` (com.harmonicinc.vos.app.monitor.model.OriginStatus, required) - `outputTsStatus` (list of com.harmonicinc.vos.app.monitor.model.OutputTsStatus, required) — Display output PIDs and related input PIDs - `outputVideoPorfileStatus` (list of com.harmonicinc.vos.app.monitor.model.VideoProfileStatus, required) — The processing profile - `processingDockerImage` (string, required) — Custom processing docker image using by the service. - `processingEngine` (string, required) — App key of the processing engine used by the service. - `processingStatus` (com.harmonicinc.vos.app.monitor.model.ProcessingStatus, required) - `sourceStatus` (list of com.harmonicinc.vos.app.monitor.model.SourceStatus, required) — The status of source ## Errors ### 401 Unauthorized Error Unauthorized - `any` ### 403 Forbidden Error Forbidden - `any` ### 404 Not Found Error Service not found - `any` ### 500 Internal Server Error Internal error - `any` ## Types ### com.harmonicinc.vos.app.monitor.model.DestinationStatus - `destinationStatistics` (com.harmonicinc.vos.app.monitor.model.DestinationStatistics, required) - `id` (string, required) — Unique identifier of a destination in UUID format - `name` (string, required) — Display name of a destination - `outputStatus` (list of com.harmonicinc.vos.app.monitor.model.OutputStatus, required) — The status of the output ### com.harmonicinc.vos.app.monitor.model.DownlinkOutputStatus - `downlinkOutputStatistic` (list of com.harmonicinc.vos.app.monitor.model.DownlinkOutputStatistic, required) — Downlink output bitrate statistics ### com.harmonicinc.vos.app.monitor.model.MuteOperationData - `enabled` (boolean, optional) — is mute operation enabled - `endTime` (string, optional) — Mute operation end time in UTC - `startTime` (string, optional) — Mute operation start time in UTC ### com.harmonicinc.vos.app.monitor.model.OriginStatus - `originStatistic` (list of com.harmonicinc.vos.app.monitor.model.OriginStatistic, required) — The origin statistic ### com.harmonicinc.vos.app.monitor.model.OutputTsStatus - `outputPids` (list of com.harmonicinc.vos.app.monitor.model.OutputPid, required) — List of output PIDs ### com.harmonicinc.vos.app.monitor.model.VideoProfileStatus - `framerateDenominator` (integer, required) — The denominator of framerate - `framerateNumerator` (integer, required) — The numerator of framerate - `interlaced` (boolean, required) — The interlace mode, true: interlaced, false: progressive - `resolutionHeight` (integer, required) — The height of video frame - `resolutionWidth` (integer, required) — The width of video frame ### com.harmonicinc.vos.app.monitor.model.ProcessingStatus - `enableScte104Oob` (boolean, required) — Enable SCTE-104 OOB or not - `outputAudioProfileStatus` (map from string to list of com.harmonicinc.vos.app.monitor.model.AudioProfileStatus, required) — Audio Profiles information used by each subservice - `outputDataProfileStatus` (map from string to list of com.harmonicinc.vos.app.monitor.model.DataProfileStatus, required) — Data Profiles information used by each subservice - `outputVideoCodec` (enum, required) — Output video codec, e.g. Multiscreen HEVC, IPTV AVC - Allowed values: `MULTISCREEN_HEVC`, `MULTISCREEN_AVC`, `IPTV_HEVC`, `IPTV_AVC` - `processingAudioLanguages` (list of string, required) — Audio languages that are being processed. The audio language is in ISO639 format, e.g. eng, spa - `processingStatistic` (list of com.harmonicinc.vos.app.monitor.model.ProcessingStatisticEntry, required) — The processing statistic - `speechToTextStatus` (com.harmonicinc.vos.app.monitor.model.SpeechToTextStatus, optional) ### com.harmonicinc.vos.app.monitor.model.SourceStatus - `ccErrorStatistic` (list of com.harmonicinc.vos.app.monitor.model.CcErrorStatistic, required) — The cc error statistic - `id` (string, required) — Unique identifier of a source in UUID format - `inputStatus` (list of com.harmonicinc.vos.app.monitor.model.InputStatus, required) — The status of the input - `name` (string, required) — Display name of a source - `sourceHeight` (integer, required) — The video source height - `sourceVideoCodec` (enum, required) — Source video codec, e.g. AVC, HEVC, JPEGXS, J2K - Allowed values: `MP2`, `AVC`, `HEVC`, `JPEGXS`, `J2K`, `AVS`, `AVS2`, `NOTSET` - `sourceWidth` (integer, required) — The video source width - `status` (enum, required) — The status of the source - Allowed values: `ACTIVE`, `STANDBY`, `ERROR` ### com.harmonicinc.vos.app.monitor.model.DestinationStatistics - `outputStatIn12h` (com.harmonicinc.vos.app.monitor.model.OutputStatsEntry, required) - `outputStatIn1h` (com.harmonicinc.vos.app.monitor.model.OutputStatsEntry, required) - `outputStatIn24h` (com.harmonicinc.vos.app.monitor.model.OutputStatsEntry, required) ### com.harmonicinc.vos.app.monitor.model.OutputStatus - `id` (string, required) — Unique identifier of a output in UUID format - `outputDeliveryStatus` (list of com.harmonicinc.vos.app.monitor.model.OutputDeliveryStatus, required) — List of delivery status at output ### com.harmonicinc.vos.app.monitor.model.DownlinkOutputStatistic - `outputId` (string, required) — Output ID - `outputStatistic` (list of com.harmonicinc.vos.app.monitor.model.OutputStatisticEntry, required) — Output bitrate statistic - `addressAndPort` (string, optional) — Output IP address and port. ### com.harmonicinc.vos.app.monitor.model.OriginStatistic - `originStatisticEntryList` (list of com.harmonicinc.vos.app.monitor.model.OriginStatisticEntry, required) — The origin statistic - `packagingFormat` (string, required) — Packaging format of the origin request ### com.harmonicinc.vos.app.monitor.model.OutputPid - `inputPids` (list of com.harmonicinc.vos.app.monitor.model.InputPid, required) — List of input PIDs used to generate the output PID - `outputPid` (integer, required) — Output PID ### com.harmonicinc.vos.app.monitor.model.AudioProfileStatus - `outputAudioProfiles` (list of com.harmonicinc.vos.app.monitor.model.OutputAudioProfile, required) — List of output audio profile information - `srcCodec` (string, required) — Input audio codec ### com.harmonicinc.vos.app.monitor.model.DataProfileStatus - `bitrate` (integer, required) — Output data bitrate - `ccToDvbSubtitleConversion` (boolean, required) — Output data with cc to dvb subtitle conversion enabled - `teletextToDvbSubtitleConversion` (boolean, required) — Output data with teletext to dvb subtitle conversion enabled ### com.harmonicinc.vos.app.monitor.model.ProcessingStatisticEntry - `processingBitrate` (integer, required) — The processing bitrate (bps) of processing engine - `time` (datetime, required) — The time information for statistic ### com.harmonicinc.vos.app.monitor.model.SpeechToTextStatus - `audioCount` (integer, optional) — Number of audios with speech to text enabled ### com.harmonicinc.vos.app.monitor.model.CcErrorStatistic - `ccErrorStatisticEntryList` (list of com.harmonicinc.vos.app.monitor.model.CcErrorStatisticEntry, required) — CC Error Statistic List - `resetInMs` (integer, required) — Statistic reset time - `time` (datetime, required) — Statistic start time ### com.harmonicinc.vos.app.monitor.model.InputStatus - `id` (string, required) — Unique identifier of a input in UUID format - `inputDeliveryStatus` (list of com.harmonicinc.vos.app.monitor.model.InputDeliveryStatus, required) — List of delivery status at input - `inputStatistic` (list of com.harmonicinc.vos.app.monitor.model.InputStatisticEntry, required) — The input statistic - `status` (enum, required) — The status of the input of the source - Allowed values: `ACTIVE`, `STANDBY`, `ERROR` - `defaultInput` (boolean, optional) — Default Input Identification - `resetDateStatistic` (datetime, optional) — last reset date of the counters (SMPTE 2022-1 FEC or SRT), null if not used ### com.harmonicinc.vos.app.monitor.model.OutputStatsEntry - `packetsCount` (long, required) — The packet count - `recoveredPacketCount` (integer, required) — The recovered packet count - `time` (datetime, required) — The time information for statistic - `unrecoveredPacketCount` (integer, required) — The unrecovered packet count ### com.harmonicinc.vos.app.monitor.model.OutputDeliveryStatus - `deliveryType` (string, required) — IP output (e.g e_IP) or type of packaging profile defined at lab wizard profile (e.g. e_HLS) - `outputDeliveryIndex` (integer, required) — The index of the output delivery - `outputStatistic` (list of com.harmonicinc.vos.app.monitor.model.OutputStatisticEntry, required) — The output statistic - `status` (enum, required) — The status of the output of the service - Allowed values: `ACTIVE`, `STANDBY`, `DISABLED`, `ERROR` ### com.harmonicinc.vos.app.monitor.model.OutputStatisticEntry - `outputBitrate` (integer, required) — The package bitrate (bps) of output - `recoveredPacketCount` (integer, required) — The number of recovered packets - `time` (datetime, required) — The time information for statistic - `unrecoveredPacketCount` (integer, required) — The number of unrecovered packets - `usageCategory` (enum, required) — The usage category - Allowed values: `IP`, `ZIXI_PUSH`, `CLOUD`, `SDI` - `sdiStatistic` (com.harmonicinc.vos.app.monitor.model.SdiStatisticEntry, optional) ### com.harmonicinc.vos.app.monitor.model.OriginStatisticEntry - `pullBitrate` (integer, required) — The pull bitrate (bps) of origin engine - `time` (datetime, required) — The time information for statistic ### com.harmonicinc.vos.app.monitor.model.InputPid - `inputPidConfigured` (integer, required) — Input PID configured at service creation - `inputPidUsed` (integer, required) — Input PID currently in use ### com.harmonicinc.vos.app.monitor.model.OutputAudioProfile - `bitrate` (integer, required) — Output audio bitrate - `codec` (string, required) — Output audio codec - `halcenable` (boolean, required) — Output audio with Harmonic ALC enabled - `kantarSnapWatermarkInsertionEnable` (boolean, required) — Output audio with Kantar Snap Watermark enabled - `nielsenWatermarkInsertionEnable` (boolean, required) — Output audio with Nielsen Watermark enabled - `passthru` (boolean, required) — Output audio passthrough mode ### com.harmonicinc.vos.app.monitor.model.CcErrorStatisticEntry - `ccErrCount` (integer, required) — The cc error count - `hasPCR` (string, required) — The program clock counter - `packetCount` (integer, required) — The packet count - `pid` (string, required) — The pid - `pidType` (enum, required) — The Pid type - Allowed values: `VIDEO`, `AUDIO`, `SUBTITLE`, `SCTE35`, `PSI`, `PAT`, `PMT` - `time` (datetime, required) — The time information for statistic ### com.harmonicinc.vos.app.monitor.model.InputDeliveryStatus - `inputAddressPort` (string, required) — The input address and port - `inputIndex` (integer, required) — The input index - `inputStatistic` (list of com.harmonicinc.vos.app.monitor.model.InputStatisticEntry, required) — The input statistic ### com.harmonicinc.vos.app.monitor.model.InputStatisticEntry - `inputBitrate` (integer, required) — The ingest bitrate (bps) of input - `recoveredPacketCount` (integer, required) — The number of recovered packets (Zixi, SRT or SMPTE 2022-1 FEC), 0 if not used - `time` (datetime, required) — The time information for statistic - `unrecoveredPacketCount` (integer, required) — The number of unrecovered packets (Zixi, SRT, SMPTE 2022-1 FEC or Seamless SMPTE 2022-7), 0 if not used - `usageCategory` (enum, required) — The usage category - Allowed values: `IP`, `ZIXI_PULL`, `ZIXI_PUSH`, `SRT`, `ST_2022_7` - `ccErrorCount` (long, optional) — Number of CC Errors - `pathIndex` (integer, optional) — Path index (primary:0, secundary:1), useful in SMPTE 2022-7 - `receivedPacketCount` (long, optional) — number of UDP/RTP packet received (SMPTE 2022-1 FEC or Seamless SMPTE 2022-7, a packet received on both inputs is counted only once), null if not used - `rtpInputStatistics` (com.harmonicinc.vos.app.monitor.model.RtpInputStatisticsEntry, optional) - `smpte2022_1Fec` (com.harmonicinc.vos.app.monitor.model.Smpte2022_1FecEntry, optional) - `smpte2022_7TsInput` (com.harmonicinc.vos.app.monitor.model.Smpte2022_7TsEntry, optional) - `srtInputStatistics` (com.harmonicinc.vos.app.monitor.model.SrtInputStatisticsEntry, optional) ### com.harmonicinc.vos.app.monitor.model.SdiStatisticEntry - `phaseOffset` (long, required) — SDI phase offset in milliseconds, applicable when deterministic latency feature is enabled. Range -17..17. Should be in range -2..2 under normal conditions. ### com.harmonicinc.vos.app.monitor.model.RtpInputStatisticsEntry - `lostPackets` (long, required) — Number of lost RTP packets (based on RTP sequence number) - `orderErrors` (long, required) — Number or order errors ### com.harmonicinc.vos.app.monitor.model.Smpte2022_1FecEntry - `columnsL` (integer, required) — SMPTE 2022-1 number of RTP/FEC columns = L, 0 if no FEC is detected - `rowsD` (integer, required) — SMPTE 2022-1 number of RTP/FEC rows= D, 0 if no FEC is detected ### com.harmonicinc.vos.app.monitor.model.Smpte2022_7TsEntry - `lostRtpPrimary` (integer, required) — Seamless SMPTE 2022-7: number of lost RTP packets on the primary input - `lostRtpSecondary` (integer, required) — Seamless SMPTE 2022-7: number of lost RTP packets on the secondary input ### com.harmonicinc.vos.app.monitor.model.SrtInputStatisticsEntry - `ackPacketCount` (long, required) — Number of sent ACK packets, cumulated since last statistics reset - `bandwidth` (double, required) — Estimated bandwidth, in Mb/s - `belatedPacketCount` (long, required) — Number of received and ignored packets due to having come too late, cumulated since last statistics reset - `connectionAge` (long, required) — Time since the SRT connection is started, in milliseconds, reinitialized at each reconnection, frozen if connection is lost - `nackPacketCount` (long, required) — Number of sent NACK packets, cumulated since last statistics reset - `negociatedLatency` (integer, required) — Negociated latency in ms - `receivedPacketTotal` (long, required) — Number of received packets, cumulated since last statistics reset - `recoveredPacketTotal` (long, required) — Number of recovered packets, cumulated since last statistics reset - `retransPacketCount` (long, required) — Number of retransmitted packets received, cumulated since last statistics reset - `rtt` (double, required) — Round trip time in ms - `srtReconnectionCount` (integer, required) — Number of SRT reconnections, cumulated since last statistics reset - `unrecoveredPacketTotal` (long, required) — Number of unrecovered packets, cumulated since last statistics reset ## Examples **Response** ```json { "activeInstanceId": "string", "destinationStatus": { "destinationStatistics": { "outputStatIn12h": { "packetsCount": 1, "recoveredPacketCount": 1, "time": "2024-01-15T09:30:00Z", "unrecoveredPacketCount": 1 }, "outputStatIn1h": { "packetsCount": 1, "recoveredPacketCount": 1, "time": "2024-01-15T09:30:00Z", "unrecoveredPacketCount": 1 }, "outputStatIn24h": { "packetsCount": 1, "recoveredPacketCount": 1, "time": "2024-01-15T09:30:00Z", "unrecoveredPacketCount": 1 } }, "id": "string", "name": "string", "outputStatus": [ { "id": "string", "outputDeliveryStatus": [ { "deliveryType": "string", "outputDeliveryIndex": 1, "outputStatistic": [ { "outputBitrate": 1, "recoveredPacketCount": 1, "time": "2024-01-15T09:30:00Z", "unrecoveredPacketCount": 1, "usageCategory": "IP", "sdiStatistic": { "phaseOffset": 1 } } ], "status": "ACTIVE" } ] } ] }, "downlinkOutputStatus": { "downlinkOutputStatistic": [ { "outputId": "string", "outputStatistic": [ { "outputBitrate": 1, "recoveredPacketCount": 1, "time": "2024-01-15T09:30:00Z", "unrecoveredPacketCount": 1, "usageCategory": "IP", "sdiStatistic": { "phaseOffset": 1 } } ], "addressAndPort": "string" } ] }, "id": "string", "muteOperationData": { "enabled": true, "endTime": "string", "startTime": "string" }, "name": "string", "originStatus": { "originStatistic": [ { "originStatisticEntryList": [ { "pullBitrate": 1, "time": "2024-01-15T09:30:00Z" } ], "packagingFormat": "string" } ] }, "outputTsStatus": [ { "outputPids": [ { "inputPids": [ { "inputPidConfigured": 1, "inputPidUsed": 1 } ], "outputPid": 1 } ] } ], "outputVideoPorfileStatus": [ { "framerateDenominator": 1, "framerateNumerator": 1, "interlaced": true, "resolutionHeight": 1, "resolutionWidth": 1 } ], "processingDockerImage": "string", "processingEngine": "string", "processingStatus": { "enableScte104Oob": true, "outputAudioProfileStatus": {}, "outputDataProfileStatus": {}, "outputVideoCodec": "MULTISCREEN_HEVC", "processingAudioLanguages": [ "string" ], "processingStatistic": [ { "processingBitrate": 1, "time": "2024-01-15T09:30:00Z" } ], "speechToTextStatus": { "audioCount": 1 } }, "sourceStatus": [ { "ccErrorStatistic": [ { "ccErrorStatisticEntryList": [ { "ccErrCount": 1, "hasPCR": "string", "packetCount": 1, "pid": "string", "pidType": "VIDEO", "time": "2024-01-15T09:30:00Z" } ], "resetInMs": 1, "time": "2024-01-15T09:30:00Z" } ], "id": "string", "inputStatus": [ { "id": "string", "inputDeliveryStatus": [ { "inputAddressPort": "string", "inputIndex": 1, "inputStatistic": [ { "inputBitrate": 1, "recoveredPacketCount": 1, "time": "2024-01-15T09:30:00Z", "unrecoveredPacketCount": 1, "usageCategory": "IP", "ccErrorCount": 1, "pathIndex": 1, "receivedPacketCount": 1, "rtpInputStatistics": { "lostPackets": 1, "orderErrors": 1 }, "smpte2022_1Fec": { "columnsL": 1, "rowsD": 1 }, "smpte2022_7TsInput": { "lostRtpPrimary": 1, "lostRtpSecondary": 1 }, "srtInputStatistics": { "ackPacketCount": 1, "bandwidth": 1.1, "belatedPacketCount": 1, "connectionAge": 1, "nackPacketCount": 1, "negociatedLatency": 1, "receivedPacketTotal": 1, "recoveredPacketTotal": 1, "retransPacketCount": 1, "rtt": 1.1, "srtReconnectionCount": 1, "unrecoveredPacketTotal": 1 } } ] } ], "inputStatistic": [ { "inputBitrate": 1, "recoveredPacketCount": 1, "time": "2024-01-15T09:30:00Z", "unrecoveredPacketCount": 1, "usageCategory": "IP", "ccErrorCount": 1, "pathIndex": 1, "receivedPacketCount": 1, "rtpInputStatistics": { "lostPackets": 1, "orderErrors": 1 }, "smpte2022_1Fec": { "columnsL": 1, "rowsD": 1 }, "smpte2022_7TsInput": { "lostRtpPrimary": 1, "lostRtpSecondary": 1 }, "srtInputStatistics": { "ackPacketCount": 1, "bandwidth": 1.1, "belatedPacketCount": 1, "connectionAge": 1, "nackPacketCount": 1, "negociatedLatency": 1, "receivedPacketTotal": 1, "recoveredPacketTotal": 1, "retransPacketCount": 1, "rtt": 1.1, "srtReconnectionCount": 1, "unrecoveredPacketTotal": 1 } } ], "status": "ACTIVE", "defaultInput": true, "resetDateStatistic": "2024-01-15T09:30:00Z" } ], "name": "string", "sourceHeight": 1, "sourceVideoCodec": "MP2", "sourceWidth": 1, "status": "ACTIVE" } ] } ``` **SDK Code** ```python import requests url = "https://device.example.com/cluster1/vos-api/monitor/v1/services/id" headers = {"Authorization": "Bearer "} response = requests.get(url, headers=headers) print(response.json()) ``` ```javascript const url = 'https://device.example.com/cluster1/vos-api/monitor/v1/services/id'; const options = {method: 'GET', headers: {Authorization: 'Bearer '}}; try { const response = await fetch(url, options); const data = await response.json(); console.log(data); } catch (error) { console.error(error); } ``` ```go package main import ( "fmt" "net/http" "io" ) func main() { url := "https://device.example.com/cluster1/vos-api/monitor/v1/services/id" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("Authorization", "Bearer ") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(res) fmt.Println(string(body)) } ``` ```ruby require 'uri' require 'net/http' url = URI("https://device.example.com/cluster1/vos-api/monitor/v1/services/id") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["Authorization"] = 'Bearer ' response = http.request(request) puts response.read_body ``` ```java import com.mashape.unirest.http.HttpResponse; import com.mashape.unirest.http.Unirest; HttpResponse response = Unirest.get("https://device.example.com/cluster1/vos-api/monitor/v1/services/id") .header("Authorization", "Bearer ") .asString(); ``` ```php request('GET', 'https://device.example.com/cluster1/vos-api/monitor/v1/services/id', [ 'headers' => [ 'Authorization' => 'Bearer ', ], ]); echo $response->getBody(); ``` ```csharp using RestSharp; var client = new RestClient("https://device.example.com/cluster1/vos-api/monitor/v1/services/id"); var request = new RestRequest(Method.GET); request.AddHeader("Authorization", "Bearer "); IRestResponse response = client.Execute(request); ``` ```swift import Foundation let headers = ["Authorization": "Bearer "] let request = NSMutableURLRequest(url: NSURL(string: "https://device.example.com/cluster1/vos-api/monitor/v1/services/id")! as URL, cachePolicy: .useProtocolCachePolicy, timeoutInterval: 10.0) request.httpMethod = "GET" request.allHTTPHeaderFields = headers let session = URLSession.shared let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in if (error != nil) { print(error as Any) } else { let httpResponse = response as? HTTPURLResponse print(httpResponse) } }) dataTask.resume() ```