> This page is for Harmonic.

> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://mediakind.ferndocs.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://mediakind.ferndocs.com/_mcp/server.

# Get source

GET https://device.example.com:443/cluster1/vos-api/configure/v1/sources/{id}

Get source by \{id}.

Reference: https://mediakind.ferndocs.com/harmonic/api/vos/configure-source/get-source

## Authentication

- `Authorization` header (bearer token, required) — Bearer authentication of the form `Bearer <token>`, where token is your auth token.

## Request

### Path parameters

- `id` (string, required) — id

## Response

### 200

OK

- `cspCoreProperties` (com.harmonicinc.vos.app.configure.model.source.CspCoreProperties, optional)
- `id` (string, optional) — Unique identifier of a source in UUID format
- `inputRedundancyMode` (enum, optional)
  - Allowed values: `PRIMARY_ONLY`, `MANUAL_SWITCH`, `AUTO_SWITCH`, `AUTO_SWITCH_MANUAL_REVERT`, `AUTO_SWITCH_AUTO_REVERT`
- `inputs` (list of com.harmonicinc.vos.app.configure.model.source.Input, optional) — An input is a singular network location from which to receive content
- `labels` (list of string, optional) — Labels attached to source for identification
- `name` (string, optional) — Display name of a source
- `pmtPid` (string, optional) — (Deprecated) PMT PID number of selected program

## Errors

### 401 Unauthorized Error

Unauthorized

- `any`

### 403 Forbidden Error

Forbidden

- `any`

### 404 Not Found Error

Source Not Updated

- `any`

### 500 Internal Server Error

Internal error

- `any`

## Types

### com.harmonicinc.vos.app.configure.model.source.CspCoreProperties

- `insertionPeriodMs` (integer, optional) — insertion Period Ms
- `segmentationEventId` (long, optional) — segmentation Event Id String
- `segmentationUpid` (string, optional) — segmentation Upid
- `segmentationUpidType` (integer, optional) — segmentation Upid Type

### com.harmonicinc.vos.app.configure.model.source.Input

- `asiSettings` (com.harmonicinc.vos.app.configure.model.source.AsiInput, optional)
- `cloudInputSettings` (com.harmonicinc.vos.app.configure.model.source.CloudInputSettings, optional)
- `cloudSourceSetting` (com.harmonicinc.vos.app.configure.model.source.CloudSourceInput, optional)
- `cloudlinkSetting` (com.harmonicinc.vos.app.configure.model.source.HarmonicCloudlinkSetting, optional)
- `delayLineSettings` (com.harmonicinc.vos.app.configure.model.source.DelayLine_Input, optional)
- `demuxSettings` (com.harmonicinc.vos.app.configure.model.source.DemuxInput, optional)
- `id` (string, optional) — Unique identifier of an input
- `ipSettings` (com.harmonicinc.vos.app.configure.model.source.IP_Input, optional)
- `ipSettingsList` (list of com.harmonicinc.vos.app.configure.model.source.IP_Input, optional) — Additional list of settings of IP input
- `labels` (list of string, optional) — Labels identifier of an input
- `multiviewSettings` (com.harmonicinc.vos.app.configure.model.source.MultiviewInput, optional)
- `ottPlayoutSettings` (com.harmonicinc.vos.app.configure.model.source.OttPlayoutInput, optional)
- `poolSettings` (com.harmonicinc.vos.app.configure.model.source.PoolInput, optional)
- `rank` (integer, optional) — Priority of input to be used. When more than one input avaliable, the one with smaller number will be used as primary input
- `rfSettingsV2` (com.harmonicinc.vos.app.configure.model.source.RfInputV2, optional)
- `slateSettings` (com.harmonicinc.vos.app.configure.model.source.SlateInput, optional)
- `srtSettings` (com.harmonicinc.vos.app.configure.model.source.SrtInput, optional)
- `type` (enum, optional) — Source input type
  - Allowed values: `IP`, `SLATE`, `ZIXI`, `SRT`, `HSP`, `SDI`, `PLAYOUT`, `CLOUDLINK`, `RTMP`, `POOL`, `OTT_PLAYOUT`, `XOS`, `RF`, `WATERMARK`, `CLOUD`, `DEMUX`, `ASI`, `RIST`, `DELAYLINE`, `MULTIVIEW`
- `zixiSettings` (com.harmonicinc.vos.app.configure.model.source.ZixiInput, optional)

### com.harmonicinc.vos.app.configure.model.source.AsiInput

- `asiCard` (integer, required) — Specify which ASI card to receive the input (value 0 for card 1, and so on).
- `asiPort` (integer, required) — Specify which port of the ASI card to receive the input (value 0 for port 1, and so on).
- `automaticGrooming` (boolean, optional) — Enable automatic grooming. Might not be supported by all input types.
- `grooming` (com.harmonicinc.vos.app.configure.model.source.InputGrooming, optional)
- `pcrConstraints` (com.harmonicinc.vos.app.configure.model.source.PcrConstraints, optional)
- `programNum` (integer, optional) — Program number of the input stream. Only required in MPTS input.
- `sporadicVideoFrames` (boolean, optional) — Specify that sporadic video frames input. Video frames can come in bursts or at random intervals. Typical use case is music streams with still video content.
- `tsProgramNumber` (integer, optional) — Indicates the maximum number of programs that can be transcoded from this input.

### com.harmonicinc.vos.app.configure.model.source.CloudInputSettings

- `automaticGrooming` (boolean, optional) — Enable automatic grooming. Might not be supported by all input types.
- `backupPipeId` (string, optional) — Identifier backup pipe the source originates from
- `cloudInputType` (enum, optional) — Cloud input type
  - Allowed values: `CLOUD_SOURCE`, `CLOUD_EDGE`
- `cloudResourceMode` (enum, optional) — Cloud resource mode, determines whether a single stream or multiple different streams are used
  - Allowed values: `SHARED`, `DEDICATED`
- `egressPointId` (string, optional) — Identifier egressPoint the source originates from
- `egressPointObjectId` (string, optional) — Identifier egressPoint object the source originates from
- `grooming` (com.harmonicinc.vos.app.configure.model.source.InputGrooming, optional)
- `name` (string, optional) — CloudSource name the source originates from
- `pcrConstraints` (com.harmonicinc.vos.app.configure.model.source.PcrConstraints, optional)
- `pipeId` (string, optional) — Identifier pipe the source originates from
- `programNum` (integer, optional) — Program number of the input stream. Only required in MPTS input.
- `protocol` (string, optional) — SRT protocol
- `region` (string, optional) — Region
- `regionDisplayName` (string, optional) — Region display name
- `sporadicVideoFrames` (boolean, optional) — Specify that sporadic video frames input. Video frames can come in bursts or at random intervals. Typical use case is music streams with still video content.
- `srtCloudInputSettings` (com.harmonicinc.vos.app.configure.model.SrtCloudInputSettings, optional)
- `userStreamId` (string, optional) — Stream ID for cloud resource

### com.harmonicinc.vos.app.configure.model.source.CloudSourceInput

- `automaticGrooming` (boolean, optional) — Enable automatic grooming. Might not be supported by all input types.
- `backupPipeId` (string, optional) — Identifier pipe the backup source
- `connectionMode` (enum, optional) — SRT connetion establishing mode
  - Allowed values: `LISTENER`, `CALLER`
- `grooming` (com.harmonicinc.vos.app.configure.model.source.InputGrooming, optional)
- `name` (string, optional) — CloudSource name the source originates from
- `pcrConstraints` (com.harmonicinc.vos.app.configure.model.source.PcrConstraints, optional)
- `pipeId` (string, optional) — Identifier pipe the source originates from
- `programNum` (integer, optional) — Program number of the input stream. Only required in MPTS input.
- `protocol` (string, optional) — SRT protocol
- `region` (string, optional) — Region
- `sporadicVideoFrames` (boolean, optional) — Specify that sporadic video frames input. Video frames can come in bursts or at random intervals. Typical use case is music streams with still video content.
- `srtCloudSourceSettings` (com.harmonicinc.vos.app.configure.model.source.SrtCloudSourceSettings, optional)

### com.harmonicinc.vos.app.configure.model.source.HarmonicCloudlinkSetting

- `ipAddress` (string, required) — IP address used to receive the input. IPv4 and IPv6 are supported
- `ipPort` (integer, optional) — UDP port used to receive the input
- `ipPortRangeEnd` (integer, optional) — UDP port range end used to receive input
- `ssmIpAddresses` (list of string, optional) — Source-specific multicast IP addresses
- `type` (enum, optional)
  - Allowed values: `ZIXI`, `HSP`
- `uplinkGroupId` (string, optional) — Unique identifier of the uplink Group
- `uplinkId` (string, optional) — [Obsoleted]Unique identifier of the uplink

### com.harmonicinc.vos.app.configure.model.source.DelayLine_Input

- `delay` (long, required) — Delay in milliseconds. Minimum value is 180000 (ie 3 minutes). It shall be lower than the recording buffer size of the corresponding Loop Record service.
- `recordId` (string, required) — Id of the Loop Record service that is recording the stream to play with a delay.
- `delayUpdate` (boolean, optional) — Enables a scheduled update of the delay, for example for next daylight saving time transition. nextDelay and nextDelayActivationDate shall be configured.
- `nextDelay` (long, optional) — Next delay value in milliseconds
- `nextDelayActivationDate` (string, optional) — UTC date when the next delay will be applied. It is expressed by a string with the following format "yyyy-mm-dd hh:mm:ss" ( ex: 2024-11-20 04:00:00 ).

### com.harmonicinc.vos.app.configure.model.source.DemuxInput

- `demuxServiceId` (string, required) — Indicates the uuid of the Demux service
- `automaticGrooming` (boolean, optional) — Enable automatic grooming. Might not be supported by all input types.
- `disableAutoDelete` (boolean, optional) — Disable the automatic deletion of the source when not used anymore after a mux update, False by default
- `grooming` (com.harmonicinc.vos.app.configure.model.source.InputGrooming, optional)
- `pcrConstraints` (com.harmonicinc.vos.app.configure.model.source.PcrConstraints, optional)
- `programNum` (integer, optional) — Program number of the input stream. Only required in MPTS input.
- `sporadicVideoFrames` (boolean, optional) — Specify that sporadic video frames input. Video frames can come in bursts or at random intervals. Typical use case is music streams with still video content.

### com.harmonicinc.vos.app.configure.model.source.IP_Input

- `ipAddress` (string, required) — IP address used to receive input. IPv4 and IPv6 are supported
- `ipPort` (integer, required) — UDP port used to receive input
- `automaticGrooming` (boolean, optional) — Enable automatic grooming. Might not be supported by all input types.
- `descramblingKey` (string, optional) — CSA key to descramble input
- `fecEnable` (boolean, optional) — FEC 2022-1 1D colum and 2D column/line ingress recovery
- `grooming` (com.harmonicinc.vos.app.configure.model.source.InputGrooming, optional)
- `ipNetworkAddress` (string, optional) — IP network address
- `ipPortRangeEnd` (integer, optional) — UDP port range end used to receive input
- `pcrConstraints` (com.harmonicinc.vos.app.configure.model.source.PcrConstraints, optional)
- `programNum` (integer, optional) — Program number of the input stream. Only required in MPTS input.
- `smpte20227TsInput` (com.harmonicinc.vos.app.configure.model.source.Smpte20227Ts_Input, optional)
- `sporadicVideoFrames` (boolean, optional) — Specify that sporadic video frames input. Video frames can come in bursts or at random intervals. Typical use case is music streams with still video content.
- `ssmIpAddresses` (list of string, optional) — Source-specific multicast IP addresses
- `tsProgramNumber` (integer, optional) — Indicates the number of programs in the input TS

### com.harmonicinc.vos.app.configure.model.source.MultiviewInput

- `frameRate` (com.harmonicinc.vos.app.configure.model.source.FrameRate, required)
- `resolution` (com.harmonicinc.vos.app.configure.model.source.Resolution, required)
- `sources` (list of com.harmonicinc.vos.app.configure.model.source.MultiviewComponentSource, required) — Sources that compose the multiview input
- `backgroundImage` (string, optional) — Unique identifier of image used for the background. Only PNG format is supported. The resolution of the image should match the resolution of the multiview.
- `delay` (integer, optional) — Delay in milliseconds (default: 2000ms). Multiview frame with timecode T will be generated at T+delay. If the delay is too low, timecode synchronization may fail because input frames are not available.

### com.harmonicinc.vos.app.configure.model.source.OttPlayoutInput

- `defaultAssetUrl` (string, optional)

### com.harmonicinc.vos.app.configure.model.source.PoolInput

- `poolId` (string, required) — Pool ID of pool object; one pool per source

### com.harmonicinc.vos.app.configure.model.source.RfInputV2

- `tuner` (integer, required) — Tuner number from 1 to 4(DVB-S2X) or 1 to 12(ATSC)
- `type` (enum, required) — RF card type.
  - Allowed values: `DVB_S2X`, `ATSC`
- `atscTuner` (com.harmonicinc.vos.app.configure.model.source.AtscTuner, optional)
- `card` (integer, optional) — Card number from 0 to 2(DVB-S2X) or 0 (ATSC)
- `dvbS2XPort` (com.harmonicinc.vos.app.configure.model.source.DvbS2XPort, optional)
- `dvbS2XTuner` (com.harmonicinc.vos.app.configure.model.source.DvbS2XTuner, optional)
- `tsProgramNumber` (integer, optional) — Indicates the number of programs in the input TS

### com.harmonicinc.vos.app.configure.model.source.SlateInput

- `type` (enum, required) — Slate type
  - Allowed values: `SIGNAL_LOSS`, `CUSTOM`
- `enableVideoSlate` (boolean, optional) — Enable run-time update on video slate (graphicFilename). default = false
- `graphicFilename` (string, optional) — Title of a graphic in the Asset Acquisition App to be used as the slate video
- `imageId` (string, optional) — Unique identifier of image used for the slate
- `signalLossSlateSettings` (com.harmonicinc.vos.app.configure.model.source.SignalLossSlateSettings, optional)

### com.harmonicinc.vos.app.configure.model.source.SrtInput

- `automaticGrooming` (boolean, optional) — Enable automatic grooming. Might not be supported by all input types.
- `cloudlinkGroupId` (string, optional) — Identifier of Cloudlink group the source originates from.
- `connectionMode` (enum, optional) — SRT connetion establishing mode
  - Allowed values: `LISTENER`, `CALLER`
- `descramblingKey` (string, optional) — CSA key to descramble input
- `descramblingRequired` (boolean, optional) — Whether input requires descrambling
- `grooming` (com.harmonicinc.vos.app.configure.model.source.InputGrooming, optional)
- `ipNetworkAddress` (string, optional) — Local interface for outgoing connections
- `latency` (integer, optional) — Latency, specified for Srt
- `pathRedundancyMode` (enum, optional) — Path redundancy mode
  - Allowed values: `SRT_SOCKET_GROUP`, `ST_2022_7`
- `pcrConstraints` (com.harmonicinc.vos.app.configure.model.source.PcrConstraints, optional)
- `programNum` (integer, optional) — Program number of the input stream. Only required in MPTS input.
- `seamlessInputSwitching` (boolean, optional) — Enable seamless input switching for input redundancy. Default: false
- `sourceAddr` (string, optional) — UDP address used to fetch input on Cloudlink RT
- `sourcePort` (integer, optional) — UDP port used to fetch input on Cloudlink RT
- `sourcePortRangeEnd` (integer, optional) — UDP port range end used to fetch mbts input
- `sporadicVideoFrames` (boolean, optional) — Specify that sporadic video frames input. Video frames can come in bursts or at random intervals. Typical use case is music streams with still video content.
- `srtConnectionSettings` (list of com.harmonicinc.vos.app.configure.model.SrtConnectionSettings, optional) — SRT connection setting list
- `ssmIpAddrs` (list of string, optional) — Source-specific multicast IP addresses
- `st20227DelayBufferInMs` (integer, optional) — Buffer delay for reordering RTP packet
- `tsProgramNumber` (integer, optional) — Indicates the number of programs in the input TS

### com.harmonicinc.vos.app.configure.model.source.ZixiInput

- `automaticGrooming` (boolean, optional) — Enable automatic grooming. Might not be supported by all input types.
- `encoderSetting` (com.harmonicinc.vos.app.configure.model.source.ZixiEncoderSetting, optional)
- `grooming` (com.harmonicinc.vos.app.configure.model.source.InputGrooming, optional)
- `harmonicUplinkSetting` (com.harmonicinc.vos.app.configure.model.source.HarmonicUplinkSetting, optional)
- `harmonicUplinkSettingList` (list of com.harmonicinc.vos.app.configure.model.source.HarmonicUplinkSetting, optional) — Basic list of harmonic uplink settings. Used in Harmonic Uplink Input
- `pcrConstraints` (com.harmonicinc.vos.app.configure.model.source.PcrConstraints, optional)
- `programNum` (integer, optional) — Program number of the input stream. Only required in MPTS input.
- `sporadicVideoFrames` (boolean, optional) — Specify that sporadic video frames input. Video frames can come in bursts or at random intervals. Typical use case is music streams with still video content.
- `zixiBroadcasterSetting` (any, optional)
- `zixiInputType` (enum, optional) — Zixi input type
  - Allowed values: `HARMONIC_UPLINK`, `ENCODER`, `BROADCASTER`

### com.harmonicinc.vos.app.configure.model.source.InputGrooming

- `bitrate` (integer, optional) — Bitrate of the input
- `pcrCompliant` (boolean, optional) — Not supported, for future use
- `pmtPid` (integer, optional) — PMT PID number of selected program
- `programName` (string, optional) — Program name of the input

### com.harmonicinc.vos.app.configure.model.source.PcrConstraints

- `maxPcrInterval` (integer, optional) — Maximum PCR interval in milliseconds. Changing this value will trigger service restart and increase the end-to-end latency.
- `maxPcrJitter` (integer, optional) — Maximum PCR jitter from real-time in milliseconds. Changing this value will trigger service restart and increase the end-to-end latency.

### com.harmonicinc.vos.app.configure.model.SrtCloudInputSettings

- `connectionMode` (enum, optional) — Srt connection mode
  - Allowed values: `LISTENER`, `CALLER`
- `encryptionParam` (com.harmonicinc.vos.app.configure.model.SrtEncryptionParams, optional)
- `latency` (integer, optional) — Latency
- `srtConnectionInfo` (com.harmonicinc.vos.app.configure.model.SrtConnectionInfo, optional)
- `srtConnectionSettingsList` (list of com.harmonicinc.vos.app.configure.model.SrtConnectionSettings, optional) — Srt connection settings list

### com.harmonicinc.vos.app.configure.model.source.SrtCloudSourceSettings

- `latency` (integer, optional) — Latency

### com.harmonicinc.vos.app.configure.model.source.Smpte20227Ts_Input

- `ipAddress` (string, required) — IP address used to receive input. IPv4 and IPv6 are supported
- `ipPort` (integer, required) — UDP port used to receive input
- `pathDifferentialDelayMs` (integer, required) — Seamless 2022-7 Path Differential Delay in ms in the range (50ms, 450ms)
- `ipNetworkAddress` (string, optional) — IP network address
- `ssmIpAddresses` (list of string, optional) — Source-specific multicast IP addresses

### com.harmonicinc.vos.app.configure.model.source.FrameRate

- `denominator` (integer, required) — Denominator of framerate
- `numerator` (integer, required) — Numerator of framerate

### com.harmonicinc.vos.app.configure.model.source.Resolution

- `height` (integer, required) — Height of resolution
- `width` (integer, required) — Width of resolution

### com.harmonicinc.vos.app.configure.model.source.MultiviewComponentSource

- `closedCaptions` (enum, required) — Processing mode for the closed captions
  - Allowed values: `e_DISABLE`, `e_PASSTHROUGH`
- `regionDest` (com.harmonicinc.vos.app.configure.model.source.MultiviewRegion, required)
- `sourceId` (string, required) — Unique identifier of the source to be used in the multiview composition

### com.harmonicinc.vos.app.configure.model.source.AtscTuner

- `channel` (integer, required) — Channel. Integer range. Minimum : 2. Maximum : 51. Steps : 1.
- `standard` (enum, required) — Standard. Possible values : ATSC_1_0.
  - Allowed values: `ATSC_1_0`

### com.harmonicinc.vos.app.configure.model.source.DvbS2XPort

- `lnbType` (enum, required) — LNB Type.
  - Allowed values: `C_BAND`, `KU_BAND`, `UNIVERSAL`, `UNIVERSAL_WIDE`
- `oscillatorFrequency` (double, required) — Local oscillator frequency in GHz. Decimal range depends on LNB Type. For C_BAND, range from 5Ghz to 6Ghz. For KU_BAND range from 8.5Ghz to 13Ghz. Not applicable for UNIVERSAL and UNIVERSAL_WIDE.
- `frequencySpectrum` (enum, optional) — 22 kHz Tone. Applicable only when lnbType is UNIVERSAL or UNIVERSAL_WIDE.
  - Allowed values: `LOW_BAND`, `HIGH_BAND`

### com.harmonicinc.vos.app.configure.model.source.DvbS2XTuner

- `carrierFrequency` (double, required) — Carrier frequency. Decimal range. Minimum : 3. Maximum : 4.2. Steps : 0.000001.
- `plsCode` (integer, required) — Physical Layer Scrambling Seed. Integer range. Minimum : 0. Maximum : 262141. Steps : 1.
- `polarization` (enum, required) — Polarization. Possible values : VERTICAL (input #1) or HORIZONTAL (input #3).
  - Allowed values: `HORIZONTAL`, `VERTICAL`
- `symbolRate` (double, required) — Symbol rate. Decimal range. Minimum : 1. Maximum : 64. Steps : 0.000001.
- `inversion` (enum, optional)
  - Allowed values: `AUTO`, `INVERTED`, `NORMAL`
- `modulationAndFec` (enum, optional)
  - Allowed values: `QPSK_1_2`, `QPSK_1_4`, `QPSK_1_3`, `QPSK_2_5`, `QPSK_3_5`, `QPSK_2_3`, `QPSK_3_4`, `QPSK_4_5`, `QPSK_5_6`, `QPSK_7_8`, `QPSK_8_9`, `QPSK_9_10`, `QPSK_13_45`, `QPSK_9_20`, `QPSK_11_20`, `QPSK_11_45`, `QPSK_4_15`, `QPSK_14_45`, `QPSK_7_15`, `QPSK_8_15`, `QPSK_32_45`, `_8PSK_3_5`, `_8PSK_2_3`, `_8PSK_3_4`, `_8PSK_5_6`, `_8PSK_8_9`, `_8PSK_9_10`, `_8PSK_23_36`, `_8PSK_25_36`, `_8PSK_13_18`, `_8PSKL_5_9`, `_8PSKL_26_45`, `_8PSK_7_15`, `_8PSK_8_15`, `_8PSK_26_45`, `_8PSK_32_45`, `_16APSK_2_3`, `_16APSK_3_4`, `_16APSK_4_5`, `_16APSK_5_6`, `_16APSK_8_9`, `_16APSK_9_10`, `_16APSK_26_45`, `_16APSK_3_5`, `_16APSK_28_45`, `_16APSK_23_36`, `_16APSK_25_36`, `_16APSK_13_18`, `_16APSK_7_9`, `_16APSK_77_90`, `_16APSKL_5_9`, `_16APSKL_8_15`, `_16APSKL_1_2`, `_16APSKL_3_5`, `_16APSKL_2_3`, `_16APSK_7_15`, `_16APSK_8_15`, `_16APSK_32_45`, `_32APSK_32_45`, `_32APSK_3_4`, `_32APSK_4_5`, `_32APSK_5_6`, `_32APSK_8_9`, `_32APSK_9_10`, `_32APSK_11_15`, `_32APSK_7_9`, `_32APSKL_2_3`, `_32APSK_2_3`
- `pilots` (enum, optional)
  - Allowed values: `AUTO`, `ON`, `OFF`
- `rollOff` (enum, optional)
  - Allowed values: `AUTO`, `RO_0_05`, `RO_0_10`, `RO_0_15`, `RO_0_20`, `RO_0_25`, `RO_0_35`

### com.harmonicinc.vos.app.configure.model.source.SignalLossSlateSettings

- `insertionSettings` (boolean, optional) — Enable customized insertion settings for slate and set the sampling windows to 5-second for slate insertion.
- `insertionThreshold` (integer, optional) — A counter counts the number of 5-second windows with input errors (signal loss, video missing, scrambled PID). When this counter reaches insertionThreshold, the slate is inserted. Range [1,12]
- `resetThreshold` (integer, optional) — When the number of consecutive 5-second windows without error reaches resetThreshold, the counter of erroneous windows is reset. Range [1,12]
- `revertThreshold` (integer, optional) — A slate is removed when the number of consecutive 5-second windows without error reaches revertThreshold. Range [1,12]

### com.harmonicinc.vos.app.configure.model.SrtConnectionSettings

- `ipAddress` (string, optional) — Ip address
- `ipNetworkAddress` (string, optional) — Interface
- `latency` (integer, optional) — Latency, specified for Srt
- `port` (integer, optional) — Port
- `srtEncryptionParams` (com.harmonicinc.vos.app.configure.model.SrtEncryptionParams, optional)
- `streamId` (string, optional) — Stream id
- `streamIndex` (integer, optional) — Stream Index

### com.harmonicinc.vos.app.configure.model.source.ZixiEncoderSetting

- `decryptionKey` (string, optional) — Zixi decryption key
- `decryptionType` (enum, optional) — Zixi decryption type
  - Allowed values: `NONE`, `ZIXI_AES_128`, `ZIXI_AES_192`, `ZIXI_AES_256`
- `zixiEndPointSetting` (com.harmonicinc.vos.app.configure.model.source.ZixiEndPointSetting, optional)

### com.harmonicinc.vos.app.configure.model.source.HarmonicUplinkSetting

- `ipAddress` (string, required) — IP address used to receive the input. IPv4 and IPv6 are supported
- `descramblingKey` (string, optional) — CSA key to descramble input
- `descramblingRequired` (boolean, optional) — Whether input requires descrambling
- `ipPort` (integer, optional) — UDP port used to receive the input
- `ipPortRangeEnd` (integer, optional) — UDP port range end used to receive input
- `ssmIpAddresses` (list of string, optional) — Source-specific multicast IP addresses
- `uplinkGroupId` (string, optional) — Unique identifier of the uplink Group
- `uplinkId` (string, optional) — [Obsoleted]Unique identifier of the uplink

### com.harmonicinc.vos.app.configure.model.SrtEncryptionParams

- `encryptionKey` (string, optional) — Srt encryption key
- `encryptionType` (enum, optional) — Srt encryption type
  - Allowed values: `AES_128`, `AES_192`, `AES_256`, `NO_ENCRYPTION`

### com.harmonicinc.vos.app.configure.model.SrtConnectionInfo

- `lowerLatencyLimit` (integer, optional) — Lower latency limit (based on recommended latency)
- `rtt` (integer, optional) — Round-trip time
- `upperLatencyLimit` (integer, optional) — Upper latency limit

### com.harmonicinc.vos.app.configure.model.source.MultiviewRegion

- `height` (integer, required) — Height of the mulitview region
- `topLeftCornerX` (integer, required) — Top left X coordinate of the mulitview region
- `topLeftCornerY` (integer, required) — Top left Y coordinate of the mulitview region
- `width` (integer, required) — Width of the mulitview region

### com.harmonicinc.vos.app.configure.model.source.ZixiEndPointSetting

- `zixiEndpointId` (string, required) — Unique identifier of the zixi endpoint

## Examples

**Response**

```json
{
  "cspCoreProperties": {
    "insertionPeriodMs": 1,
    "segmentationEventId": 1,
    "segmentationUpid": "string",
    "segmentationUpidType": 1
  },
  "id": "string",
  "inputRedundancyMode": "PRIMARY_ONLY",
  "inputs": [
    {
      "asiSettings": {
        "asiCard": 1,
        "asiPort": 1,
        "automaticGrooming": true,
        "grooming": {
          "bitrate": 1,
          "pcrCompliant": true,
          "pmtPid": 1,
          "programName": "string"
        },
        "pcrConstraints": {
          "maxPcrInterval": 100,
          "maxPcrJitter": 50
        },
        "programNum": 1,
        "sporadicVideoFrames": true,
        "tsProgramNumber": 1
      },
      "cloudInputSettings": {
        "automaticGrooming": true,
        "backupPipeId": "string",
        "cloudInputType": "CLOUD_SOURCE",
        "cloudResourceMode": "SHARED",
        "egressPointId": "string",
        "egressPointObjectId": "string",
        "grooming": {
          "bitrate": 1,
          "pcrCompliant": true,
          "pmtPid": 1,
          "programName": "string"
        },
        "name": "string",
        "pcrConstraints": {
          "maxPcrInterval": 100,
          "maxPcrJitter": 50
        },
        "pipeId": "string",
        "programNum": 1,
        "protocol": "string",
        "region": "string",
        "regionDisplayName": "string",
        "sporadicVideoFrames": true,
        "srtCloudInputSettings": {
          "connectionMode": "LISTENER",
          "encryptionParam": {
            "encryptionKey": "string",
            "encryptionType": "AES_128"
          },
          "latency": 1,
          "srtConnectionInfo": {
            "lowerLatencyLimit": 1,
            "rtt": 1,
            "upperLatencyLimit": 1
          },
          "srtConnectionSettingsList": [
            {
              "ipAddress": "string",
              "ipNetworkAddress": "string",
              "latency": 1,
              "port": 1,
              "srtEncryptionParams": {
                "encryptionKey": "string",
                "encryptionType": "AES_128"
              },
              "streamId": "string",
              "streamIndex": 1
            }
          ]
        },
        "userStreamId": "string"
      },
      "cloudSourceSetting": {
        "automaticGrooming": true,
        "backupPipeId": "string",
        "connectionMode": "LISTENER",
        "grooming": {
          "bitrate": 1,
          "pcrCompliant": true,
          "pmtPid": 1,
          "programName": "string"
        },
        "name": "string",
        "pcrConstraints": {
          "maxPcrInterval": 100,
          "maxPcrJitter": 50
        },
        "pipeId": "string",
        "programNum": 1,
        "protocol": "string",
        "region": "string",
        "sporadicVideoFrames": true,
        "srtCloudSourceSettings": {
          "latency": 1
        }
      },
      "cloudlinkSetting": {
        "ipAddress": "string",
        "ipPort": 1,
        "ipPortRangeEnd": 1,
        "ssmIpAddresses": [
          "string"
        ],
        "type": "ZIXI",
        "uplinkGroupId": "string",
        "uplinkId": "string"
      },
      "delayLineSettings": {
        "delay": 1,
        "recordId": "string",
        "delayUpdate": true,
        "nextDelay": 1,
        "nextDelayActivationDate": "string"
      },
      "demuxSettings": {
        "demuxServiceId": "string",
        "automaticGrooming": true,
        "disableAutoDelete": true,
        "grooming": {
          "bitrate": 1,
          "pcrCompliant": true,
          "pmtPid": 1,
          "programName": "string"
        },
        "pcrConstraints": {
          "maxPcrInterval": 100,
          "maxPcrJitter": 50
        },
        "programNum": 1,
        "sporadicVideoFrames": true
      },
      "id": "string",
      "ipSettings": {
        "ipAddress": "string",
        "ipPort": 1,
        "automaticGrooming": true,
        "descramblingKey": "string",
        "fecEnable": true,
        "grooming": {
          "bitrate": 1,
          "pcrCompliant": true,
          "pmtPid": 1,
          "programName": "string"
        },
        "ipNetworkAddress": "string",
        "ipPortRangeEnd": 1,
        "pcrConstraints": {
          "maxPcrInterval": 100,
          "maxPcrJitter": 50
        },
        "programNum": 1,
        "smpte20227TsInput": {
          "ipAddress": "string",
          "ipPort": 1,
          "pathDifferentialDelayMs": 1,
          "ipNetworkAddress": "string",
          "ssmIpAddresses": [
            "string"
          ]
        },
        "sporadicVideoFrames": true,
        "ssmIpAddresses": [
          "string"
        ],
        "tsProgramNumber": 1
      },
      "ipSettingsList": [
        {
          "ipAddress": "string",
          "ipPort": 1,
          "automaticGrooming": true,
          "descramblingKey": "string",
          "fecEnable": true,
          "grooming": {
            "bitrate": 1,
            "pcrCompliant": true,
            "pmtPid": 1,
            "programName": "string"
          },
          "ipNetworkAddress": "string",
          "ipPortRangeEnd": 1,
          "pcrConstraints": {
            "maxPcrInterval": 100,
            "maxPcrJitter": 50
          },
          "programNum": 1,
          "smpte20227TsInput": {
            "ipAddress": "string",
            "ipPort": 1,
            "pathDifferentialDelayMs": 1,
            "ipNetworkAddress": "string",
            "ssmIpAddresses": [
              "string"
            ]
          },
          "sporadicVideoFrames": true,
          "ssmIpAddresses": [
            "string"
          ],
          "tsProgramNumber": 1
        }
      ],
      "labels": [
        "string"
      ],
      "multiviewSettings": {
        "frameRate": {
          "denominator": 1,
          "numerator": 1
        },
        "resolution": {
          "height": 1,
          "width": 1
        },
        "sources": [
          {
            "closedCaptions": "e_DISABLE",
            "regionDest": {
              "height": 1,
              "topLeftCornerX": 1,
              "topLeftCornerY": 1,
              "width": 1
            },
            "sourceId": "string"
          }
        ],
        "backgroundImage": "string",
        "delay": 1
      },
      "ottPlayoutSettings": {
        "defaultAssetUrl": "string"
      },
      "poolSettings": {
        "poolId": "string"
      },
      "rank": 1,
      "rfSettingsV2": {
        "tuner": 1,
        "type": "DVB_S2X",
        "atscTuner": {
          "channel": 1,
          "standard": "ATSC_1_0"
        },
        "card": 1,
        "dvbS2XPort": {
          "lnbType": "C_BAND",
          "oscillatorFrequency": 1.1,
          "frequencySpectrum": "LOW_BAND"
        },
        "dvbS2XTuner": {
          "carrierFrequency": 1.1,
          "plsCode": 1,
          "polarization": "HORIZONTAL",
          "symbolRate": 1.1,
          "inversion": "AUTO",
          "modulationAndFec": "QPSK_1_2",
          "pilots": "AUTO",
          "rollOff": "AUTO"
        },
        "tsProgramNumber": 1
      },
      "slateSettings": {
        "type": "SIGNAL_LOSS",
        "enableVideoSlate": true,
        "graphicFilename": "string",
        "imageId": "string",
        "signalLossSlateSettings": {
          "insertionSettings": true,
          "insertionThreshold": 1,
          "resetThreshold": 1,
          "revertThreshold": 1
        }
      },
      "srtSettings": {
        "automaticGrooming": true,
        "cloudlinkGroupId": "string",
        "connectionMode": "LISTENER",
        "descramblingKey": "string",
        "descramblingRequired": true,
        "grooming": {
          "bitrate": 1,
          "pcrCompliant": true,
          "pmtPid": 1,
          "programName": "string"
        },
        "ipNetworkAddress": "string",
        "latency": 1,
        "pathRedundancyMode": "SRT_SOCKET_GROUP",
        "pcrConstraints": {
          "maxPcrInterval": 100,
          "maxPcrJitter": 50
        },
        "programNum": 1,
        "seamlessInputSwitching": true,
        "sourceAddr": "string",
        "sourcePort": 1,
        "sourcePortRangeEnd": 1,
        "sporadicVideoFrames": true,
        "srtConnectionSettings": [
          {
            "ipAddress": "string",
            "ipNetworkAddress": "string",
            "latency": 1,
            "port": 1,
            "srtEncryptionParams": {
              "encryptionKey": "string",
              "encryptionType": "AES_128"
            },
            "streamId": "string",
            "streamIndex": 1
          }
        ],
        "ssmIpAddrs": [
          "string"
        ],
        "st20227DelayBufferInMs": 1,
        "tsProgramNumber": 1
      },
      "type": "IP",
      "zixiSettings": {
        "automaticGrooming": true,
        "encoderSetting": {
          "decryptionKey": "string",
          "decryptionType": "NONE",
          "zixiEndPointSetting": {
            "zixiEndpointId": "string"
          }
        },
        "grooming": {
          "bitrate": 1,
          "pcrCompliant": true,
          "pmtPid": 1,
          "programName": "string"
        },
        "harmonicUplinkSetting": {
          "ipAddress": "string",
          "descramblingKey": "string",
          "descramblingRequired": true,
          "ipPort": 1,
          "ipPortRangeEnd": 1,
          "ssmIpAddresses": [
            "string"
          ],
          "uplinkGroupId": "string",
          "uplinkId": "string"
        },
        "harmonicUplinkSettingList": [
          {
            "ipAddress": "string",
            "descramblingKey": "string",
            "descramblingRequired": true,
            "ipPort": 1,
            "ipPortRangeEnd": 1,
            "ssmIpAddresses": [
              "string"
            ],
            "uplinkGroupId": "string",
            "uplinkId": "string"
          }
        ],
        "pcrConstraints": {
          "maxPcrInterval": 100,
          "maxPcrJitter": 50
        },
        "programNum": 1,
        "sporadicVideoFrames": true,
        "zixiBroadcasterSetting": null,
        "zixiInputType": "HARMONIC_UPLINK"
      }
    }
  ],
  "labels": [
    "string"
  ],
  "name": "string",
  "pmtPid": "string"
}
```

**SDK Code**

```python
import requests

url = "https://device.example.com/cluster1/vos-api/configure/v1/sources/id"

headers = {"Authorization": "Bearer <token>"}

response = requests.get(url, headers=headers)

print(response.json())
```

```javascript
const url = 'https://device.example.com/cluster1/vos-api/configure/v1/sources/id';
const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};

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/configure/v1/sources/id"

	req, _ := http.NewRequest("GET", url, nil)

	req.Header.Add("Authorization", "Bearer <token>")

	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/configure/v1/sources/id")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'

response = http.request(request)
puts response.read_body
```

```java
import com.mashape.unirest.http.HttpResponse;
import com.mashape.unirest.http.Unirest;

HttpResponse<String> response = Unirest.get("https://device.example.com/cluster1/vos-api/configure/v1/sources/id")
  .header("Authorization", "Bearer <token>")
  .asString();
```

```php
<?php
require_once('vendor/autoload.php');

$client = new \GuzzleHttp\Client();

$response = $client->request('GET', 'https://device.example.com/cluster1/vos-api/configure/v1/sources/id', [
  'headers' => [
    'Authorization' => 'Bearer <token>',
  ],
]);

echo $response->getBody();
```

```csharp
using RestSharp;

var client = new RestClient("https://device.example.com/cluster1/vos-api/configure/v1/sources/id");
var request = new RestRequest(Method.GET);
request.AddHeader("Authorization", "Bearer <token>");
IRestResponse response = client.Execute(request);
```

```swift
import Foundation

let headers = ["Authorization": "Bearer <token>"]

let request = NSMutableURLRequest(url: NSURL(string: "https://device.example.com/cluster1/vos-api/configure/v1/sources/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()
```