Dolby OptiView Live

THEOlive API v2 - live streaming channel orchestration: channels, ingests, engines, distributions, ABR ladders, schedulers, custom endpoints, webhooks and per-channel analytics. 57 paths / 82 operations over HTTP Basic auth.

Operations 82

GET /channels Get all channels #
POST /channels Create a new channel #
GET /channels/{id} Get a channel by ID #
PATCH /channels/{id} Update a channel by ID #
DELETE /channels/{id} Delete a channel by ID #
GET /channels/{id}/drm/configs Get the DRM content protection configurations of a channel #
POST /channels/{id}/start Start a channel (will start all connected engines) #
POST /channels/{id}/stop Stop a channel (will stop all connected engines) #
GET /channels/{id}/ingests Get ingests of a channel #
POST /channels/{id}/ingests Create an ingest for a channel #
GET /channels/{id}/engines Get engines of a channel #
POST /channels/{id}/engines Create an engine for a channel #
GET /channels/{id}/distributions Get distributions of a channel #
POST /channels/{id}/distributions Create a distribution for a channel #
POST /channels/{id}/instream-metadata/{uuid} Send instream metadata for a channel #
GET /channels/{id}/runs Get engine runs of a channel #
GET /channels/{id}/analytics/transcoding-minutes Get transcoding minutes analytics for a channel #
GET /channels/{id}/analytics/viewing-minutes Get viewing minutes analytics for a channel #
GET /channels/{id}/analytics/bytes-transferred Get bytes transferred analytics for a channel #
GET /channels/{id}/analytics/viewing-minutes/browsers Get viewing minutes grouped by browser for a channel #
GET /channels/{id}/analytics/viewing-minutes/countries Get viewing minutes grouped by country for a channel #
GET /channels/{id}/analytics/bytes-transferred/browsers Get bytes transferred grouped by browser for a channel #
GET /channels/{id}/analytics/bytes-transferred/countries Get bytes transferred grouped by country for a channel #
GET /channels/{id}/analytics/insights/countries Get country insights for a channel #
GET /channels/{id}/analytics/insights/browsers-os Get browser and OS insights for a channel #
GET /channels/{id}/analytics/insights/viewers Get viewer count insights for a channel #
GET /ingests/{id} Get an ingest by ID #
PATCH /ingests/{id} Update an ingest by ID #
DELETE /ingests/{id} Delete an ingest by ID #
GET /ingests/{id}/engines Get engines of an ingest #
POST /ingests/{id}/engines Create an engine for an ingest #
GET /engines/{id} Get an engine by ID #
PATCH /engines/{id} Update an engine by ID #
DELETE /engines/{id} Delete an engine by ID #
POST /engines/{id}/start Start an engine #
POST /engines/{id}/stop Stop an engine #
GET /engines/{id}/last-run Get the last run of an engine #
GET /engines/{id}/runs Get runs of an engine #
GET /distributions/{id} Get a distribution by ID #
PATCH /distributions/{id} Update a distribution by ID #
DELETE /distributions/{id} Delete a distribution by ID #
GET /distributions/{id}/security/keys Get security keys of a distribution #
POST /distributions/{id}/security/keys Add a security key to a distribution #
DELETE /distributions/{id}/security/keys Delete all security keys of a distribution #
GET /distributions/{id}/security/keys/{keyId} Get a specific security key #
DELETE /distributions/{id}/security/keys/{keyId} Delete a specific security key #
GET /distributions/{id}/analytics/viewing-minutes Get viewing minutes analytics for a distribution #
GET /distributions/{id}/analytics/bytes-transferred Get bytes transferred analytics for a distribution #
GET /distributions/{id}/analytics/viewing-minutes/browsers Get viewing minutes grouped by browser for a distribution #
GET /distributions/{id}/analytics/viewing-minutes/countries Get viewing minutes grouped by country for a distribution #
GET /distributions/{id}/analytics/bytes-transferred/browsers Get bytes transferred grouped by browser for a distribution #
GET /distributions/{id}/analytics/bytes-transferred/countries Get bytes transferred grouped by country for a distribution #
GET /distributions/{id}/analytics/insights/countries Get country insights for a distribution #
GET /distributions/{id}/analytics/insights/browsers-os Get browser and OS insights for a distribution #
GET /distributions/{id}/analytics/insights/viewers Get viewer count insights for a distribution #
GET /regions Get all regions available for your organization #
GET /regions/{regionId} Get a region by ID #
GET /regions/{regionId}/sdi Get the SDI devices of an on-prem region #
GET /regions/{regionId}/ndi Get the NDI sources of an on-prem region #
GET /abr Get all ABR ladders for your organization #
GET /webhooks Get all webhooks #
POST /webhooks Create a new webhook #
GET /webhooks/{id} Get a webhook by ID #
PATCH /webhooks/{id} Update a webhook by ID #
DELETE /webhooks/{id} Delete a webhook by ID #
GET /webhooks/{id}/secret Get a webhook secret #
GET /webhooks/{id}/logs Get webhook logs #
GET /schedulers List all schedulers #
POST /schedulers Create a scheduler #
GET /schedulers/{id} Get a scheduler by ID #
PATCH /schedulers/{id} Update a scheduler by ID #
DELETE /schedulers/{id} Delete a scheduler by ID #
POST /channels/{id}/custom-endpoints Create a custom endpoint on a channel #
GET /channels/{id}/custom-endpoints List all custom endpoints of a channel #
GET /custom-endpoints/{id} Get a custom endpoint by ID #
PATCH /custom-endpoints/{id} Update a custom endpoint #
DELETE /custom-endpoints/{id} Delete a custom endpoint #
GET /monitoring/channels/{channelId} Get monitoring data for a channel #
GET /monitoring/ingests/{ingestId} Get detailed monitoring data for an ingest #
GET /monitoring/engines/{engineId} Get detailed monitoring data for an engine #
GET /monitoring/channels/{channelId}/ingests Get detailed ingest monitoring data for a channel #
GET /monitoring/channels/{channelId}/engines Get detailed engine monitoring data for a channel #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/optiview-live"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

dolby-optiview-live-openapi.yml Raw ↑
openapi: 3.0.0
info:
  title: THEOlive API
  version: v2
servers:
- url: https://api.theo.live/v2
  description: V2 API
- url: https://api.theo.live
  description: Base (for /v1 endpoints)
security:
- BasicAuth: []
components:
  securitySchemes:
    BasicAuth:
      type: http
      scheme: basic
  schemas:
    PaginatedChannelResult:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/Channel'
          description: List of channels
        pagination:
          type: object
          properties:
            hasMore:
              type: boolean
              description: Whether more results are available
            cursor:
              type: string
              description: Cursor for the next page of results
          required:
          - hasMore
          - cursor
          description: Pagination info
      required:
      - data
      - pagination
    Channel:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier of the channel
        createdAt:
          type: string
          description: Creation timestamp
        name:
          type: string
          description: Name of the channel
        status:
          type: string
          enum:
          - ready
          - stopped
          - deploying
          - starting
          - waiting
          - ingesting
          - playing
          - stopping
          - error
          - deleting
          - deleted
          description: Current status of the channel
        externalId:
          type: string
          description: Deprecated, use 'externalIds' instead. For now, this returns the first entry of the 'externalIds' list.
          deprecated: true
        externalIds:
          type: array
          items:
            type: string
          description: External identifiers of the channel
        timeout:
          type: number
          description: Timeout in seconds
        ads:
          type: object
          properties:
            enabled:
              type: boolean
              description: Whether OptiView ads are enabled on the channel
            settings:
              type: object
              properties:
                assetKey:
                  type: string
                  description: Deprecated. Use customAssetKey instead.
                  deprecated: true
                layout:
                  type: string
                  enum:
                  - SINGLE
                  - DOUBLE
                  - LSHAPE_AD
                  - LSHAPE_CONTENT
                  deprecated: true
                enableBumperAds:
                  type: boolean
                  deprecated: true
                podDuration:
                  type: number
                  deprecated: true
                customAdTagParameters:
                  type: object
                  additionalProperties:
                    type: string
                  deprecated: true
              description: Deprecated. Only returned for channels still using the old (V1) ads API underneath.
              deprecated: true
          required:
          - enabled
          description: OptiView Ads configuration
        dvr:
          type: object
          properties:
            enabled:
              type: boolean
              description: Whether DVR is enabled
            windowInSeconds:
              type: number
              minimum: 60
              maximum: 86400
              description: DVR window in seconds (60-86400)
          required:
          - enabled
          description: DVR configuration
        nielsen:
          type: object
          properties:
            enabled:
              type: boolean
              description: Whether Nielsen is enabled
          required:
          - enabled
          description: Nielsen configuration
        instreamMetadata:
          type: object
          properties:
            enabled:
              type: boolean
              description: Whether instream metadata is enabled. Supported metadata is h264 registered or unregistered SEI
                metadata
            uuids:
              type: array
              items:
                type: string
                format: uuid
              description: Array of instream metadata SEI UUIDs
          required:
          - enabled
          description: Instream metadata configuration
        perpetual:
          type: boolean
          description: Whether this channel is 24/7 (never times out, excluded from transcoding analytics)
        organizationId:
          type: string
          description: Organization ID
      required:
      - id
      - createdAt
      - name
      - status
      - timeout
      - perpetual
      - organizationId
    ChannelCreatedObjectResult:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/ChannelCreated'
      required:
      - data
    ChannelCreated:
      allOf:
      - $ref: '#/components/schemas/Channel'
      - type: object
        properties:
          ingests:
            type: array
            items:
              $ref: '#/components/schemas/Ingest'
            description: Connected ingests
          engines:
            type: array
            items:
              type: object
              properties:
                id:
                  type: string
                  description: Unique identifier of the engine
                name:
                  type: string
                  description: Name of the engine
                createdAt:
                  type: string
                  description: Creation timestamp
                updatedAt:
                  type: string
                  description: Last update timestamp
                quality:
                  type: object
                  properties:
                    abrLadderId:
                      type: string
                      description: ABR ladder ID
                  required:
                  - abrLadderId
                  description: Quality configuration
                overlays:
                  type: array
                  items:
                    type: object
                    properties:
                      url:
                        type: string
                        description: URL of the overlay image
                      position:
                        type: object
                        properties:
                          top:
                            type: integer
                            minimum: 0
                            description: Pixels from top
                          bottom:
                            type: integer
                            minimum: 0
                            description: Pixels from bottom (ignored if top is present)
                          left:
                            type: integer
                            minimum: 0
                            description: Pixels from left
                          right:
                            type: integer
                            minimum: 0
                            description: Pixels from right (ignored if left is present)
                        description: Overlay position
                      size:
                        type: object
                        properties:
                          width:
                            type: integer
                            minimum: 0
                            description: Width in pixels
                          height:
                            type: integer
                            minimum: 0
                            description: Height in pixels
                        description: Overlay size
                      opacity:
                        type: number
                        minimum: 0
                        maximum: 1
                        description: Overlay opacity (`0`=fully transparent, `1`=fully opaque)
                    required:
                    - url
                  description: Image overlay configuration
                drm:
                  type: boolean
                  description: Whether DRM is enabled
                drmProvider:
                  type: string
                  enum:
                  - ezdrm
                  - drmtoday
                  description: DRM provider used by this engine
                priority:
                  type: number
                  description: Engine priority
                status:
                  type: string
                  enum:
                  - stopped
                  - deploying
                  - starting
                  - waiting
                  - ingesting
                  - playing
                  - stopping
                  - error
                  - deleting
                  - deleted
                  description: Current status of the engine
                daiAssetKey:
                  type: string
                  nullable: true
                  description: DAI asset key
                outputs:
                  type: object
                  properties:
                    hesp:
                      type: boolean
                      default: true
                      description: Enable HESP output. Enabled by default.
                    hls:
                      type: boolean
                      default: true
                      description: Enable HLS output. Enabled by default.
                    hlsMpegTs:
                      type: boolean
                      default: false
                      description: Enable HLS MPEG-TS output. Only available when enabled for your organization.
                    llHls:
                      type: boolean
                      default: false
                      description: Enable Low-Latency HLS output. Enabling this also enables HLS output. Disabled by default.
                  description: Output format configuration
                vision:
                  type: object
                  nullable: true
                  properties:
                    toneLut:
                      type: object
                      nullable: true
                      properties:
                        saturationBoost:
                          type: string
                          nullable: true
                          enum:
                          - high
                          - low
                          - null
                          description: Saturation boost level
                        strength:
                          type: string
                          nullable: true
                          enum:
                          - low
                          - medium
                          - high
                          - null
                          description: Tone mapping strength
                      additionalProperties: false
                      description: Tone mapping LUT configuration
                    masteringDisplay:
                      type: object
                      nullable: true
                      properties:
                        primaries:
                          type: object
                          nullable: true
                          properties:
                            type:
                              type: string
                              nullable: true
                              enum:
                              - rec2020
                              - p3d65
                              - rec709
                              - custom
                              - null
                              description: Color primaries preset
                            red:
                              type: object
                              nullable: true
                              properties:
                                x:
                                  type: number
                                  description: Chromaticity x coordinate
                                y:
                                  type: number
                                  description: Chromaticity y coordinate
                              required:
                              - x
                              - y
                              additionalProperties: false
                              description: Custom red primary coordinates (required when type is `custom`)
                            green:
                              type: object
                              nullable: true
                              properties:
                                x:
                                  type: number
                                  description: Chromaticity x coordinate
                                y:
                                  type: number
                                  description: Chromaticity y coordinate
                              required:
                              - x
                              - y
                              additionalProperties: false
                              description: Custom green primary coordinates (required when type is `custom`)
                            blue:
                              type: object
                              nullable: true
                              properties:
                                x:
                                  type: number
                                  description: Chromaticity x coordinate
                                y:
                                  type: number
                                  description: Chromaticity y coordinate
                              required:
                              - x
                              - y
                              additionalProperties: false
                              description: Custom blue primary coordinates (required when type is `custom`)
                          additionalProperties: false
                          description: Mastering display color primaries
                        whitePoint:
                          type: object
                          nullable: true
                          properties:
                            type:
                              type: string
                              nullable: true
                              enum:
                              - d65
                              - d60
                              - dci
                              - custom
                              - null
                              description: White point preset
                            x:
                              type: number
                              nullable: true
                              description: Custom white point x coordinate (required when type is `custom`)
                            y:
                              type: number
                              nullable: true
                              description: Custom white point y coordinate (required when type is `custom`)
                          additionalProperties: false
                          description: Mastering display white point
                        maxDisplayMasteringLuminance:
                          type: number
                          nullable: true
                          minimum: 0
                          maximum: 10000
                          description: Maximum display mastering luminance in nits (0-10000)
                        minDisplayMasteringLuminance:
                          type: number
                          nullable: true
                          minimum: 0
                          description: Minimum display mastering luminance in nits
                      additionalProperties: false
                      description: Mastering display configuration
                    contentLightLevels:
                      type: object
                      nullable: true
                      properties:
                        cllMode:
                          type: string
                          nullable: true
                          enum:
                          - auto
                          - expert
                          - null
                          description: Content light level mode. `expert` requires maxCll and maxFall (nits)
                        maxCll:
                          type: number
                          nullable: true
                          minimum: 0
                          description: Maximum content light level in nits (required when cllMode is `expert`)
                        maxFall:
                          type: number
                          nullable: true
                          minimum: 0
                          description: Maximum frame-average light level in nits (required when cllMode is `expert`)
                      additionalProperties: false
                      description: Content light level configuration
                    globalLook:
                      type: object
                      nullable: true
                      properties:
                        l8Mode:
                          type: string
                          nullable: true
                          enum:
                          - 'off'
                          - quickControls
                          - null
                          description: L8 global look mode
                        l8ContrastBoost:
                          type: string
                          nullable: true
                          enum:
                          - 'off'
                          - low
                          - mid
                          - high
                          - null
                          description: L8 contrast boost (required when l8Mode is `quickControls`)
                        l8MidBoost:
                          type: string
                          nullable: true
                          enum:
                          - 'off'
                          - low
                          - mid
                          - high
                          - null
                          description: L8 mid boost (required when l8Mode is `quickControls`)
                        l8SaturationBoost:
                          type: string
                          nullable: true
                          enum:
                          - 'off'
                          - low
                          - mid
                          - high
                          - null
                          description: L8 saturation boost (required when l8Mode is `quickControls`)
                      additionalProperties: false
                      description: Global look (L8) configuration
                    contentType:
                      type: object
                      nullable: true
                      properties:
                        l11ContentType:
                          type: string
                          nullable: true
                          enum:
                          - default
                          - cinema
                          - game
                          - sport
                          - ugc
                          - null
                          description: L11 content type
                        l11WhitePointK:
                          type: number
                          nullable: true
                          description: L11 white point in Kelvin, snapped to the 16 RPU steps
                      additionalProperties: false
                      description: Content type (L11) configuration
                  additionalProperties: false
                  description: Vision configuration
                atmos:
                  type: object
                  nullable: true
                  properties:
                    dialnorm:
                      type: integer
                      minimum: -31
                      maximum: -1
                      description: Dolby Atmos dialnorm value. Must be an integer between -1 and -31.
                  required:
                  - dialnorm
                  additionalProperties: false
                  description: Dolby Atmos configuration
              required:
              - id
              - name
              - createdAt
              - updatedAt
              - quality
              - overlays
              - drm
              - priority
              - status
              - outputs
            description: Connected engines
          distributions:
            type: array
            items:
              $ref: '#/components/schemas/Distribution'
            description: Connected distributions
        required:
        - ingests
        - engines
        - distributions
      description: Created channel with connected resources
    Ingest:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier of the ingest
        name:
          type: string
          description: Name of the ingest
        createdAt:
          type: string
          description: Creation timestamp
        type:
          type: string
          enum:
          - rtmp-push
          - rtmp-pull
          - srt-pull
          - srt-push
          - sdi-pull
          - rtsp-pull
          - ndi-pull
          description: Ingest type
        url:
          type: string
          description: Ingest URL
        streamKey:
          type: string
          description: Stream key for RTMP push ingests
        tracks:
          type: object
          properties:
            audio:
              type: array
              items:
                type: object
                properties:
                  pid:
                    type: number
                    description: Audio track PID (mandatory for multi-audio)
                  language:
                    type: string
                    description: Audio track language code
                  label:
                    type: string
                    description: Audio track label
                required:
                - language
                - label
              description: Audio track configuration
          description: Audio track configuration
        captions:
          type: array
          items:
            type: object
            properties:
              channel:
                type: number
                description: Caption channel number
              language:
                type: string
                description: Caption language code
              label:
                type: string
                description: Caption label
            required:
            - channel
            - language
          description: Caption configuration
        sdi:
          $ref: '#/components/schemas/IngestSdi'
        ndi:
          $ref: '#/components/schemas/IngestNdi'
      required:
      - id
      - name
      - createdAt
      - type
      - url
      - tracks
      - captions
    IngestSdi:
      type: object
      properties:
        persistentId:
          type: string
          description: '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:
          type: string
          enum:
          - auto
          - sdi
          - hdmi
          - optical-sdi
          - component
          - composite
          - svideo
          description: Audio connection type
        videoConnection:
          type: string
          enum:
          - auto
          - sdi
          - hdmi
          - optical-sdi
          - component
          - composite
          - svideo
          description: Video connection type
        videoMode:
          type: string
          enum:
          - 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
          description: Video mode
        profile:
          type: string
          enum:
          - default
          - one-sub-device-full
          - one-sub-device-half
          - two-sub-devices-full
          - two-sub-devices-half
          - four-sub-devices-half
          description: SDI profile
        videoFormat:
          type: string
          enum:
          - auto
          - 8bit-yuv
          - 10bit-yuv
          - 8bit-argb
          - 8bit-bgra
          - 10bit-rgb
          description: Video format
      additionalProperties: false
      description: SDI capture card configuration (only for sdi-pull ingests)
    IngestNdi:
      type: object
      properties:
        id:
          type: string
          description: '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'
      required:
      - id
      additionalProperties: false
      description: NDI source configuration (only for ndi-pull ingests)
    Distribution:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier of the distribution
        createdAt:
          type: string
          description: Creation timestamp
        name:
          type: string
          description: Name of the distribution
        externalId:
          type: string
          description: External identifier for the distribution
        enabled:
          type: boolean
          description: Whether the distribution is enabled
        targetLatency:
          type: number
          description: 'Deprecated: use latencies instead.'
        latencies:
          type: object
          properties:
            hesp:
              type: number
              nullable: true
              minimum: 1
              maximum: 30
              description: 'HESP latency in seconds (1-30, default: 2)'
            hls:
              type: number
              nullable: true
              minimum: 6
              maximum: 30
              description: 'HLS latency in seconds (6-30, default: 10)'
          description: Latency configuration per output protocol
        security:
          type: object
          properties:
            geoBlocking:
              type: object
              properties:
                enabled:
                  type: boolean
                  description: Whether geo-blocking is enabled
                mode:
                  type: string
                  enum:
                  - allow
                  - deny
                  description: Geo-blocking mode
                countries:
                  type: array
                  items:
                    type: string
                  description: List of country codes
              required:
              - enabled
              - mode
              - countries
              description: Geo-blocking configuration
            ipBlocking:
              type: object
              properties:
                enabled:
                  type: boolean
                  description: Whether IP blocking is enabled
                mode:
                  type: string
                  enum:
                  - allow
                  - deny
                  description: IP blocking mode
                cidrs:
                  type: array
                  items:
                    type: string
                  description: List of CIDR ranges
              required:
              - enabled
              - mode
              - cidrs
              description: IP blocking configuration
            refererBlocking:
              type: object
              properties:
                enabled:
                  type: boolean
                  description: Whether referer blocking is enabled
                allowedDomains:
                  type: array
                  items:
                    type: string
                  description: List of allowed domains
                allowNativeApps:
                  type: boolean
                  description: Whether native apps are allowed
              required:
              - enabled
              - allowedDomains
              - allowNativeApps
              description: Referer blocking configuration
            rewriteSegmentUrls:
              type: boolean
              description: 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:
              type: array
              items:
                type: object
                properties:
                  id:
                    type: string
                    description: Security key ID
                  name:
                    type: string
                    description: Security key name
                required:
                - id
              description: Security keys
          required:
          - geoBlocking
          - ipBlocking
          - keys
          description: Security configuration
        endpoints:
          type: object
          properties:
            engineIds:
              type: array
              items:
                type: string
              description: Connected engine IDs
          required:
          - engineIds
          description: Endpoint configuration
        webRtc:
          type: object
          properties:
            priority:
              type: number
              description: WebRTC priority
            src:
              type: object
              properties:
                name:
                  type: string
                  description: WebRTC source name
                accountId:
                  type: string
                  description: WebRTC account ID
                apiUrl:
                  type: string
                  description: WebRTC API URL
              required:
              - name
              - accountId
              - apiUrl
              description: WebRTC source configuration
          required:
          - priority
          - src
          description: WebRTC configuration
        maxBitrate:
          type: number
          description: Maximum bitrate limit in bps
        outputs:
          type: object
          properties:
            hesp:
              type: boolean
              default: true
              description: Enable HESP output. Enabled by default.
            hls:
              type: boolean
              default: true
              description: Enable HLS output. Enabled by default.
            hlsMpegTs:
              type: boolean
              default: false
              description: Enable HLS MPEG-TS output. Disabled by default.
          description: Output format configuration
        dvr:
          type: object
          properties:
            enabled:
              type: boolean
              description: Whether DVR is enabled on the distribution
          description: DVR configuration
        overrides:
          type: array
     

# --- truncated at 32 KB (323 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/dolby/refs/heads/main/openapi/dolby-optiview-live-openapi.yml