Dolby · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for Millicast Record Files API
10 actions
10 updates
phrasing
extends
openapi/dolby-recordfiles-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 10
$.info
$.paths['/api/record_files/{recordFileId}'].get
$.paths['/api/record_files/{recordFileId}'].delete
$.paths['/api/record_files/delete'].post
$.paths['/api/record_files/delete/all'].post
$.paths['/api/record_files/list'].get
$.paths['/api/record_files/list_by_token'].get
$.paths['/api/record_files/list_by_stream'].get
$.paths['/api/record_files/usage'].get
$.paths['/api/record_files/usage_billing'].get
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 Record Files API
version: 1.0.0
extends: openapi/dolby-recordfiles-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: 9
- target: $.paths['/api/record_files/{recordFileId}'].get
update:
x-apievangelist-phrasing:
intent: Get a recorded file and download link
effect: read
questions:
- How do I get a temporary download link for one recording file?
- What details come back when I read a single record file?
instructions:
- text: Read record file {record_file_id}.
slots:
record_file_id: path.recordFileId
- text: Get a download link for recording {record_file_id}.
slots:
record_file_id: path.recordFileId
method: generated
generated: '2026-10-01'
- target: $.paths['/api/record_files/{recordFileId}'].delete
update:
x-apievangelist-phrasing:
intent: Delete a recorded file
effect: destructive
questions:
- How do I delete one recording from storage?
- Can I remove a single record file by its ID?
instructions:
- text: Delete record file {record_file_id}.
slots:
record_file_id: path.recordFileId
- text: Remove recording {record_file_id} from storage.
slots:
record_file_id: path.recordFileId
method: generated
generated: '2026-10-01'
- target: $.paths['/api/record_files/delete'].post
update:
x-apievangelist-phrasing:
intent: Delete several recorded files
effect: destructive
questions:
- Can I delete a batch of recordings in one request?
- What's the way to remove a list of record files by ID?
instructions:
- text: Delete record files {record_file_ids}.
slots:
record_file_ids: requestBody.recordFileIds
- text: 'Remove these recordings from storage: {record_file_ids}.'
slots:
record_file_ids: requestBody.recordFileIds
method: generated
generated: '2026-10-01'
- target: $.paths['/api/record_files/delete/all'].post
update:
x-apievangelist-phrasing:
intent: Delete every recorded file
effect: destructive
questions:
- Is there a way to wipe all recordings from storage at once?
- What happens if I delete all of my record files?
instructions:
- text: Delete all my recorded files.
- text: Wipe every recording from storage.
method: generated
generated: '2026-10-01'
- target: $.paths['/api/record_files/list'].get
update:
x-apievangelist-phrasing:
intent: List recorded files
effect: read
questions:
- Which recordings do I have stored on my account?
- Can I sort and page through my recorded files?
instructions:
- text: List my recorded files, page {page} with {items_on_page} per page.
slots:
page: query.page
items_on_page: query.itemsOnPage
- text: Show recordings with status {status}, page {page}, {items_on_page} per page.
slots:
status: query.status
page: query.page
items_on_page: query.itemsOnPage
method: generated
generated: '2026-10-01'
- target: $.paths['/api/record_files/list_by_token'].get
update:
x-apievangelist-phrasing:
intent: List recorded files for a publish token
effect: read
questions:
- Which recordings were made with a particular publish token?
- Can I list record files filtered by token instead of stream?
instructions:
- text: List recordings made with token {token}, page {page}, {items_on_page} per page.
slots:
token: query.token
page: query.page
items_on_page: query.itemsOnPage
- text: Show record files for token ID {token_id} using token {token}, page {page} of {items_on_page}.
slots:
token_id: query.tokenId
token: query.token
page: query.page
items_on_page: query.itemsOnPage
method: generated
generated: '2026-10-01'
- target: $.paths['/api/record_files/list_by_stream'].get
update:
x-apievangelist-phrasing:
intent: List recorded files for a stream
effect: read
questions:
- What recordings exist for one stream name?
- Can I list record files filtered by stream rather than token?
instructions:
- text: List recordings of stream {stream_name}, page {page}, {items_on_page} per page.
slots:
stream_name: query.streamname
page: query.page
items_on_page: query.itemsOnPage
- text: Show completed record files for stream {stream_name} with status {status}, page {page} of {items_on_page}.
slots:
stream_name: query.streamname
status: query.status
page: query.page
items_on_page: query.itemsOnPage
method: generated
generated: '2026-10-01'
- target: $.paths['/api/record_files/usage'].get
update:
x-apievangelist-phrasing:
intent: Get current recording storage bytes
effect: read
questions:
- How many bytes of recordings am I storing right now?
- What's my current recorded-file storage total?
instructions:
- text: Tell me the current total bytes of my recorded files.
- text: Check how much storage my recordings use today.
method: generated
generated: '2026-10-01'
- target: $.paths['/api/record_files/usage_billing'].get
update:
x-apievangelist-phrasing:
intent: Get billable recording storage GB-hours
effect: read
questions:
- How many gigabyte hours of recording storage was I billed for?
- What was recording storage usage across a billing date range?
instructions:
- text: Get billable recording storage GB-hours from {start_date} to {stop_date}.
slots:
start_date: query.startDate
stop_date: query.stopDate
- text: Total recorded-file gigabyte hours between {start_date} and {stop_date}.
slots:
start_date: query.startDate
stop_date: query.stopDate
method: generated
generated: '2026-10-01'