What is On-Demand Extract?
On-Demand Extract is Cloudglue’s powerful capability that transforms individual videos into structured, programmable data. Unlike Entity Collections which process multiple videos with consistent schemas, On-Demand Extract allows you to customize extraction parameters for each video, making it perfect for one-off analyses, exploratory data extraction, or videos with unique content structures. The Extract API uses a combination of natural language prompts and structured schemas to identify and extract the exact entities you need from your video content. With On-Demand Extract, you can define exactly what information you want to extract on a per-video basis. This flexibility is ideal when you’re refining your extraction approach, working with diverse video content, or when you need to quickly extract specific information without setting up a collection. For example, you might use On-Demand Extract to analyze a product demonstration video before deciding on a schema for your entire product catalog, or to extract unique information from a specific marketing video that doesn’t fit your standard extraction patterns. On-Demand Extract works directly with your files (video, audio, and images), and YouTube videos (though YouTube extraction only uses speech and metadata as input signals). You can choose between two extraction modes:- Video-level entities: Information that applies to the entire video as a whole
- Segment-level entities: Information tied to specific timestamps within the video
These modes are mutually exclusive - you must choose one or the other per
extraction job. Segment-level extraction is enabled by default.
Image files are extracted at the file level only (no segmentation) and are
billed at a flat 1 credit per request. Segment-level entities, transcript
mode, chapters, and shots are not available for images.
Transcript-Based Extraction
You can enable transcript-based extraction using theenable_transcript_mode flag. When enabled, entities are extracted from the spoken content only, skipping visual analysis entirely. Speaker information is preserved when available, so prompts and schemas can ask about who said what. Works for both uploaded files and YouTube videos.
Useful for:
- Speech-heavy content like podcasts and interviews
- Faster and more cost-effective extraction when visual analysis isn’t needed
- Audio files where only speech content matters
- Speaker-aware extraction (e.g. “list each speaker and the topics they covered”)
Metadata-Based Extraction
You can enable metadata-based extraction using theenable_metadata_mode flag. When enabled, entities are extracted from the file’s metadata document instead of the media content: the filename, file details (duration, resolution), any user-provided metadata, and the source metadata synced from data connectors (meeting titles, participants, recording dates, custom fields). The media itself is never analyzed, and for data-connector URLs it is never downloaded either — an existing file (including a metadata-only file) is used as-is, and a brand-new connector URL becomes a metadata-only file. Only a brand-new non-connector URL (e.g. a direct http upload) is still ingested normally before its metadata is read.
Metadata-based extraction is always file level (segment-level entities, segmentation, chapters, and shots are not available), is billed at a flat 1 credit per file, and is mutually exclusive with enable_transcript_mode. It also works on metadata-only files from metadata collections without triggering media ingestion, and can be set on an entities collection’s extract_config so every added file is extracted from its metadata.
Useful for:
- Extracting structured facts a connector already knows (participants, meeting dates, hosts, custom fields) without paying for media processing
- Building structured indexes over large metadata-only libraries where downloading media is unnecessary or impractical
- Normalizing messy user metadata and filenames into a consistent schema