REST API ReferenceEndpointsFiles

Archive file

Archive a file by setting its archived timestamp. Archived files are excluded from list results. Returns the updated file object.

Authentication

AuthorizationBearer
API key from [app.videogen.io/developers](https://app.videogen.io/developers). The full key is only shown once when you create it.

Path parameters

fileIdstringRequired

The file id (e.g. vg_file_...).

Response

Archived file
fileIdstring

File id (e.g. vg_file_...).

scopeenum

File scope.

  • GLOBAL: user-uploaded or standalone generated files that persist indefinitely.
  • PROJECT: project-specific files (e.g. text-to-speech clips in a generated project).
  • EXPORT: project exports.
  • TEMPORARY: short-lived files guaranteed to be available for 24 hours, after which they may be archived at any time. Not analyzed (no description, transcript, or embedding).
  • ENTITY: files attached to a reusable entity (e.g. a voice sample for an actor), shared across your team.
typeenum or null
File type. Null when the file is still being processed and the type has not yet been determined.
displayNamestring
Display name for the file.
descriptionstring or null
durationSecondsdouble or null
Duration in seconds for video and audio files. Null for images.
transcriptobject or null

Timed transcript for video and audio files, when available, as a Transcript object with timed words. Null for images or when no transcript has been generated. For plain transcript text, use transcriptText.

transcriptTextstring or null
Plain transcript text for video and audio files, when available. Null for images or when no transcript has been generated.
downloadUrlstring or nullformat: "uri"

Private signed URL for the highest-quality downloadable rendition, provided at the top level for convenience. Valid for 24 hours from when it was signed. null when the rendition is still processing or the URL has not been signed yet. See downloadUrlExpiresAt for the exact expiry and downloadSource for the full rendition metadata; call POST /v1/files/{fileId}/hydrate to refresh it.

downloadUrlExpiresAtinteger or null

Seconds since epoch (Unix timestamp) when downloadUrl expires. null when downloadUrl is null.

thumbnailUrlstring or nullformat: "uri"

Private signed URL for the thumbnail rendition, provided at the top level for convenience. Valid for 24 hours from when it was signed. null for file types that have no thumbnail (e.g. audio) or when it has not been signed yet. See thumbnailSource for the full rendition metadata.

thumbnailUrlExpiresAtinteger or null

Seconds since epoch (Unix timestamp) when thumbnailUrl expires. null when thumbnailUrl is null.

thumbnailSourceobject or null
Thumbnail image source. Populated after hydration.
previewSourceobject or null

Preview rendition source (720p for video, resized for images). Populated after hydration.

downloadSourceobject or null

Highest-quality downloadable rendition. Populated after hydration.

hlsSourceobject or null

Private HLS streaming source. Populated for video and audio files once streaming renditions are ready. Uses a signed token; treat like other signed sources.

isPublicPreviewEnabledboolean

Whether public preview is enabled for this file. When true, staticPublicPreviewSource is populated for all file types. For video and audio, publicHlsUrl and publicPlaybackId are also populated once embed streaming is ready.

staticPublicPreviewSourceobject or null

Permanent public URL for the file’s highest-quality rendition. Populated when isPublicPreviewEnabled is true. Does not expire (expiresAt is null). Use for direct links to images, downloads, or any file type. For embedded video or audio players, prefer publicPlaybackId.

publicHlsUrlstring or null

Public HLS streaming URL for video and audio. Only present when isPublicPreviewEnabled is true and embed streaming is ready. Prefer publicPlaybackId with @videogen/player for embeds.

publicPlaybackIdstring or null

Encoded public playback id (e.g. vg_play_...) for video and audio embeds. Pass this to @videogen/player or @videogen/player-react. Only present when isPublicPreviewEnabled is true and embed streaming is ready. For a permanent direct file URL (any type), use staticPublicPreviewSource instead.

sourceToolTypestring

Tool type that generated this file (e.g. GENERATE_IMAGE, TEXT_TO_SPEECH). Only present when the file was created by a tool execution.

sourceToolExecutionIdstring

Execution id of the tool call that generated this file (e.g. vg_tool_...). Only present when the file was created by a tool execution.

fileAnalysisMetadataobject

Background analysis state for the file (used to populate description, transcript, durationSeconds, and the search embedding). Omitted when the file was returned via a path that does not check analysis progress (e.g. tool-result inline files and webhook payloads).