curl --request GET \
--url https://api.cloudglue.dev/v1/collections/{collection_id}/videos/{file_id} \
--header 'Authorization: Bearer <token>'{
"collection_id": "<string>",
"file_id": "<string>",
"object": "collection_file",
"added_at": 123,
"status": "pending",
"file": {
"id": "<string>",
"status": "pending",
"uri": "<string>",
"bytes": 123,
"created_at": 123,
"filename": "<string>",
"metadata": {},
"video_info": {
"duration_seconds": 123,
"height": 123,
"width": 123,
"format": "<string>",
"has_audio": true
},
"thumbnail_url": "<string>",
"source": "video"
},
"segmentation": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"status": "pending",
"file_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"segmentation_config": {
"strategy": "uniform",
"uniform_config": {
"window_seconds": 60.5,
"hop_seconds": 60.5
},
"shot_detector_config": {
"detector": "adaptive",
"threshold": 123,
"min_seconds": 60.5,
"max_seconds": 60.5
},
"manual_config": {
"segments": [
{
"start_time": 123,
"end_time": 123
}
]
},
"keyframe_config": {
"frames_per_segment": 4,
"max_width": 280
},
"start_time_seconds": 1,
"end_time_seconds": 1
}
}
}Retrieve information about a specific video file in a collection
curl --request GET \
--url https://api.cloudglue.dev/v1/collections/{collection_id}/videos/{file_id} \
--header 'Authorization: Bearer <token>'{
"collection_id": "<string>",
"file_id": "<string>",
"object": "collection_file",
"added_at": 123,
"status": "pending",
"file": {
"id": "<string>",
"status": "pending",
"uri": "<string>",
"bytes": 123,
"created_at": 123,
"filename": "<string>",
"metadata": {},
"video_info": {
"duration_seconds": 123,
"height": 123,
"width": 123,
"format": "<string>",
"has_audio": true
},
"thumbnail_url": "<string>",
"source": "video"
},
"segmentation": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"status": "pending",
"file_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"segmentation_config": {
"strategy": "uniform",
"uniform_config": {
"window_seconds": 60.5,
"hop_seconds": 60.5
},
"shot_detector_config": {
"detector": "adaptive",
"threshold": 123,
"min_seconds": 60.5,
"max_seconds": 60.5
},
"manual_config": {
"segments": [
{
"start_time": 123,
"end_time": 123
}
]
},
"keyframe_config": {
"frames_per_segment": 4,
"max_width": 280
},
"start_time_seconds": 1,
"end_time_seconds": 1
}
}
}Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
The ID of the collection
The ID of the file
File details within the collection
ID of the collection
ID of the file
Object type, always 'collection_file'
collection_file Unix timestamp of when the file was added to the collection
Overall processing status of the file in this collection
pending, processing, completed, failed, not_applicable The file object
Show child attributes
Unique identifier for the file
Processing status of the file
pending, processing, completed, failed, not_applicable Cloudglue URI for the file, to be used in other API calls
Size of the file in bytes, null if not available
Unix timestamp of when the file was created
Original filename
User-provided metadata about the file, null if none provided
Information about the video content
Show child attributes
Duration of the video in seconds, null if not available
Height of the video in pixels, null if not available
Width of the video in pixels, null if not available
Format of the video file, null if not available
Whether the video has audio, null if not available
URL of the thumbnail for the file
Source of the file
video, youtube, s3, dropbox, http, upload, google-drive, zoom, gong, recall Segmentation information for this file in the collection. Only present when the file has been segmented.
Show child attributes
Unique identifier for the segmentation
Status of the segmentation job
pending, processing, completed, failed, not_applicable ID of the file that was segmented
Configuration used for this segmentation
Show child attributes
Segmentation strategy - determines which config you must provide
uniform, shot-detector, manual 🎯 REQUIRED when strategy = 'uniform' - Configuration for uniform segmentation. Do NOT provide when using shot-detector strategy.
Show child attributes
The duration of each segment in seconds. Must be between 1 and 120 seconds.
1 <= x <= 120The offset between the start of new windows. This means there can be overlap between segments. If not provided, defaults to window_seconds. Must be between 1 and 120 seconds.
1 <= x <= 120🎯 REQUIRED when strategy = 'shot-detector' - Configuration for shot detection segmentation. Do NOT provide when using uniform strategy.
Show child attributes
The detector strategy to use:
• adaptive: Designed for dynamic footage with camera movement, panning, or action. Examples: sports broadcasts, drone footage, handheld documentaries, action movies, live events. • content: Optimized for controlled footage with clear visual transitions. Examples: studio interviews, corporate videos, educational content, product demos, scripted content.
adaptive, content Detection sensitivity threshold - lower values create more segments:
• content: Sensitivity to visual differences (default: 27.0). Lower values detect smaller changes in color/lighting. • adaptive: Does not support threshold parameter - uses internal adaptive algorithm.
The minimum length of a shot in seconds. Must be between 1 and 120 seconds.
1 <= x <= 120The maximum length of a shot in seconds. Must be between 1 and 120 seconds.
1 <= x <= 120🎯 REQUIRED when strategy = 'manual' - Configuration for manual segmentation. Do NOT provide when using uniform or shot-detector strategy.
Show child attributes
When provided, will be used to extract keyframes for the segmentation.
Show child attributes
The number of key frames to extract per segment
0 <= x <= 8The maximum width of the key frames in pixels
144 <= x <= 4320Optional: The start time of the video in seconds to start segmenting from
x >= 0Optional: The end time of the video in seconds to stop segmenting at
x >= 0