Creates a new directive that defines which Robots workflows should run against Mux assets, and under what resource conditions.
Human-readable directive name.
Mux asset lifecycle subject. Live streams are not supported.
Resources required by dependent workflow bindings.
Customer-chosen resource identifier, unique within resources. Binding inputs entries reference this handle.
A caption or audio track on the asset.
Match subtitle text tracks or audio tracks. Other text track types are not eligible.
How the resource is materialized. Defaults to an external source.
Wait for an externally produced resource to become ready.
Require the resource to be ready when the run starts.
Wait for the declared producer binding and its resource.
The reference_id of the workflow binding in this directive that produces the resource.
Generate subtitles from the asset audio.
Parameters for the generate_subtitles engine action.
BCP 47 language code for the generated subtitles (e.g. "en"). Defaults to "auto", which detects the language from the audio.
BCP 47 language code of the audio track to transcribe. When omitted, the first audio track on the asset is used.
Ingest a text subtitle track or audio track from a URL.
Parameters for the create_track engine action.
Publicly reachable URL of the track file to ingest.
BCP 47 language code of the track (e.g. "en").
The kind of track to create. "text" tracks are ingested as subtitles.
Generate the asset shot-detection output.
Parameters for the generate_shots engine action.
How shot images are derived. Defaults to "create_storyboards".
BCP 47 language code the track must match (e.g. "en"). When omitted, any language of the declared kind matches.
Customer-chosen resource identifier, unique within resources. Binding inputs entries reference this handle.
The asset's shot-detection output.
How the resource is materialized. Defaults to an external source.
Wait for an externally produced resource to become ready.
Require the resource to be ready when the run starts.
Wait for the declared producer binding and its resource.
The reference_id of the workflow binding in this directive that produces the resource.
Generate subtitles from the asset audio.
Parameters for the generate_subtitles engine action.
BCP 47 language code for the generated subtitles (e.g. "en"). Defaults to "auto", which detects the language from the audio.
BCP 47 language code of the audio track to transcribe. When omitted, the first audio track on the asset is used.
Ingest a text subtitle track or audio track from a URL.
Parameters for the create_track engine action.
Publicly reachable URL of the track file to ingest.
BCP 47 language code of the track (e.g. "en").
The kind of track to create. "text" tracks are ingested as subtitles.
Generate the asset shot-detection output.
Parameters for the generate_shots engine action.
How shot images are derived. Defaults to "create_storyboards".
Binding identifier, unique within the directive. Producer references point to this identifier.
Workflow identifier used by POST /robots/v1/jobs/analyze-structure.
Resource reference IDs that must become ready before dispatch.
Parameters for analyze-structure, excluding engine-supplied asset_id and source track_id where applicable.
BCP 47 language code of the caption source. An explicit language must match a ready source exactly, including case; for example, en does not match en-US. Translation target exclusion and track replacement instead compare base languages case-insensitively. When omitted, automatic selection applies. Uses the first ready subtitle in asset track order without English preference. Audio-only assets with one ready text track lacking subtitle metadata can use that legacy transcript.
BCP 47 language code for generated text. Auto-detected from available evidence when omitted.
Curated controls that restrict Analyze Structure execution or guide its generated metadata without exposing raw prompt editing. The scope start is inclusive, the end is exclusive, and returned timestamps remain absolute.
Optional media execution window. Results remain timestamped against the original media timeline.
Start of the execution window in seconds from the beginning of the media. When omitted, the window starts at the beginning.
End of the execution window in seconds from the beginning of the media. When omitted, the window extends to the end.
Intended audience used as best-effort guidance without changing the output schema.
Preferred brand or domain terms to use when supported by the source content.
Controlled vocabulary used as best-effort guidance for generated labels and concepts.
Optional customer-facing name for the taxonomy.
Controlled vocabulary values used as best-effort model guidance.
Canonical taxonomy value to prefer when supported by the source content.
Short explanation of when this value applies.
Accepted alternate names that should normalize to the canonical label.
When false, the model should prefer values from the taxonomy. When true, non-taxonomy values may be used when no taxonomy value applies.
Best-effort guidance that moves scene and chapter density together.
When true, writes the generated title to asset.meta.title after analysis. Defaults to false. Best-effort: a metadata-write failure does not fail the analysis. Check outputs.asset_updates.title for the outcome.
When true, replaces or creates the asset's chapters track after analysis. Defaults to false. Best-effort: a chapters-write failure does not fail the analysis. Check outputs.asset_updates.chapters for the outcome.
Binding identifier, unique within the directive. Producer references point to this identifier.
Workflow identifier used by POST /robots/v1/jobs/summarize.
Resource reference IDs that must become ready before dispatch.
Parameters for summarize, excluding engine-supplied asset_id and source track_id where applicable.
Tone for the generated summary. "neutral" for straightforward analysis, "playful" for witty and conversational, "professional" for executive-level reporting.
Curated output_steering controls for execution scope, summary style, audience, brand terminology, and tag taxonomy. Scope is enforced; other controls guide model behavior but do not guarantee exact output.
Optional execution window in seconds on the original asset timeline. Omit start_time to begin at the asset start and omit end_time to continue through the asset end. The summary and tags are generated only from media within this window.
Start of the execution window in seconds from the beginning of the media. When omitted, the window starts at the beginning.
End of the execution window in seconds from the beginning of the media. When omitted, the window extends to the end.
Controlled vocabulary for tag generation. This steers tags and may be deterministically filtered after generation. Supports up to 50 values and 2000 serialized characters.
Optional customer-facing name for the taxonomy, up to 100 characters.
Controlled vocabulary values for generated tags. Supports 1-50 values.
Canonical tag value to prefer in generated tags, up to 100 characters.
Short explanation of when this tag applies, up to 300 characters.
Accepted alternate names that should normalize to the canonical label. Up to 10 aliases, each up to 100 characters.
When false, generated tags are filtered to taxonomy labels and aliases. When true, unmatched tags may remain.
Best-effort style guidance for the generated title and description.
Intended audience used as best-effort model guidance. Does not change the output schema.
Preferred brand or domain terms to use when supported by the source content.
Maximum title length in words.
Maximum description length in words.
Maximum number of tags to include in the generated output. Defaults to 10.
BCP 47 language code of the caption source. An explicit language must match a ready source exactly, including case; for example, en does not match en-US. Translation target exclusion and track replacement instead compare base languages case-insensitively. When omitted, automatic selection applies. Uses the first ready subtitle in asset track order without English preference. Audio-only assets with one ready text track lacking subtitle metadata can use that legacy transcript.
BCP 47 language code for the generated summary output (e.g. "en", "fr", "ja"). Auto-detected from the transcript if omitted.
When true, the generated title is written to the Mux asset's metadata (asset.meta.title) once the summary completes. Best-effort: a metadata-write failure does not fail the summary.
Binding identifier, unique within the directive. Producer references point to this identifier.
Workflow identifier used by POST /robots/v1/jobs/moderate.
Resource reference IDs that must become ready before dispatch.
Parameters for moderate, excluding engine-supplied asset_id and source track_id where applicable.
Used only for audio-only transcript analysis; ignored for video assets. BCP 47 language code of the caption source. An explicit language must match a ready source exactly, including case; for example, en does not match en-US. Translation target exclusion and track replacement instead compare base languages case-insensitively. When omitted, automatic selection applies. Uses the first ready subtitle in asset track order without English preference. Audio-only assets with one ready text track lacking subtitle metadata can use that legacy transcript.
Score thresholds that determine whether content is flagged. When combined with sampling_interval or max_samples, the exceeds_threshold flag reflects whether any category's highest observed score exceeds its configured threshold. Defaults to {sexual: 0.7, violence: 0.8}.
Score threshold for sexual content. Content scoring above this value triggers exceeds_threshold.
Score threshold for violent content. Content scoring above this value triggers exceeds_threshold.
Interval, in seconds, between sampled thumbnails. Minimum 5 seconds. When max_samples is also set, the actual sampling density is the more restrictive of the two constraints.
Maximum number of thumbnails to sample. Acts as a cap — if sampling_interval produces fewer samples than this limit, the interval is respected; otherwise samples are evenly distributed with first and last frames pinned.
Curated controls that optionally restrict moderation to an asset time range.
Optional execution window in seconds on the original asset timeline. Omit start_time to begin at the asset start and omit end_time to continue through the asset end. Moderation is restricted to media within this window, while returned timestamps remain absolute asset timestamps.
Start of the execution window in seconds from the beginning of the media. When omitted, the window starts at the beginning.
End of the execution window in seconds from the beginning of the media. When omitted, the window extends to the end.
Optional action taken automatically when exceeds_threshold is true. When omitted, the job only reports scores and takes no action. Note: in a directive run that targets the same asset with other workflows, deleting playback IDs can break sibling workflows that need a playback ID.
Action to take when exceeds_threshold is true. "delete_playback_ids" deletes every playback ID on the asset, making it unplayable while preserving the underlying asset so it can be re-published or reviewed.
Binding identifier, unique within the directive. Producer references point to this identifier.
Workflow identifier used by POST /robots/v1/jobs/generate-chapters.
Resource reference IDs that must become ready before dispatch.
Parameters for generate-chapters, excluding engine-supplied asset_id and source track_id where applicable.
BCP 47 language code of the caption source. An explicit language must match a ready source exactly, including case; for example, en does not match en-US. Translation target exclusion and track replacement instead compare base languages case-insensitively. When omitted, automatic selection applies. Uses the first ready subtitle in asset track order without English preference. Audio-only assets with one ready text track lacking subtitle metadata can use that legacy transcript.
BCP 47 language code for the output chapter titles. Auto-detected from the transcript if omitted.
Curated output_steering controls for chapter style, granularity, audience, and brand terminology. These controls guide model behavior but do not guarantee exact output.
Best-effort style guidance for generated chapter titles.
Best-effort guidance for how coarse or fine chapter boundaries should be.
Intended audience used as best-effort model guidance. Does not change the output schema.
Preferred brand or domain terms to use when supported by the source content.
When true, the generated chapters are written back to the Mux asset as a chapters text track once the job completes, making them deliverable with the asset. Overwrites existing chapters: an asset holds a single chapters track, so any chapters track already on the asset is deleted and replaced — including one in a different language, and one you created yourself. Best-effort — a failed write does not fail the job — so check asset_updates.chapters in the job outputs for the outcome.
Binding identifier, unique within the directive. Producer references point to this identifier.
Workflow identifier used by POST /robots/v1/jobs/generate-contextual-text.
Resource reference IDs that must become ready before dispatch.
Parameters for generate-contextual-text, excluding engine-supplied asset_id and source track_id where applicable.
When true for a video asset, generate or reuse Mux shots and attach a bounded sample of shot frames as additional visual evidence. Video assets always include a storyboard; the transcript remains authoritative. Not supported for audio-only assets.
Curated controls that apply to every generated artifact in every variant. Scope bounds execution; the other fields are best-effort writing guidance. To vary voice or audience between variants, use variant instructions.
Optional execution window in seconds on the original asset timeline. Text is grounded only in transcript cues and visual context that overlap this window.
Start of the execution window in seconds from the beginning of the media. When omitted, the window starts at the beginning.
End of the execution window in seconds from the beginning of the media. When omitted, the window extends to the end.
The intended reader, used as best-effort guidance for framing, vocabulary, and assumed context.
Best-effort writing voice for every generated artifact in every variant. To give variants different voices, describe the voice in each variant's instructions instead.
Best-effort guidance for whether and how the text should invite the reader to engage further.
Preferred brand or domain terms to use exactly when the source supports them.
Named versions of the complete artifact set. Every variant produces every artifact. Supports 1-5 variants with unique keys.
A named version of the complete artifact set: every variant produces every artifact, so 2 variants and 2 artifacts produce 4 pieces of text. The key is an identifier only and does not steer generation; use instructions to give the variant an angle.
Customer-chosen lowercase snake_case identifier used to correlate requested and returned content.
Optional bounded guidance that gives this variant a deliberate angle, such as a voice, audience, or focus (for example, "Playful voice for a Gen Z audience"). Applies to every artifact in the variant. Omit it to request another independent take on the same brief.
The deliverables to create. Every variant produces each artifact. Supports 1-5 artifacts with unique keys.
One deliverable, such as a social post, blog post, or newsletter entry. Every variant produces each artifact. The channel sets conventions and a default cap, max_length sets the hard cap, and format controls Markdown.
Customer-chosen lowercase snake_case identifier used to correlate requested and returned content.
Optional guidance specific to this artifact, such as the deliverable to write. Applies in every variant.
Publishing channel whose conventions guide the result and set its default length: 300 words for generic and linkedin, 250 words for facebook and youtube, 100 words for tiktok, 1,500 characters for instagram, and 280 characters for x. generic has no platform conventions; its style follows the length cap, and a max_length above 600 words produces article-style writing such as a blog post or newsletter entry.
Hard output cap in characters or words. Defaults to the channel's cap. Text aims for about 90% of the cap regardless of the source's length, so set the length you want rather than relying on the default. x is always capped at 280 characters, even with a word cap.
Whether the text may use Markdown syntax. plain contains no Markdown.
BCP 47 language code of the caption source. An explicit language must match a ready source exactly, including case; for example, en does not match en-US. Translation target exclusion and track replacement instead compare base languages case-insensitively. When omitted, automatic selection applies. Uses the first ready subtitle in asset track order without English preference. Audio-only assets with one ready text track lacking subtitle metadata can use that legacy transcript.
BCP 47 language code for generated text. Defaults to the selected transcript track's language when available.
Binding identifier, unique within the directive. Producer references point to this identifier.
Workflow identifier used by POST /robots/v1/jobs/edit-captions.
Resource reference IDs that must become ready before dispatch.
Parameters for edit-captions, excluding engine-supplied asset_id and source track_id where applicable. The engine selects the first ready subtitle in asset track order, or the single ready legacy text transcript on an audio-only asset.
Optional LLM-driven profanity detection and censorship rules applied to the selected caption track.
How profanity is detected. Currently only llm is supported, which uses an LLM to identify profanity in cue text.
Replacement strategy for detected profanity: blank inserts bracketed underscores, remove drops the match, and mask replaces characters with question marks. Defaults to "blank".
Additional words or short phrases that should always be censored even if the model does not detect them.
Words or short phrases that should never be censored even if the model flags them.
Optional static word or phrase replacements applied directly to cue text.
Exact word or phrase to replace in cue text.
Replacement text to insert when a match is found.
When true, find is matched only with exact case. Defaults to false (case-insensitive matching), so "gonna" also matches "Gonna" and "GONNA".
Optional replacements for bracketed speaker labels at the start of caption cues. Values omit the surrounding square brackets, and matching spoken text is not changed.
Existing speaker label without the surrounding square brackets.
New speaker label without the surrounding square brackets.
Whether to upload the edited VTT back to the Mux asset as a text track. Defaults to true.
What to do with the source track. Defaults to replace: the source is deleted and the edited track takes its place under the same name, language and closed-captions setting; no other track is touched, and the source is restored if the edited track can't be added. fail deletes nothing and adds the edited track alongside the source, so it requires a track_name different from the source's. Either way the request is rejected if a track other than the source already has the edited track's name. replace requires upload_to_mux to be true.
Name for the edited Mux text track. Defaults to the source track's name. Required and must differ from the source's name when replace_existing_tracks is fail. Mux requires text track names to be unique on an asset.
Binding identifier, unique within the directive. Producer references point to this identifier.
Workflow identifier used by POST /robots/v1/jobs/translate-captions.
Resource reference IDs that must become ready before dispatch.
Parameters for translate-captions, excluding engine-supplied asset_id and source track_id where applicable. The engine selects the first eligible ready subtitle in asset track order, or the single ready legacy text transcript on an audio-only asset, whose language differs from output_language_code. Target-language comparison ignores case and region subtags, matching the track replacement rules.
Name for the translated Mux text track. Defaults to "{Language} (Auto-translated)", e.g. "Spanish (Auto-translated)". Mux requires text track names to be unique on an asset, and an existing track with this name is handled according to replace_existing_tracks.
Whether to upload the translated VTT and attach it as a text track on the Mux asset. Defaults to true.
Best-effort list of terms (brand names, proper nouns) to preserve verbatim in the translated captions. Does not guarantee exact output. Terms must not contain '<' or '>', invisible characters, or characters altered by Unicode normalization.
What to do when the asset already has a text track in the same language as, or with the same name as, the translated track. Defaults to fail, which rejects the request before any translation is billed. replace_all deletes every such track first. replace_generated deletes only Mux Video auto-generated tracks and rejects if an uploaded track is in the way. Any value other than fail requires upload_to_mux to be true. Existing tracks are matched by language ignoring region subtags, and by name ignoring case, in any status.
BCP 47 language code for the translated output (e.g. "es", "ja"). Unless replace_existing_tracks allows replacement, the asset must not already have a text track for this language.
Binding identifier, unique within the directive. Producer references point to this identifier.
Workflow identifier used by POST /robots/v1/jobs/translate-audio.
Resource reference IDs that must become ready before dispatch.
Parameters for translate-audio, excluding engine-supplied asset_id and source track_id where applicable.
Name for the dubbed Mux audio track. Defaults to "{Language} (Auto-dubbed)", e.g. "Spanish (Auto-dubbed)". Mux requires audio track names to be unique on an asset, and an existing track with this name is handled according to replace_existing_tracks.
Whether to automatically upload the translated audio track to the Mux asset. Defaults to true. Must be false for audio-only assets; the job returns downloadable audio instead.
What to do when the asset already has an audio track in the same language as, or with the same name as, the new dubbed track. Defaults to fail, which rejects the request before any dubbing is billed. replace_all deletes every such track first. Audio tracks are never auto-generated by Mux Video, so replace_generated behaves as fail here. The asset's primary audio track is never deleted. Any value other than fail requires upload_to_mux to be true. Existing tracks are matched by language ignoring region subtags, and by name ignoring case, in any status.
BCP 47 language code for the target translation language (e.g. "es", "fr", "ja").
Binding identifier, unique within the directive. Producer references point to this identifier.
Workflow identifier used by POST /robots/v1/jobs/ask-questions.
Resource reference IDs that must become ready before dispatch.
Parameters for ask-questions, excluding engine-supplied asset_id and source track_id where applicable.
One or more questions to ask about the video, up to 50. Each question can either select from answer_options (defaults to yes/no) or, by setting free_form_reply: true, receive a free-form prose answer.
The question to ask about the video content. Maximum 600 characters.
Allowed answer values for this question. Defaults to ["yes", "no"] when omitted and free_form_reply is not true. Mutually exclusive with free_form_reply. Each option is a short label of at most 150 characters.
When true, the model replies with free-form prose instead of selecting from answer_options. Mutually exclusive with answer_options. Treat the answer as untrusted model output.
BCP 47 language code of the caption source. An explicit language must match a ready source exactly, including case; for example, en does not match en-US. Translation target exclusion and track replacement instead compare base languages case-insensitively. When omitted, automatic selection applies. Uses the first ready subtitle in asset track order without English preference. Audio-only assets with one ready text track lacking subtitle metadata can use that legacy transcript.
Max character length for free-form answers, between 1 and 1000. Ignored unless at least one question sets free_form_reply: true.
Curated controls that optionally restrict question answering to an asset time range.
Optional execution window in seconds on the original asset timeline. Omit start_time to begin at the asset start and omit end_time to continue through the asset end. Answers are generated only from media within this window, while returned timestamps remain absolute asset timestamps.
Start of the execution window in seconds from the beginning of the media. When omitted, the window starts at the beginning.
End of the execution window in seconds from the beginning of the media. When omitted, the window extends to the end.
Binding identifier, unique within the directive. Producer references point to this identifier.
Workflow identifier used by POST /robots/v1/jobs/find-key-moments.
Resource reference IDs that must become ready before dispatch.
Parameters for find-key-moments, excluding engine-supplied asset_id and source track_id where applicable.
Maximum number of key moments to extract. When omitted, defaults to 10 for assets up to one hour and 25 for longer assets.
Controls whether video assets are analyzed using Mux shots. When true, shots are generated or reused and visual evidence drives selection. When false or omitted, selection uses transcript evidence and the asset must have a caption track. Not supported for audio-only assets.
Curated output_steering controls for execution scope, selection strategy, title style, audience, taxonomy, and rubric tie-breakers. Scope is enforced; other controls guide model behavior but do not guarantee exact output.
Optional execution window in seconds on the original asset timeline. Omit start_time to begin at the asset start and omit end_time to continue through the asset end. Returned moment timestamps remain absolute asset timestamps.
Start of the execution window in seconds from the beginning of the media. When omitted, the window starts at the beginning.
End of the execution window in seconds from the beginning of the media. When omitted, the window extends to the end.
Best-effort guidance for what qualifies as a strong standalone key moment.
Best-effort title style guidance for generated moment titles.
Intended audience used as best-effort model guidance. Does not change the output schema.
Preferred brand or domain terms to use when supported by the source content.
Controlled vocabulary used to steer notable audible concepts without changing the response schema.
Optional customer-facing name for the taxonomy.
Controlled vocabulary values used as best-effort model guidance.
Canonical taxonomy value to prefer when supported by the source content.
Short explanation of when this value applies.
Accepted alternate names that should normalize to the canonical label.
When false, the model should prefer values from the taxonomy. When true, non-taxonomy values may be used when no taxonomy value applies.
Rubric dimensions to use as tie-breakers after applying selection strategy. Best-effort guidance only.
Preferred highlight duration range in seconds. Best-effort guidance, with millisecond precision.
Preferred minimum highlight duration in seconds, with millisecond precision.
Preferred maximum highlight duration in seconds, with millisecond precision.
Binding identifier, unique within the directive. Producer references point to this identifier.
Workflow identifier used by POST /robots/v1/jobs/generate-engagement-insights.
Resource reference IDs that must become ready before dispatch.
Parameters for generate-engagement-insights, excluding engine-supplied asset_id and source track_id where applicable.
Binding identifier, unique within the directive. Producer references point to this identifier.
Workflow identifier used by POST /robots/v1/jobs/generate-premium-captions.
Resource reference IDs that must become ready before dispatch.
Parameters for generate-premium-captions, excluding engine-supplied asset_id and source track_id where applicable.
BCP 47 language code of the audio (e.g. "en", "es"). A best-effort hint that biases transcription toward this language — it is not verified against the audio and does not guarantee the output language. When supplied, language detection is skipped and the captions are labeled with this code. The language will be auto-detected when omitted; existing tracks are then checked against replace_existing_tracks after transcription, so a same-language conflict errors the job at track creation instead of being rejected up front, and a deleting policy only applies when the detection is confident.
What to do when the asset already has a text track in the same language as, or with the same name as, the new caption track. Defaults to fail, which rejects the request before any work is billed. replace_all deletes every such track first. replace_generated deletes only Mux Video auto-generated tracks and rejects if an uploaded track is in the way. Existing tracks are matched by language ignoring region subtags, and by name ignoring case, in any status. When language_code is omitted the detected language is used, and tracks are only deleted when the detection is confident; otherwise the job behaves as fail.
Custom name for the uploaded Mux text track. Defaults to "{Language} (Generated)", e.g. "English (Generated)". Mux requires text track names to be unique on an asset.
When true, speaker labels are identified and added to each caption cue. Useful for interviews, podcasts, and multi-speaker content.
When true, word-level timestamps are exported as a JSON file accessible via temporary_words_url in the job outputs. The URL expires 7 days after the job completes. Billed at a higher unit rate.
Whether to upload the generated SRT to the Mux asset as a new text track. Defaults to true. When false, no track is created and replace_existing_tracks must be fail; the generated SRT remains available via temporary_srt_url.
Best-effort list of words or short phrases (proper nouns, product names, jargon) likely to appear in the audio, used to bias recognition toward correct spellings. Does not guarantee exact output. Each phrase may contain at most 49 characters and 5 words, and must not contain the characters <, >, {, }, [, ], or .
Binding identifier, unique within the directive. Producer references point to this identifier.
Workflow identifier used by POST /robots/v1/jobs/find-best-thumbnails.
Resource reference IDs that must become ready before dispatch.
Parameters for find-best-thumbnails, excluding engine-supplied asset_id and source track_id where applicable.
Maximum number of candidate thumbnails to return (1-5). Defaults to 5.
Curated output_steering controls for execution scope, thumbnail scoring strategy, explicit user intent, audience, campaign style, and scoring priorities. Scope is enforced; other controls guide model behavior but do not guarantee exact output.
Optional sampling window in seconds on the original asset timeline, normalized inward to whole-millisecond half-open bounds. The range must contain a video frame at the asset frame rate. Omit start_time to begin at the asset start and omit end_time to continue through the asset end. Returned thumbnail timestamps remain absolute asset timestamps.
Start of the execution window in seconds from the beginning of the media. When omitted, the window starts at the beginning.
End of the execution window in seconds from the beginning of the media. When omitted, the window extends to the end.
Best-effort guidance for what kind of thumbnail candidate should score highest.
Open-ended description of what the user is explicitly looking for in candidate thumbnails. Best-effort guidance only.
Intended audience used as best-effort scoring guidance. Does not change the output schema.
Short description of the campaign/channel thumbnail style to prefer when supported by the frame.
Rubric criteria to emphasize in close calls. Best-effort guidance only.
When true, the highest-scoring thumbnail's timestamp is written to the Mux asset's thumbnail_time once the job completes, making that frame the asset's default poster image. The new thumbnail will appear for some clients sooner than others, depending on local cache settings.
{
"name": "Moderate new assets",
"subject": {
"type": "video.asset"
},
"bindings": [
{
"reference_id": "moderation",
"workflow": "moderate",
"parameters": {
"on_flagged": {
"action": "delete_playback_ids"
}
}
}
]
}