List media assets
/api/media
Returns all media assets in the current workspace.
Response
Get a media asset
/api/media/:id
Returns a single media asset by ID, including its processing status and Video Knowledge revision IDs.
Delete a media asset
/api/media/:id
Permanently removes a media asset and all associated data: documents, vector entries, Video Knowledge revisions, evidence, jobs, and pending refinements.
Process media
/api/media/process
Starts background processing for a pending media asset. This triggers speech transcription, scene sampling, visual analysis, OCR, and Video Knowledge creation.
Get job status
/api/media/jobs/:id
Returns the current status and checkpoint of a Video Knowledge processing job.
Response
Approve or decline a refinement
/api/media/jobs/:id/approval
Approves or declines a pending background refinement job. Background refinements are created when a query requires more coverage than the per-query budget allows.
Request body
decision field must be either "approve" or "decline".
- approve: transitions the refinement to
queuedfor background processing. - decline: transitions it to
declinedwith reasonapproval-declined.
Response
Inspect a time range
/api/media/inspect
Extracts frames within a bounded time range for a specific media asset. This is used by the Video Knowledge Engine for bounded source inspections.
Stream media
/api/media/stream?uri=...
Streams media bytes for playback in the embedded player. The
uri query parameter must point to a stored media asset.Extract a single frame
/api/media/:id/frame?t=...
Extracts and returns a JPEG frame at the requested timestamp. Used for frame previews in chat citations.

