Features
Video Document Parsing
Foundational APIs that transform unstructured video and audio into structured, queryable context.Describe
Get a comprehensive moment-by-moment description on a video, including
transcript, diarization, visual descriptions, audio desecriptions, sound,
on-screen text, and more. Perfect for getting every detail on a video.
Extract
Extract structured data from videos at scale, across modalities, using a
prompt or custom schema. Making videos easy to program against, query
against, and categorize in your application.
Segment
Split videos into meaningful parts with segmentation options like
intelligent shot detection, and narrative (chapters). Turning videos into
logical sequences.
Video Reasoning
Higher-level APIs that enable multimodal search, chat, and reasoning directly over video content.Search
Add semantic search over videos and segments with natural-language queries.
Enable this in your application with just a few lines of code.
Chat Completion
Add conversational AI that can query, compare, and reason across hundreds of
videos, complete with full citations, with just a few lines of code.
Responses API
Next-gen conversational API with streaming, entity-backed knowledge,
multi-turn support, and background processing.
Base URL
The base URL for all API endpoints is:Authentication
For authentication, it’s required to include an Authorization header. The header should contain Bearer cg-123456789, where cg-123456789 represents your API Key.Response codes
Cloudglue employs traditional HTTP response codes.
Refer to the Error Codes section for a detailed explanation of all potential API errors.
Rate limits and usage limits
The Cloudglue API has a rate limit to ensure the stability and reliability of the service. If you exceed it, you will receive a429; wait and retry with backoff.
Usage limits are account budgets, such as total stored file size or extract jobs per month. They are separate from your credit balance. When one is reached, the API returns a 403 whose body carries "code": "usage_limit_reached" and a message naming the limit: