Dolby · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for Millicast Publish Token V1 API
12 actions
12 updates
phrasing
extends
openapi/dolby-publishtokenv1-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.
What the actions change
x-apievangelist-phrasing
Targets 12
$.info
$.paths['/api/publish_token/{tokenId}'].get
$.paths['/api/publish_token/{tokenId}'].put
$.paths['/api/publish_token/{tokenId}'].delete
$.paths['/api/publish_token/list'].get
$.paths['/api/publish_token/list_by_name'].get
$.paths['/api/publish_token/list_by_cluster'].get
$.paths['/api/publish_token'].post
$.paths['/api/publish_token/active'].get
$.paths['/api/publish_token/active/all'].get
$.paths['/api/publish_token/disable'].patch
$.paths['/api/publish_token/{tokenId}/restream/sync'].post
OpenAPI Overlay
# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand.
overlay: 1.0.0
info:
title: API Evangelist conversational phrasing for Millicast Publish Token V1 API
version: 1.0.0
extends: openapi/dolby-publishtokenv1-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: 11
- target: $.paths['/api/publish_token/{tokenId}'].get
update:
x-apievangelist-phrasing:
intent: Get a publish token
effect: read
questions:
- What settings does a specific publish token have?
- Can I look up a publish token by its ID?
instructions:
- text: Show publish token {tokenId}.
slots:
tokenId: path.tokenId
- text: Get the streams and settings of publish token {tokenId}.
slots:
tokenId: path.tokenId
method: generated
generated: '2026-10-01'
- target: $.paths['/api/publish_token/{tokenId}'].put
update:
x-apievangelist-phrasing:
intent: Update a publish token (v1)
effect: write
questions:
- Can I turn on recording for an existing publish token?
- How do I add another stream name to a publish token using the v1 API?
instructions:
- text: Enable recording on publish token {tokenId} by setting record to {record}.
slots:
tokenId: path.tokenId
record: requestBody.record
- text: With the v1 token API, add streams {addTokenStreams} to publish token {tokenId}.
slots:
tokenId: path.tokenId
addTokenStreams: requestBody.addTokenStreams
method: generated
generated: '2026-10-01'
- target: $.paths['/api/publish_token/{tokenId}'].delete
update:
x-apievangelist-phrasing:
intent: Delete a publish token
effect: destructive
questions:
- How do I permanently delete a publish token?
- Where do I find the token ID needed to delete a publish token?
instructions:
- text: Delete publish token {tokenId}.
slots:
tokenId: path.tokenId
- text: Permanently remove publish token {tokenId}.
slots:
tokenId: path.tokenId
method: generated
generated: '2026-10-01'
- target: $.paths['/api/publish_token/list'].get
update:
x-apievangelist-phrasing:
intent: List publish tokens
effect: read
questions:
- Which publish tokens exist on my account?
- How can I tell I've reached the end when paging publish tokens?
instructions:
- text: List my publish tokens, page {page} with {itemsOnPage} per page.
slots:
page: query.page
itemsOnPage: query.itemsOnPage
- text: Show publish tokens sorted by {sortBy}, page {page}, {itemsOnPage} per page.
slots:
sortBy: query.sortBy
page: query.page
itemsOnPage: query.itemsOnPage
method: generated
generated: '2026-10-01'
- target: $.paths['/api/publish_token/list_by_name'].get
update:
x-apievangelist-phrasing:
intent: Find publish tokens by name
effect: read
questions:
- Can I find publish tokens by token label or stream name?
- Are wildcard stream tokens included when searching publish tokens by name?
instructions:
- text: Find publish tokens named {name}, page {page} with {itemsOnPage} per page.
slots:
name: query.name
page: query.page
itemsOnPage: query.itemsOnPage
- text: Search publish tokens by stream name {name}, page {page}, {itemsOnPage} each.
slots:
name: query.name
page: query.page
itemsOnPage: query.itemsOnPage
method: generated
generated: '2026-10-01'
- target: $.paths['/api/publish_token/list_by_cluster'].get
update:
x-apievangelist-phrasing:
intent: List publish tokens in a cluster
effect: read
questions:
- Which publish tokens are tied to a particular cluster region?
- Can I filter publish tokens by cluster?
instructions:
- text: List publish tokens in cluster {cluster}, page {page} with {itemsOnPage} per page.
slots:
cluster: query.cluster
page: query.page
itemsOnPage: query.itemsOnPage
- text: Show tokens for the {cluster} region, page {page}, {itemsOnPage} each.
slots:
cluster: query.cluster
page: query.page
itemsOnPage: query.itemsOnPage
method: generated
generated: '2026-10-01'
- target: $.paths['/api/publish_token'].post
update:
x-apievangelist-phrasing:
intent: Create a publish token
effect: write
questions:
- How do I create a token so a broadcaster can publish a stream?
- How long can stream names on a new publish token be?
- Can I set an expiry or allowed countries on a new publish token?
instructions:
- text: Create a publish token labeled {label} for streams {streams}.
slots:
label: requestBody.label
streams: requestBody.streams
- text: Create publish token {label} for {streams} that expires {expires}.
slots:
label: requestBody.label
streams: requestBody.streams
expires: requestBody.expires
method: generated
generated: '2026-10-01'
- target: $.paths['/api/publish_token/active'].get
update:
x-apievangelist-phrasing:
intent: Find the publish token of a live stream
effect: read
questions:
- Which publish token is a live stream currently using?
- Can I get the token ID behind an active stream from its stream ID?
instructions:
- text: Find the publish token for active stream {streamId}.
slots:
streamId: query.streamId
- text: Look up which token stream {streamId} is publishing with right now.
slots:
streamId: query.streamId
method: generated
generated: '2026-10-01'
- target: $.paths['/api/publish_token/active/all'].get
update:
x-apievangelist-phrasing:
intent: List publish tokens of all live streams
effect: read
questions:
- Which publish tokens are being used by streams that are live right now?
- Are tokens for long-running streams from before October 2022 included in the active list?
instructions:
- text: List the publish token IDs of every active stream on my account.
- text: Show all tokens currently in use by live streams.
method: generated
generated: '2026-10-01'
- target: $.paths['/api/publish_token/disable'].patch
update:
x-apievangelist-phrasing:
intent: Disable publish tokens in bulk
effect: destructive
questions:
- How do I stop several publish tokens from being used at once?
- Can I bulk-disable publish tokens by ID?
instructions:
- text: Disable publish tokens {tokenIds}.
slots:
tokenIds: requestBody.tokenIds
- text: 'Turn off these publish tokens in bulk: {tokenIds}.'
slots:
tokenIds: requestBody.tokenIds
method: generated
generated: '2026-10-01'
- target: $.paths['/api/publish_token/{tokenId}/restream/sync'].post
update:
x-apievangelist-phrasing:
intent: Apply restream changes to a live stream
effect: write
questions:
- Can restream configuration changes apply to a stream that's already running?
- How do I push updated restream targets to a live broadcast immediately?
instructions:
- text: Sync restreams for publish token {tokenId}.
slots:
tokenId: path.tokenId
- text: Apply the new restream settings of token {tokenId} to its running streams now.
slots:
tokenId: path.tokenId
method: generated
generated: '2026-10-01'