REST API ReferenceEndpointsFiles

Disable public preview

Disable public preview for a file. Removes the permanent public URL copy and revokes unauthenticated embed streaming access. Authenticated signed URLs remain functional. Returns the updated file.

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

File with public preview disabled
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
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.
transcriptstring or null
Transcript text for video and audio files, when available. Null for images or when no transcript has been generated.
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).