Gumlet · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for Gumlet Video Assets API
14 actions
14 updates
phrasing
extends
openapi/gumlet-video-assets-api-openapi.yml
Generated by API Evangelist
Written by API Evangelist tooling for Gumlet's API. It is a proposal applied on top of the contract, not a document Gumlet publishes.
What the actions change
x-apievangelist-phrasing
Targets 14
$.info
$.paths['/video/assets'].post
$.paths['/video/assets/upload'].post
$.paths['/video/assets/{asset_id}'].get
$.paths['/video/assets/{asset_id}'].delete
$.paths['/video/assets/update'].post
$.paths['/video/assets/{asset_id}/thumbnail-select'].post
$.paths['/video/assets/{asset_ID}/thumbnail'].post
$.paths['/video/assets/{asset_id}/chapters'].post
$.paths['/video/workspaces/{workspace_id}/list'].get
$.paths['/video/assets/list/{workspace_id}'].get
$.paths['/video/assets/bulk/delete'].delete
$.paths['/video/assets/bulk/tag'].post
$.paths['/video/assets/{asset_id}/analytics'].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 Gumlet Video Assets API
version: 1.0.0
extends: openapi/gumlet-video-assets-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: 13
- target: $.paths['/video/assets'].post
update:
x-apievangelist-phrasing:
intent: Ingest a video from a URL
effect: write
questions:
- How do I import a video from a public URL into my workspace for processing?
- Can I turn on DRM or auto-generated subtitles when I ingest a video?
- Which output formats can a new video be processed into?
instructions:
- text: Ingest the video at {input} into workspace {workspace_id} as {format}.
slots:
input: requestBody.input
workspace_id: requestBody.workspace_id
format: requestBody.format
- text: Import {input} into {workspace_id} as {format}, titled {title}, using profile {profile_id}.
slots:
input: requestBody.input
workspace_id: requestBody.workspace_id
format: requestBody.format
title: requestBody.title
profile_id: requestBody.profile_id
method: generated
generated: '2026-10-01'
- target: $.paths['/video/assets/upload'].post
update:
x-apievangelist-phrasing:
intent: Upload a video file from my computer
effect: write
questions:
- Can I upload a video file directly from my local machine instead of a URL?
- Where do I get an upload URL for a local video file?
instructions:
- text: Create a direct upload for a local video file in workspace {collection_id}.
slots:
collection_id: requestBody.collection_id
- text: Prepare a direct file upload titled {title} into workspace {collection_id}.
slots:
title: requestBody.title
collection_id: requestBody.collection_id
method: generated
generated: '2026-10-01'
- target: $.paths['/video/assets/{asset_id}'].get
update:
x-apievangelist-phrasing:
intent: Get a video's details and status
effect: read
questions:
- Has my video finished processing yet?
- Where can I find the playback URL for a specific video?
instructions:
- text: Get details for video {asset_id}.
slots:
asset_id: path.asset_id
- text: Check the processing status of asset {asset_id}.
slots:
asset_id: path.asset_id
method: generated
generated: '2026-10-01'
- target: $.paths['/video/assets/{asset_id}'].delete
update:
x-apievangelist-phrasing:
intent: Delete a single video
effect: destructive
questions:
- What happens to a video's URLs once I delete it?
- Can I delete one specific video asset?
instructions:
- text: Delete video {asset_id}.
slots:
asset_id: path.asset_id
- text: Remove asset {asset_id} from storage.
slots:
asset_id: path.asset_id
method: generated
generated: '2026-10-01'
- target: $.paths['/video/assets/update'].post
update:
x-apievangelist-phrasing:
intent: Edit a video's title, tags or metadata
effect: write
questions:
- Can I change a video's title and description after uploading?
- Is there a way to reprocess a video or remove its subtitles?
instructions:
- text: Rename video {asset_id} to {title}.
slots:
asset_id: requestBody.asset_id
title: requestBody.title
- text: Set the description of video {asset_id} to {description}.
slots:
asset_id: requestBody.asset_id
description: requestBody.description
- text: Swap the source file of video {asset_id} to {input}.
slots:
asset_id: requestBody.asset_id
input: requestBody.input
method: generated
generated: '2026-10-01'
- target: $.paths['/video/assets/{asset_id}/thumbnail-select'].post
update:
x-apievangelist-phrasing:
intent: Use a video frame as its thumbnail
effect: write
questions:
- Can I pick a frame from the video to be its thumbnail?
- How do I set the poster image to a moment in the video?
instructions:
- text: Use the frame at {frame_at_second} seconds as the thumbnail for {asset_id}.
slots:
frame_at_second: requestBody.frame_at_second
asset_id: path.asset_id
- text: Set video {asset_id}'s thumbnail to second {frame_at_second}.
slots:
asset_id: path.asset_id
frame_at_second: requestBody.frame_at_second
method: generated
generated: '2026-10-01'
- target: $.paths['/video/assets/{asset_ID}/thumbnail'].post
update:
x-apievangelist-phrasing:
intent: Upload a custom thumbnail image
effect: write
questions:
- Can I upload my own image file as a video's thumbnail?
- Where do I get the upload URL for a custom poster image?
instructions:
- text: Get a thumbnail image upload URL for video {asset_ID}.
slots:
asset_ID: path.asset_ID
- text: Prepare a custom thumbnail upload for asset {asset_ID}.
slots:
asset_ID: path.asset_ID
method: generated
generated: '2026-10-01'
- target: $.paths['/video/assets/{asset_id}/chapters'].post
update:
x-apievangelist-phrasing:
intent: Set chapters on a video
effect: write
questions:
- Can I add chapter markers to a long video?
- How do I replace the chapters on a video?
instructions:
- text: Set the chapters of video {asset_id} to {chapters}.
slots:
asset_id: path.asset_id
chapters: requestBody.chapters
- text: Add chapters {chapters} to asset {asset_id}.
slots:
chapters: requestBody.chapters
asset_id: path.asset_id
method: generated
generated: '2026-10-01'
- target: $.paths['/video/workspaces/{workspace_id}/list'].get
update:
x-apievangelist-phrasing:
intent: Browse folders and videos in a workspace
effect: read
questions:
- Can I browse a workspace's folders and videos in one listing?
- Which videos in my workspace are longer than ten minutes?
- Can I filter videos by title, tag or upload date range?
instructions:
- text: List folders and videos in workspace {workspace_id}.
slots:
workspace_id: path.workspace_id
- text: Show the contents of folder {parent_id} in workspace {workspace_id}.
slots:
parent_id: query.parent_id
workspace_id: path.workspace_id
- text: Find videos titled {title} in workspace {workspace_id}.
slots:
title: query.title
workspace_id: path.workspace_id
method: generated
generated: '2026-10-01'
- target: $.paths['/video/assets/list/{workspace_id}'].get
update:
x-apievangelist-phrasing:
intent: List videos with the deprecated endpoint
effect: read
questions:
- Is the older deprecated asset list still available for my workspace?
- Can the legacy list endpoint filter by folder and status?
instructions:
- text: Use the legacy endpoint to list assets in workspace {workspace_id}.
slots:
workspace_id: path.workspace_id
- text: With the deprecated list, show {status} assets in folder {folder} of {workspace_id}.
slots:
status: query.status
folder: query.folder
workspace_id: path.workspace_id
method: generated
generated: '2026-10-01'
- target: $.paths['/video/assets/bulk/delete'].delete
update:
x-apievangelist-phrasing:
intent: Delete many videos at once
effect: destructive
questions:
- Can I delete a batch of videos in one go?
- Is there a bulk delete for VOD assets?
instructions:
- text: Bulk delete videos {asset_list} from workspace {source_id}.
slots:
asset_list: requestBody.asset_list
source_id: requestBody.source_id
- text: 'Delete all of these assets in {source_id}: {asset_list}.'
slots:
source_id: requestBody.source_id
asset_list: requestBody.asset_list
method: generated
generated: '2026-10-01'
- target: $.paths['/video/assets/bulk/tag'].post
update:
x-apievangelist-phrasing:
intent: Add or remove tags on many videos
effect: write
questions:
- Can I tag a whole batch of videos at once?
- How do I strip a tag from several videos together?
instructions:
- text: Add tags {add_tags} and remove {remove_tags} on videos {asset_list} in {source_id}.
slots:
add_tags: requestBody.add_tags
remove_tags: requestBody.remove_tags
asset_list: requestBody.asset_list
source_id: requestBody.source_id
- text: 'Bulk retag {asset_list} in workspace {source_id}: add {add_tags}, drop {remove_tags}.'
slots:
asset_list: requestBody.asset_list
source_id: requestBody.source_id
add_tags: requestBody.add_tags
remove_tags: requestBody.remove_tags
method: generated
generated: '2026-10-01'
- target: $.paths['/video/assets/{asset_id}/analytics'].post
update:
x-apievangelist-phrasing:
intent: Get analytics for one video
effect: read
questions:
- How many views did one particular video get last week?
- Can I see a single video's metrics grouped by day?
instructions:
- text: Get {metrics} for video {asset_id} over {date_range}, grouped by {group_by}.
slots:
metrics: requestBody.metrics
asset_id: path.asset_id
date_range: requestBody.date_range
group_by: requestBody.group_by
- text: Show per-video {metrics} for {asset_id} during {date_range} by {group_by}.
slots:
metrics: requestBody.metrics
asset_id: path.asset_id
date_range: requestBody.date_range
group_by: requestBody.group_by
method: generated
generated: '2026-10-01'