Execute an agent workflow on videos or generate AI content.
video_inputs as the canonical run input shape:
video_inputs[] entries map assets to a specific Video Input tile (agent_node_id)video_ids, node_render_ids, video_urlsvideo_ids, node_render_ids, video_urls) are shorthand for single-input runs.
Video Input tile, you can send top-level input arrays without specifying agent_node_id.
video_ids (from the Uploads API):
node_render_ids (from previous run outputs):
Video Input tiles, you must use video_inputs and provide an entry for each runnable input tile.
In that mode, do not also send top-level input arrays.
You can get each agent_node_id from GET /agent/[agent_id] or from the Mosaic editor’s API info panel for that tile.
| Field | Type | Required | Description |
|---|---|---|---|
video_inputs | object[] | Conditional | Canonical per-tile input mapping. Each entry must include agent_node_id plus at least one of video_ids, node_render_ids, video_urls, or mimir_assets. Required for multi-input runs. |
video_ids | string[] | Conditional | Top-level shorthand for single-input runs. Video UUIDs from the Uploads API (or existing workspace video assets). |
node_render_ids | string[] | Conditional | Top-level shorthand for single-input runs. Render IDs from prior run outputs (GET /agent_run/{run_id} -> outputs[].id) or run webhooks. |
video_urls | string[] | Conditional | Top-level shorthand for single-input runs. Video URLs to ingest (YouTube and signed URLs). |
mimir_assets | object[] | Conditional | Mimir assets to ingest. Each object has id (Mimir item UUID) and optional artifact (highres, proxy, or auto; defaults to highres). Requires a Mimir connection. |
callback_url | string | Optional webhook URL for status updates | |
update_params | object | Optional parameters to override node parameters in the agent workflow. Keys must be valid agent_node_id values from the runnable graph. | |
ignore_nodes | string[] | Optional list of agent_node_id values to bypass for this run. Mosaic removes each ignored node from the runtime graph and rewires incoming edges directly to its downstream nodes. |
video_inputs (not both in the same request).Video Input tiles, provide one video_inputs entry for each runnable input tile.node_render_ids are valid video inputs (top-level shorthand for single-input runs, or per-entry in video_inputs).mimir_assets can be combined with other input types in the same entry.video_ids come from the Uploads API.node_render_ids come from previous run outputs (GET /agent_run/{run_id} -> outputs[].id) or run webhooks.video_urls field supports two types of URLs:
YouTube URLs:
https://www.youtube.com/watch?v=VIDEO_ID)update_params field. This allows you to dynamically change behavior (like clip duration, prompt text, or number of clips) at runtime.
To find the correct parameters:
Agent node IDupdate_params value in your API request.
update_params validation behaviorupdate_params before creating the run:
agent_node_id keys return 400400update_paramsignore_nodes to skip one or more nodes for a single run without editing the saved agent template.
For each ignored node:
node_render_idsGET /agent_run/[run_id] (outputs[].id).
Single-input shorthand:
video_inputs form:
mimir_assets. This downloads the video from your Mimir instance, stores Mimir metadata (item ID, artifact type, connection details) as source_info on the video record, and makes it available for Premiere Pro linking in downstream tiles.
https://mimir.mjoll.no) and an API key generated from your Mimir user settings.mimir_assets entry schema| Field | Type | Required | Description |
|---|---|---|---|
id | string (UUID) | Yes | Mimir item ID. |
artifact | string | No | Which artifact variant to download (see table below). Defaults to highres. |
| Value | Behavior |
|---|---|
highres | Downloads the high-resolution source file. Default when artifact is omitted. Returns 400 if the item has no highres available. |
proxy | Downloads the lower-resolution proxy. Returns 400 if the item has no proxy available. |
auto | Prefers highres if available, falls back to proxy. Returns 400 only if neither is available. |
source_info so Premiere Pro exports can link back to the original asset in Mimir.
mimir_assets require an organization-scoped API key (mk_ prefix). If no Mimir connection is configured for your organization, the API returns a 400 error explaining how to set one up.videos.source_info.Rough Cut and/or Clips before style-heavy nodes.Reframe before Captions, Cinematic Captions, Motion Graphics, and Watermark so overlays are composed against final framing.update_params minimal and explicit (only send fields you want to override).outputs[].video_url from GET /agent_run/[run_id] and send that URL in media_urls to POST /social/post.
run_id is used to track the progress of your agent run.