---
title: "Create a new channel"
method: POST
path: "/channels"
tags: ["Channels"]
---

# Create a new channel

`POST /channels`

## Request body

- CreateChannelBody
  - `name` string, required — Name of the channel
  - `externalId` string — Deprecated, use 'externalIds' instead. Shorthand for a single-entry 'externalIds'. For now, responses will keep returning 'externalId' with the first entry of 'externalIds'.
  - `externalIds` string[] — External identifiers for the channel. Each must be unique across all channels of the organization. Mutually exclusive with externalId.
  - `timeout` number — Timeout in seconds. To never stop, specify 0
  - `ads` object — OptiView Ads configuration
    - `enabled` boolean, required — Whether OptiView ads are enabled on the channel
    - `customAssetKey` string — DAI asset key, only possible when Google is linked to your ads account
    - `timebase` 'wallclock' | 'pts' — Timebase for ad insertion. Defaults to "wallclock"
    - `settings` object — Deprecated. V1 ads settings.
      - `assetKey` string — Deprecated. Use customAssetKey instead.
      - `layout` 'SINGLE' | 'DOUBLE' | 'LSHAPE_AD' | 'LSHAPE_CONTENT'
      - `enableBumperAds` boolean
      - `podDuration` number
      - `customAdTagParameters` object
  - `dvr` object — DVR configuration
    - `enabled` boolean, required — Whether DVR is enabled
    - `windowInSeconds` number — DVR window in seconds (60-86400)
  - `nielsen` object — Nielsen configuration
    - `enabled` boolean, required — Whether Nielsen is enabled
  - `instreamMetadata` object — Instream metadata configuration
    - `enabled` boolean, required — Whether instream metadata is enabled. Supported metadata is h264 registered or unregistered SEI metadata
    - `uuids` string[] — Array of instream metadata SEI UUIDs
  - `ingests` object[] — Ingests to create for the channel
    - `name` string, required — Name of the ingest
    - `type` 'rtmp-push' | 'rtmp-pull' | 'srt-pull' | 'srt-push' | 'sdi-pull' | 'rtsp-pull' | 'ndi-pull', required — Ingest type. Note: srt-push requires SRT push to be enabled at organization level
    - `url` string — Source URL (required for pull types, except sdi-pull and ndi-pull). Must start with "rtsp://" for rtsp-pull
    - `region` string — Region ID (required for rtmp-push, srt-pull and rtmp-pull). Must be a single ingest enabled region for pull types. Required and must be a DUPLO region when a 'speech' enhancement is enabled. Required and must be an on-prem region for rtsp-pull, ndi-pull and sdi-pull (ndi-pull and sdi-pull additionally require the region to support the ingest type)
    - `captions` object[] — Caption configuration
      - `channel` number, required — Caption channel number
      - `language` string, required — Caption language code
      - `label` string — Caption label
    - `tracks` object — Audio track configuration
      - `audio` object[] — Audio track configuration
        - `pid` number — Audio track PID (mandatory for multi-audio)
        - `language` string, required — Audio track language code
        - `label` string, required — Audio track label
    - `sdi` object — SDI capture card configuration (required for sdi-pull)
      - `persistentId` string — Persistent ID of the SDI capture card, identifying it across reboots. Required for sdi-pull ingests: it must match an available SDI device of the region (see `/regions/{regionId}/sdi`) that is not connected to another ingest
      - `audioConnection` 'auto' | 'sdi' | 'hdmi' | 'optical-sdi' | 'component' | 'composite' | 'svideo' — Audio connection type
      - `videoConnection` 'auto' | 'sdi' | 'hdmi' | 'optical-sdi' | 'component' | 'composite' | 'svideo' — Video connection type
      - `videoMode` 'auto' | 'ntsc' | 'ntsc2398' | 'pal' | 'ntsc-p' | 'pal-p' | '1080p2398' | '1080p24' | '1080p25' | '1080p2997' | '1080p30' | '1080i50' | '1080i5994' | '1080i60' | '1080p50' | '1080p5994' | '1080p60' | '720p50' | '720p5994' | '720p60' | '1556p2398' | '1556p24' | '1556p25' | '2kdcip2398' | '2kdcip24' | '2kdcip25' | '2kdcip2997' | '2kdcip30' | '2kdcip50' | '2kdcip5994' | '2kdcip60' | '2160p2398' | '2160p24' | '2160p25' | '2160p2997' | '2160p30' | '2160p50' | '2160p5994' | '2160p60' | 'ntsc-widescreen' | 'ntsc2398-widescreen' | 'pal-widescreen' | 'ntsc-p-widescreen' | 'pal-p-widescreen' | '4kdcip2398' | '4kdcip24' | '4kdcip25' | '4kdcip2997' | '4kdcip30' | '4kdcip50' | '4kdcip5994' | '4kdcip60' | '8kp2398' | '8kp24' | '8kp25' | '8kp2997' | '8kp30' | '8kp50' | '8kp5994' | '8kp60' | '8kdcip2398' | '8kdcip24' | '8kdcip25' | '8kdcip2997' | '8kdcip30' | '8kdcip50' | '8kdcip5994' | '8kdcip60' — Video mode
      - `profile` 'default' | 'one-sub-device-full' | 'one-sub-device-half' | 'two-sub-devices-full' | 'two-sub-devices-half' | 'four-sub-devices-half' — SDI profile
      - `videoFormat` 'auto' | '8bit-yuv' | '10bit-yuv' | '8bit-argb' | '8bit-bgra' | '10bit-rgb' — Video format
    - `ndi` object — NDI source configuration (required for ndi-pull)
      - `id` string, required — ID of the NDI source. Required for ndi-pull ingests: it must match a non-stale NDI source of the region (see `/regions/{regionId}/ndi`) that is not connected to another ingest
    - `engines` object[] — Engines to create for this ingest
      - `name` string, required — Name of the engine
      - `region` string, required — Region ID to deploy the engine in
      - `priority` number — Engine priority (-100 to 100). Lower numbers mean higher priority
      - `drm` boolean — Enable DRM. Only possible when enabled for your organization.
      - `quality` object, required — Quality configuration
        - `abrLadderId` string, required — ABR ladder ID
      - `daiAssetKey` string, nullable — DAI asset key
      - `overlays` object[] — Image overlay configuration
        - `url` string, required — URL of the overlay image
        - `position` object — Overlay position
          - `top` integer — Pixels from top
          - `bottom` integer — Pixels from bottom (ignored if top is present)
          - `left` integer — Pixels from left
          - `right` integer — Pixels from right (ignored if left is present)
        - `size` object — Overlay size
          - `width` integer — Width in pixels
          - `height` integer — Height in pixels
        - `opacity` number — Overlay opacity (`0`=fully transparent, `1`=fully opaque)
      - `outputs` object — Output format configuration
        - `hesp` boolean — Enable HESP output. Enabled by default.
        - `hls` boolean — Enable HLS output. Enabled by default.
        - `hlsMpegTs` boolean — Enable HLS MPEG-TS output. Only available when enabled for your organization.
        - `llHls` boolean — Enable Low-Latency HLS output. Enabling this also enables HLS output. Disabled by default.
      - `restream` Restream[] — Restream destinations. Only available when the engine runs in an on-prem region
        - `id` string, required — Unique restream ID
        - `url` string, required — Restream destination URL
      - `vision` object, nullable — Vision configuration. Only available when enabled for your organization. Pass `null` to disable.
        - `toneLut` object, nullable — Tone mapping LUT configuration
          - `saturationBoost` 'high' | 'low' | 'null', nullable — Saturation boost level
          - `strength` 'low' | 'medium' | 'high' | 'null', nullable — Tone mapping strength
        - `masteringDisplay` object, nullable — Mastering display configuration
          - `primaries` object, nullable — Mastering display color primaries
            - `type` 'rec2020' | 'p3d65' | 'rec709' | 'custom' | 'null', nullable — Color primaries preset
            - `red` object, nullable — Custom red primary coordinates (required when type is `custom`)
              - …
            - `green` object, nullable — Custom green primary coordinates (required when type is `custom`)
              - …
            - `blue` object, nullable — Custom blue primary coordinates (required when type is `custom`)
              - …
          - `whitePoint` object, nullable — Mastering display white point
            - `type` 'd65' | 'd60' | 'dci' | 'custom' | 'null', nullable — White point preset
            - `x` number, nullable — Custom white point x coordinate (required when type is `custom`)
            - `y` number, nullable — Custom white point y coordinate (required when type is `custom`)
          - `maxDisplayMasteringLuminance` number, nullable — Maximum display mastering luminance in nits (0-10000)
          - `minDisplayMasteringLuminance` number, nullable — Minimum display mastering luminance in nits
        - `contentLightLevels` object, nullable — Content light level configuration
          - `cllMode` 'auto' | 'expert' | 'null', nullable — Content light level mode. `expert` requires maxCll and maxFall (nits)
          - `maxCll` number, nullable — Maximum content light level in nits (required when cllMode is `expert`)
          - `maxFall` number, nullable — Maximum frame-average light level in nits (required when cllMode is `expert`)
        - `globalLook` object, nullable — Global look (L8) configuration
          - `l8Mode` 'off' | 'quickControls' | 'null', nullable — L8 global look mode
          - `l8ContrastBoost` 'off' | 'low' | 'mid' | 'high' | 'null', nullable — L8 contrast boost (required when l8Mode is `quickControls`)
          - `l8MidBoost` 'off' | 'low' | 'mid' | 'high' | 'null', nullable — L8 mid boost (required when l8Mode is `quickControls`)
          - `l8SaturationBoost` 'off' | 'low' | 'mid' | 'high' | 'null', nullable — L8 saturation boost (required when l8Mode is `quickControls`)
        - `contentType` object, nullable — Content type (L11) configuration
          - `l11ContentType` 'default' | 'cinema' | 'game' | 'sport' | 'ugc' | 'null', nullable — L11 content type
          - `l11WhitePointK` number, nullable — L11 white point in Kelvin, snapped to the 16 RPU steps
      - `atmos` object, nullable — Dolby Atmos configuration. Only available when the connected ABR ladder has Dolby Atmos audio configured. Pass `null` to disable.
        - `dialnorm` integer, nullable, required — Dolby Atmos dialnorm value. Must be an integer between -1 and -31. Pass `null` to unset it.
  - `distributions` object[] — Distributions to create for the channel (endpoints will be auto-configured)
    - `name` string, required — Name of the distribution
    - `externalId` string — External identifier for the distribution
    - `enabled` boolean — Whether the distribution is enabled
    - `targetLatency` number — Deprecated: use latencies.hesp instead. If set, will be applied as latencies.hesp.
    - `latencies` object — Latency configuration per output protocol
      - `hesp` number, nullable — HESP latency in seconds (1-30, default: 2)
      - `hls` number, nullable — HLS latency in seconds (6-30, default: 10)
    - `security` object — Security configuration
      - `geoBlocking` object — Geo-blocking configuration
        - `enabled` boolean — Whether geo-blocking is enabled
        - `mode` 'allow' | 'deny' — Geo-blocking mode
        - `countries` string[] — List of country codes
      - `ipBlocking` object — IP blocking configuration
        - `enabled` boolean — Whether IP blocking is enabled
        - `mode` 'allow' | 'deny' — IP blocking mode
        - `cidrs` string[] — List of CIDR ranges
      - `refererBlocking` object — Referer blocking configuration
        - `enabled` boolean — Whether referer blocking is enabled
        - `allowedDomains` string[] — List of allowed domains
        - `allowNativeApps` boolean — Whether native apps are allowed
      - `rewriteSegmentUrls` boolean — When enabled, a short-lived token is added to the segment URLs, derived from the token that was passed. This only works when JWT security is enabled on the same distribution.
      - `keys` object[] — Security keys (max 2, create only)
        - `name` string — Name of the security key
        - `key` string, required — Security key value
    - `webRtc` object, nullable — WebRTC configuration
      - `priority` number, required — WebRTC priority
      - `src` object, required — WebRTC source configuration
        - `name` string, required — WebRTC source name
        - `accountId` string, required — WebRTC account ID
        - `apiUrl` string, required — WebRTC API URL
    - `outputs` object — Output format configuration
      - `hesp` boolean — Enable HESP output. Enabled by default.
      - `hls` boolean — Enable HLS output. Enabled by default.
      - `hlsMpegTs` boolean — Enable HLS MPEG-TS output. Disabled by default.
    - `maxBitrate` number, nullable — Maximum bitrate limit in bps
    - `dvr` object — DVR configuration
      - `enabled` boolean — Whether DVR is enabled on the distribution
    - `overrides` object[] — Distribution overrides for device targeting
      - `deviceType` 'tv' | 'mobile' | 'desktop' | 'other' | 'null', nullable — Target device type
      - `sdkType` 'native' | 'web' | 'null', nullable — Target SDK type
      - `osName` 'apple' | 'android' | 'windows' | 'roku' | 'other' | 'null', nullable — Target OS name
      - `profileId` string, nullable — Target profile ID
      - `targets` object[], required — Override target distributions with weights
        - `distributionId` string, required — Target distribution ID
        - `weight` number, required — Weight (0-100)
    - `customEndpoints` object[] — Custom endpoints to connect to this distribution
      - `customEndpointId` string, required — ID of the custom endpoint to connect
      - `weight` integer — Weight (0-100, default 100)
    - `ads` object, nullable — Ads configuration for the distribution
      - `dai` object — DAI endpoint settings
        - `weight` integer, required — Weight for DAI endpoints (0-100)
        - `priority` integer, required — Priority for DAI endpoints (any integer, lower = higher priority)
    - `playerSettings` object, nullable — Player settings applied to the player configuration in the discovery response
      - `hespCooldown` number — Cooldown period in seconds (0-300) before the player retries HESP playback after falling back to another protocol. Defaults to 120 seconds when not set.

## Response `200`

Channel created

- ChannelCreatedObjectResult
  - `data` ChannelCreated, required — Created channel with connected resources
    - `id` string, required — Unique identifier of the channel
    - `createdAt` string, required — Creation timestamp
    - `name` string, required — Name of the channel
    - `status` 'ready' | 'stopped' | 'deploying' | 'starting' | 'waiting' | 'ingesting' | 'playing' | 'stopping' | 'error' | 'deleting' | 'deleted', required — Current status of the channel
    - `externalId` string — Deprecated, use 'externalIds' instead. For now, this returns the first entry of the 'externalIds' list.
    - `externalIds` string[] — External identifiers of the channel
    - `timeout` number, required — Timeout in seconds
    - `ads` object — OptiView Ads configuration
      - `enabled` boolean, required — Whether OptiView ads are enabled on the channel
      - `settings` object — Deprecated. Only returned for channels still using the old (V1) ads API underneath.
        - `assetKey` string — Deprecated. Use customAssetKey instead.
        - `layout` 'SINGLE' | 'DOUBLE' | 'LSHAPE_AD' | 'LSHAPE_CONTENT'
        - `enableBumperAds` boolean
        - `podDuration` number
        - `customAdTagParameters` object
    - `dvr` object — DVR configuration
      - `enabled` boolean, required — Whether DVR is enabled
      - `windowInSeconds` number — DVR window in seconds (60-86400)
    - `nielsen` object — Nielsen configuration
      - `enabled` boolean, required — Whether Nielsen is enabled
    - `instreamMetadata` object — Instream metadata configuration
      - `enabled` boolean, required — Whether instream metadata is enabled. Supported metadata is h264 registered or unregistered SEI metadata
      - `uuids` string[] — Array of instream metadata SEI UUIDs
    - `perpetual` boolean, required — Whether this channel is 24/7 (never times out, excluded from transcoding analytics)
    - `organizationId` string, required — Organization ID
    - `ingests` Ingest[], required — Connected ingests
      - `id` string, required — Unique identifier of the ingest
      - `name` string, required — Name of the ingest
      - `createdAt` string, required — Creation timestamp
      - `type` 'rtmp-push' | 'rtmp-pull' | 'srt-pull' | 'srt-push' | 'sdi-pull' | 'rtsp-pull' | 'ndi-pull', required — Ingest type
      - `url` string, required — Ingest URL
      - `streamKey` string — Stream key for RTMP push ingests
      - `tracks` object, required — Audio track configuration
        - `audio` object[] — Audio track configuration
          - `pid` number — Audio track PID (mandatory for multi-audio)
          - `language` string, required — Audio track language code
          - `label` string, required — Audio track label
      - `captions` object[], required — Caption configuration
        - `channel` number, required — Caption channel number
        - `language` string, required — Caption language code
        - `label` string — Caption label
      - `sdi` IngestSdi — SDI capture card configuration (only for sdi-pull ingests)
        - `persistentId` string — Persistent ID of the SDI capture card, identifying it across reboots. Required for sdi-pull ingests: it must match an available SDI device of the region (see `/regions/{regionId}/sdi`) that is not connected to another ingest
        - `audioConnection` 'auto' | 'sdi' | 'hdmi' | 'optical-sdi' | 'component' | 'composite' | 'svideo' — Audio connection type
        - `videoConnection` 'auto' | 'sdi' | 'hdmi' | 'optical-sdi' | 'component' | 'composite' | 'svideo' — Video connection type
        - `videoMode` 'auto' | 'ntsc' | 'ntsc2398' | 'pal' | 'ntsc-p' | 'pal-p' | '1080p2398' | '1080p24' | '1080p25' | '1080p2997' | '1080p30' | '1080i50' | '1080i5994' | '1080i60' | '1080p50' | '1080p5994' | '1080p60' | '720p50' | '720p5994' | '720p60' | '1556p2398' | '1556p24' | '1556p25' | '2kdcip2398' | '2kdcip24' | '2kdcip25' | '2kdcip2997' | '2kdcip30' | '2kdcip50' | '2kdcip5994' | '2kdcip60' | '2160p2398' | '2160p24' | '2160p25' | '2160p2997' | '2160p30' | '2160p50' | '2160p5994' | '2160p60' | 'ntsc-widescreen' | 'ntsc2398-widescreen' | 'pal-widescreen' | 'ntsc-p-widescreen' | 'pal-p-widescreen' | '4kdcip2398' | '4kdcip24' | '4kdcip25' | '4kdcip2997' | '4kdcip30' | '4kdcip50' | '4kdcip5994' | '4kdcip60' | '8kp2398' | '8kp24' | '8kp25' | '8kp2997' | '8kp30' | '8kp50' | '8kp5994' | '8kp60' | '8kdcip2398' | '8kdcip24' | '8kdcip25' | '8kdcip2997' | '8kdcip30' | '8kdcip50' | '8kdcip5994' | '8kdcip60' — Video mode
        - `profile` 'default' | 'one-sub-device-full' | 'one-sub-device-half' | 'two-sub-devices-full' | 'two-sub-devices-half' | 'four-sub-devices-half' — SDI profile
        - `videoFormat` 'auto' | '8bit-yuv' | '10bit-yuv' | '8bit-argb' | '8bit-bgra' | '10bit-rgb' — Video format
      - `ndi` IngestNdi — NDI source configuration (only for ndi-pull ingests)
        - `id` string, required — ID of the NDI source. Required for ndi-pull ingests: it must match a non-stale NDI source of the region (see `/regions/{regionId}/ndi`) that is not connected to another ingest
    - `engines` object[], required — Connected engines
      - `id` string, required — Unique identifier of the engine
      - `name` string, required — Name of the engine
      - `createdAt` string, required — Creation timestamp
      - `updatedAt` string, required — Last update timestamp
      - `quality` object, required — Quality configuration
        - `abrLadderId` string, required — ABR ladder ID
      - `overlays` object[], required — Image overlay configuration
        - `url` string, required — URL of the overlay image
        - `position` object — Overlay position
          - `top` integer — Pixels from top
          - `bottom` integer — Pixels from bottom (ignored if top is present)
          - `left` integer — Pixels from left
          - `right` integer — Pixels from right (ignored if left is present)
        - `size` object — Overlay size
          - `width` integer — Width in pixels
          - `height` integer — Height in pixels
        - `opacity` number — Overlay opacity (`0`=fully transparent, `1`=fully opaque)
      - `drm` boolean, required — Whether DRM is enabled
      - `priority` number, required — Engine priority
      - `status` 'stopped' | 'deploying' | 'starting' | 'waiting' | 'ingesting' | 'playing' | 'stopping' | 'error' | 'deleting' | 'deleted', required — Current status of the engine
      - `daiAssetKey` string, nullable — DAI asset key
      - `outputs` object, required — Output format configuration
        - `hesp` boolean — Enable HESP output. Enabled by default.
        - `hls` boolean — Enable HLS output. Enabled by default.
        - `hlsMpegTs` boolean — Enable HLS MPEG-TS output. Only available when enabled for your organization.
        - `llHls` boolean — Enable Low-Latency HLS output. Enabling this also enables HLS output. Disabled by default.
      - `vision` object, nullable — Vision configuration
        - `toneLut` object, nullable — Tone mapping LUT configuration
          - `saturationBoost` 'high' | 'low' | 'null', nullable — Saturation boost level
          - `strength` 'low' | 'medium' | 'high' | 'null', nullable — Tone mapping strength
        - `masteringDisplay` object, nullable — Mastering display configuration
          - `primaries` object, nullable — Mastering display color primaries
            - `type` 'rec2020' | 'p3d65' | 'rec709' | 'custom' | 'null', nullable — Color primaries preset
            - `red` object, nullable — Custom red primary coordinates (required when type is `custom`)
              - …
            - `green` object, nullable — Custom green primary coordinates (required when type is `custom`)
              - …
            - `blue` object, nullable — Custom blue primary coordinates (required when type is `custom`)
              - …
          - `whitePoint` object, nullable — Mastering display white point
            - `type` 'd65' | 'd60' | 'dci' | 'custom' | 'null', nullable — White point preset
            - `x` number, nullable — Custom white point x coordinate (required when type is `custom`)
            - `y` number, nullable — Custom white point y coordinate (required when type is `custom`)
          - `maxDisplayMasteringLuminance` number, nullable — Maximum display mastering luminance in nits (0-10000)
          - `minDisplayMasteringLuminance` number, nullable — Minimum display mastering luminance in nits
        - `contentLightLevels` object, nullable — Content light level configuration
          - `cllMode` 'auto' | 'expert' | 'null', nullable — Content light level mode. `expert` requires maxCll and maxFall (nits)
          - `maxCll` number, nullable — Maximum content light level in nits (required when cllMode is `expert`)
          - `maxFall` number, nullable — Maximum frame-average light level in nits (required when cllMode is `expert`)
        - `globalLook` object, nullable — Global look (L8) configuration
          - `l8Mode` 'off' | 'quickControls' | 'null', nullable — L8 global look mode
          - `l8ContrastBoost` 'off' | 'low' | 'mid' | 'high' | 'null', nullable — L8 contrast boost (required when l8Mode is `quickControls`)
          - `l8MidBoost` 'off' | 'low' | 'mid' | 'high' | 'null', nullable — L8 mid boost (required when l8Mode is `quickControls`)
          - `l8SaturationBoost` 'off' | 'low' | 'mid' | 'high' | 'null', nullable — L8 saturation boost (required when l8Mode is `quickControls`)
        - `contentType` object, nullable — Content type (L11) configuration
          - `l11ContentType` 'default' | 'cinema' | 'game' | 'sport' | 'ugc' | 'null', nullable — L11 content type
          - `l11WhitePointK` number, nullable — L11 white point in Kelvin, snapped to the 16 RPU steps
      - `atmos` object, nullable — Dolby Atmos configuration
        - `dialnorm` integer, required — Dolby Atmos dialnorm value. Must be an integer between -1 and -31.
    - `distributions` Distribution[], required — Connected distributions
      - `id` string, required — Unique identifier of the distribution
      - `createdAt` string, required — Creation timestamp
      - `name` string, required — Name of the distribution
      - `externalId` string — External identifier for the distribution
      - `enabled` boolean, required — Whether the distribution is enabled
      - `targetLatency` number — Deprecated: use latencies instead.
      - `latencies` object, required — Latency configuration per output protocol
        - `hesp` number, nullable — HESP latency in seconds (1-30, default: 2)
        - `hls` number, nullable — HLS latency in seconds (6-30, default: 10)
      - `security` object, required — Security configuration
        - `geoBlocking` object, required — Geo-blocking configuration
          - `enabled` boolean, required — Whether geo-blocking is enabled
          - `mode` 'allow' | 'deny', required — Geo-blocking mode
          - `countries` string[], required — List of country codes
        - `ipBlocking` object, required — IP blocking configuration
          - `enabled` boolean, required — Whether IP blocking is enabled
          - `mode` 'allow' | 'deny', required — IP blocking mode
          - `cidrs` string[], required — List of CIDR ranges
        - `refererBlocking` object — Referer blocking configuration
          - `enabled` boolean, required — Whether referer blocking is enabled
          - `allowedDomains` string[], required — List of allowed domains
          - `allowNativeApps` boolean, required — Whether native apps are allowed
        - `rewriteSegmentUrls` boolean — When enabled, a short-lived token is added to the segment URLs, derived from the token that was passed. This only works when JWT security is enabled on the same distribution.
        - `keys` object[], required — Security keys
          - `id` string, required — Security key ID
          - `name` string — Security key name
      - `endpoints` object, required — Endpoint configuration
        - `engineIds` string[], required — Connected engine IDs
      - `webRtc` object — WebRTC configuration
        - `priority` number, required — WebRTC priority
        - `src` object, required — WebRTC source configuration
          - `name` string, required — WebRTC source name
          - `accountId` string, required — WebRTC account ID
          - `apiUrl` string, required — WebRTC API URL
      - `maxBitrate` number — Maximum bitrate limit in bps
      - `outputs` object — Output format configuration
        - `hesp` boolean — Enable HESP output. Enabled by default.
        - `hls` boolean — Enable HLS output. Enabled by default.
        - `hlsMpegTs` boolean — Enable HLS MPEG-TS output. Disabled by default.
      - `dvr` object, required — DVR configuration
        - `enabled` boolean — Whether DVR is enabled on the distribution
      - `overrides` object[] — Distribution overrides
        - `deviceType` 'tv' | 'mobile' | 'desktop' | 'other' | 'null', nullable — Target device type
        - `sdkType` 'native' | 'web' | 'null', nullable — Target SDK type
        - `osName` 'apple' | 'android' | 'windows' | 'roku' | 'other' | 'null', nullable — Target OS name
        - `profileId` string, nullable — Target profile ID
        - `targets` object[], required — Override target distributions with weights
          - `distributionId` string, required — Target distribution ID
          - `weight` number, required — Weight (0-100)
      - `customEndpoints` object[] — Connected custom endpoints with weights
        - `customEndpointId` string, required — ID of the connected custom endpoint
        - `weight` number, required — Weight (0-100)
      - `ads` object — Ads configuration for the distribution
        - `dai` object — DAI endpoint settings
          - `weight` integer, required — Weight for DAI endpoints (0-100)
          - `priority` integer, required — Priority for DAI endpoints (any integer, lower = higher priority)
      - `playerSettings` object — Player settings applied to the player configuration in the discovery response
        - `hespCooldown` number — Cooldown period in seconds (0-300) before the player retries HESP playback after falling back to another protocol. Defaults to 120 seconds when not set.

---

[API](https://skmtc.net/dolby/apis/theolive-api.md) · [All operations](https://skmtc.net/dolby/apis/theolive-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/dolby/theolive-api/revisions/3dc30dd23624/schema)
