Skip to main content

Media URLs, uploads and output files

The hosted renderer downloads the media referenced by your project. A URL that works in your signed-in browser may still fail when the render worker requests it without your cookies.

Source requirements​

  • Use an absolute public HTTP or HTTPS URL that returns the media file itself.
  • Keep the URL accessible until the queued render has finished. Short-lived signed source links can expire while a job waits.
  • Do not use a local file path, browser blob: URL, login page, or private-network address.
  • Do not embed credentials in a URL. The worker rejects private/internal addresses and unsafe URL forms.
  • Respect your plan's source size, duration, resolution and element limits. A small crop does not make an oversized original source exempt from input limits.

Validation checks the request structure and account limits. Download failures, actual media decoding, or source changes can still cause a later render failure.

Upload your own media​

Use Create upload with a server-side API key. The returned upload object describes the uploaded file; use its returned URL in the relevant element's src. Do not invent a CDN path from a filename.

The editor's media library provides a visual upload workflow. List and inspect your uploads through the API or dashboard before deleting assets used by active projects and templates.

Use Zvid's stock library​

Choose media returned by Zvid's stock search or by the editor's stock library. Use the render-ready source URL from the selected result, rather than a search result page or thumbnail when a full-resolution source is available. Confirm that the media is appropriate for your intended use.

Keep the selected source and its relevant metadata with your project. A library search can return different results over time; saving only the original search phrase is not enough to reproduce a composition.

Diagnose a source failure​

FailureCheck
Authentication required or link expiredReplace the source with a directly accessible media URL or upload it to Zvid
Private/unsafe host rejectedUse a public media host; localhost on your computer is not reachable as your local filesystem from the renderer
File too large or source too longCheck the source itself against the active plan limits, then reduce it or select another source
Invalid media or decoding failedVerify the response is a real supported media file rather than HTML or an error page
Wrong dimensions or cropCheck the original media size, crop and resize settings

Record the job ID and returned failure reason when requesting help. Never include an API key in a support message.

Completed output​

A completed job returns a media URL. The normal queue response has an object at result with url; a database-backed job response can return the URL as a string. See Render lifecycle for a helper that handles both.

Persist the job ID and output URL in your application. Download a copy to your own storage when your workflow requires independent retention. The API response does not promise a universal expiration or permanent retention period, and deleting a render can remove its stored output. Do not infer a retention guarantee from the current URL's shape.

Use webhooks or bounded polling to begin downstream processing only after the job has completed.