Dolby · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for THEOlive Distributions API

20 actions 20 updates phrasing extends openapi/dolby-distributions-api-openapi.yml
Generated by API Evangelist Written by API Evangelist tooling for Dolby's API. It is a proposal applied on top of the contract, not a document Dolby publishes.
View Overlay File View on GitHub Overlay Specification

What the actions change

x-apievangelist-phrasing

Targets 20 · first 16 shown; the file carries all of them

$.info
$.paths['/channels/{id}/distributions'].get
$.paths['/channels/{id}/distributions'].post
$.paths['/distributions/{id}'].get
$.paths['/distributions/{id}'].delete
$.paths['/distributions/{id}'].patch
$.paths['/distributions/{id}/security/keys'].get
$.paths['/distributions/{id}/security/keys'].post
$.paths['/distributions/{id}/security/keys'].delete
$.paths['/distributions/{id}/security/keys/{keyId}'].get
$.paths['/distributions/{id}/security/keys/{keyId}'].delete
$.paths['/distributions/{id}/analytics/viewing-minutes'].get
$.paths['/distributions/{id}/analytics/bytes-transferred'].get
$.paths['/distributions/{id}/analytics/viewing-minutes/browsers'].get
$.paths['/distributions/{id}/analytics/viewing-minutes/countries'].get
$.paths['/distributions/{id}/analytics/bytes-transferred/browsers'].get

OpenAPI Overlay

Raw ↑
# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand.
overlay: 1.0.0
info:
  title: API Evangelist conversational phrasing for THEOlive Distributions API
  version: 1.0.0
extends: openapi/dolby-distributions-api-openapi.yml
actions:
- target: $.info
  update:
    x-apievangelist-phrasing:
      method: generated
      generated: '2026-10-01'
      generator: build-phrasing.py
      label: Generated by API Evangelist
      operations: 19
- target: $.paths['/channels/{id}/distributions'].get
  update:
    x-apievangelist-phrasing:
      intent: List a channel's distributions
      effect: read
      questions:
      - Which distributions are set up on my channel?
      - Can I page through a channel's distributions with a limit and cursor?
      instructions:
      - text: List the distributions on channel {channel_id}.
        slots:
          channel_id: path.id
      - text: Show the first {limit} distributions of channel {channel_id}.
        slots:
          limit: query.limit
          channel_id: path.id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/channels/{id}/distributions'].post
  update:
    x-apievangelist-phrasing:
      intent: Create a distribution for a channel
      effect: write
      questions:
      - How do I add a new distribution to a live channel?
      - Can I set target latency and a max bitrate when creating a distribution?
      instructions:
      - text: Create a distribution named {name} on channel {channel_id}.
        slots:
          name: requestBody.name
          channel_id: path.id
      - text: Add distribution {name} to channel {channel_id} with target latency {target_latency}.
        slots:
          name: requestBody.name
          channel_id: path.id
          target_latency: requestBody.targetLatency
      method: generated
      generated: '2026-10-01'
- target: $.paths['/distributions/{id}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a distribution's details
      effect: read
      questions:
      - What settings does a specific distribution have?
      - Is a given distribution currently enabled?
      instructions:
      - text: Show distribution {distribution_id}.
        slots:
          distribution_id: path.id
      - text: Fetch the configuration of distribution {distribution_id}.
        slots:
          distribution_id: path.id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/distributions/{id}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete a distribution
      effect: destructive
      questions:
      - How do I remove a distribution I no longer need?
      - Can a distribution be deleted by its ID?
      instructions:
      - text: Delete distribution {distribution_id}.
        slots:
          distribution_id: path.id
      - text: Remove distribution {distribution_id} permanently.
        slots:
          distribution_id: path.id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/distributions/{id}'].patch
  update:
    x-apievangelist-phrasing:
      intent: Update a distribution's settings
      effect: write
      questions:
      - Can I disable an existing distribution without deleting it?
      - How do I change the max bitrate on a distribution I already created?
      instructions:
      - text: Rename distribution {distribution_id} to {name}.
        slots:
          distribution_id: path.id
          name: requestBody.name
      - text: Set enabled to {enabled} on distribution {distribution_id}.
        slots:
          enabled: requestBody.enabled
          distribution_id: path.id
      - text: Change the max bitrate of distribution {distribution_id} to {max_bitrate}.
        slots:
          distribution_id: path.id
          max_bitrate: requestBody.maxBitrate
      method: generated
      generated: '2026-10-01'
- target: $.paths['/distributions/{id}/security/keys'].get
  update:
    x-apievangelist-phrasing:
      intent: List a distribution's security keys
      effect: read
      questions:
      - What security keys are attached to my distribution?
      - Which keys currently protect a distribution?
      instructions:
      - text: List all security keys on distribution {distribution_id}.
        slots:
          distribution_id: path.id
      - text: Show every key securing distribution {distribution_id}.
        slots:
          distribution_id: path.id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/distributions/{id}/security/keys'].post
  update:
    x-apievangelist-phrasing:
      intent: Add a security key to a distribution
      effect: write
      questions:
      - How do I add a new security key to a distribution?
      - Can I give a distribution security key a name?
      instructions:
      - text: Add security key {key} to distribution {distribution_id}.
        slots:
          key: requestBody.key
          distribution_id: path.id
      - text: Attach key {key} named {name} to distribution {distribution_id}.
        slots:
          key: requestBody.key
          name: requestBody.name
          distribution_id: path.id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/distributions/{id}/security/keys'].delete
  update:
    x-apievangelist-phrasing:
      intent: Remove all security keys from a distribution
      effect: destructive
      questions:
      - Can I wipe every security key off a distribution at once?
      - What's the quickest way to clear all keys on a distribution?
      instructions:
      - text: Delete all security keys on distribution {distribution_id}.
        slots:
          distribution_id: path.id
      - text: Clear every key from distribution {distribution_id}.
        slots:
          distribution_id: path.id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/distributions/{id}/security/keys/{keyId}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get one security key of a distribution
      effect: read
      questions:
      - What are the details of one specific security key on a distribution?
      - Can I look up a single distribution key by its key ID?
      instructions:
      - text: Show security key {key_id} on distribution {distribution_id}.
        slots:
          key_id: path.keyId
          distribution_id: path.id
      - text: Fetch key {key_id} from distribution {distribution_id}.
        slots:
          key_id: path.keyId
          distribution_id: path.id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/distributions/{id}/security/keys/{keyId}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete one security key from a distribution
      effect: destructive
      questions:
      - How do I revoke just one security key from a distribution?
      - Can I remove a single key while keeping the others on a distribution?
      instructions:
      - text: Delete security key {key_id} from distribution {distribution_id}.
        slots:
          key_id: path.keyId
          distribution_id: path.id
      - text: Revoke only key {key_id} on distribution {distribution_id}.
        slots:
          key_id: path.keyId
          distribution_id: path.id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/distributions/{id}/analytics/viewing-minutes'].get
  update:
    x-apievangelist-phrasing:
      intent: Get viewing minutes for a distribution
      effect: read
      questions:
      - How many minutes did viewers watch through my distribution?
      - Can I group a distribution's viewing minutes over time at a chosen resolution?
      instructions:
      - text: Get viewing minutes for distribution {distribution_id} from {start} to {end} at {resolution} resolution.
        slots:
          distribution_id: path.id
          resolution: query.resolution
          start: query.start
          end: query.end
      - text: Chart watch time on distribution {distribution_id} between {start} and {end}, grouped by {group_by}, {resolution}.
        slots:
          distribution_id: path.id
          group_by: query.groupBy
          resolution: query.resolution
          start: query.start
          end: query.end
      method: generated
      generated: '2026-10-01'
- target: $.paths['/distributions/{id}/analytics/bytes-transferred'].get
  update:
    x-apievangelist-phrasing:
      intent: Get bytes transferred for a distribution
      effect: read
      questions:
      - How much data did my distribution deliver over a period?
      - Can I see a distribution's bytes transferred at hourly or daily resolution?
      instructions:
      - text: Get bytes transferred by distribution {distribution_id} from {start} to {end} at {resolution} resolution.
        slots:
          distribution_id: path.id
          resolution: query.resolution
          start: query.start
          end: query.end
      - text: Chart data delivered through distribution {distribution_id} between {start} and {end}, {resolution}.
        slots:
          distribution_id: path.id
          resolution: query.resolution
          start: query.start
          end: query.end
      method: generated
      generated: '2026-10-01'
- target: $.paths['/distributions/{id}/analytics/viewing-minutes/browsers'].get
  update:
    x-apievangelist-phrasing:
      intent: Get distribution viewing minutes by browser
      effect: read
      questions:
      - Which browsers account for the most watch time on my distribution?
      - How are a distribution's viewing minutes split across browsers?
      instructions:
      - text: Break down viewing minutes by browser for distribution {distribution_id} from {start} to {end}.
        slots:
          distribution_id: path.id
          start: query.start
          end: query.end
      - text: Rank browsers by watch time on distribution {distribution_id} between {start} and {end}.
        slots:
          distribution_id: path.id
          start: query.start
          end: query.end
      method: generated
      generated: '2026-10-01'
- target: $.paths['/distributions/{id}/analytics/viewing-minutes/countries'].get
  update:
    x-apievangelist-phrasing:
      intent: Get distribution viewing minutes by country
      effect: read
      questions:
      - Which countries watch the most minutes on my distribution?
      - How are a distribution's viewing minutes split by country?
      instructions:
      - text: Break down viewing minutes by country for distribution {distribution_id} from {start} to {end}.
        slots:
          distribution_id: path.id
          start: query.start
          end: query.end
      - text: Rank countries by watch time on distribution {distribution_id} between {start} and {end}.
        slots:
          distribution_id: path.id
          start: query.start
          end: query.end
      method: generated
      generated: '2026-10-01'
- target: $.paths['/distributions/{id}/analytics/bytes-transferred/browsers'].get
  update:
    x-apievangelist-phrasing:
      intent: Get distribution bytes transferred by browser
      effect: read
      questions:
      - Which browsers pulled the most data from my distribution?
      - How is a distribution's data transfer split across browsers?
      instructions:
      - text: Break down bytes transferred by browser for distribution {distribution_id} from {start} to {end}.
        slots:
          distribution_id: path.id
          start: query.start
          end: query.end
      - text: Rank browsers by data delivered on distribution {distribution_id} between {start} and {end}.
        slots:
          distribution_id: path.id
          start: query.start
          end: query.end
      method: generated
      generated: '2026-10-01'
- target: $.paths['/distributions/{id}/analytics/bytes-transferred/countries'].get
  update:
    x-apievangelist-phrasing:
      intent: Get distribution bytes transferred by country
      effect: read
      questions:
      - Which countries pulled the most data from my distribution?
      - How is a distribution's data transfer split by country?
      instructions:
      - text: Break down bytes transferred by country for distribution {distribution_id} from {start} to {end}.
        slots:
          distribution_id: path.id
          start: query.start
          end: query.end
      - text: Rank countries by data delivered on distribution {distribution_id} between {start} and {end}.
        slots:
          distribution_id: path.id
          start: query.start
          end: query.end
      method: generated
      generated: '2026-10-01'
- target: $.paths['/distributions/{id}/analytics/insights/countries'].get
  update:
    x-apievangelist-phrasing:
      intent: Get country insights for a distribution
      effect: read
      questions:
      - What country insights are available for my distribution over the last 30 days?
      - Why can't I get distribution country insights older than 30 days?
      instructions:
      - text: Get country insights for distribution {distribution_id} over period {period}.
        slots:
          distribution_id: path.id
          period: query.period
      - text: Show recent audience-by-country insights on distribution {distribution_id} for {period}.
        slots:
          distribution_id: path.id
          period: query.period
      method: generated
      generated: '2026-10-01'
- target: $.paths['/distributions/{id}/analytics/insights/browsers-os'].get
  update:
    x-apievangelist-phrasing:
      intent: Get browser and OS insights for a distribution
      effect: read
      questions:
      - Which browsers and operating systems do my distribution's viewers use?
      - Can I see a recent browser and OS mix for one distribution?
      instructions:
      - text: Get browser and OS insights for distribution {distribution_id} over period {period}.
        slots:
          distribution_id: path.id
          period: query.period
      - text: Show the operating systems viewing distribution {distribution_id} during {period}.
        slots:
          distribution_id: path.id
          period: query.period
      method: generated
      generated: '2026-10-01'
- target: $.paths['/distributions/{id}/analytics/insights/viewers'].get
  update:
    x-apievangelist-phrasing:
      intent: Get viewer count insights for a distribution
      effect: read
      questions:
      - How many viewers has my distribution had recently?
      - What did concurrent viewer counts look like on a distribution in the last 30 days?
      instructions:
      - text: Get viewer count insights for distribution {distribution_id} over period {period}.
        slots:
          distribution_id: path.id
          period: query.period
      - text: Show how many people watched distribution {distribution_id} during {period}.
        slots:
          distribution_id: path.id
          period: query.period
      method: generated
      generated: '2026-10-01'