video.export
Follow one video export to completion and return its download links. Start the export with video.export_create, then pass the job_id it returned (without job_id this follows the project's newest export). Polls the durable job row every 3s through queued -> processing -> uploading -> completed. On completion it returns download_path (for a session signed in to this workspace) and, when signed links are enabled, download_url (plus captions_url when there is an SRT): a link valid for 24 hours that needs no session; call again with the job_id for a fresh one. While signed links are held off, download_url_unavailable says why. Pricing: free (rendering runs on platform compute, no provider cost), charged by video.export_create, never here. STREAMING SUPPORTED: send Accept: text/event-stream for per-phase progress events. A job waiting for a free renderer reports "Queued (position N)". The files are kept 30 days after the export finishes (files_kept_until), then deleted automatically. Refuses: no such job (SIMPLER_STUDIO_EXPORT_NO_JOB): start one with video.export_create {project_id}; a failed job (SIMPLER_STUDIO_EXPORT_FAILED names the reason): fix it and create a new export; a cancelled job (SIMPLER_STUDIO_EXPORT_CANCELLED): create a new export; deleted files (SIMPLER_STUDIO_EXPORT_OUTPUT_GONE) or files past the 30 days (SIMPLER_STUDIO_EXPORT_EXPIRED, "expired; export again"): render again with video.export_create.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| job_id | No | The export job (vx_...) video.export_create returned. Omit it to follow the project's newest export. | |
| project_id | Yes | The studio project (vp_...) the export belongs to. |