Metadata

Metadata

Video object

Returned by GET /v1/videos and GET /v1/videos/{video_id}.

FieldTypeDescription
idstringUnique video ID
filenamestringOriginal filename as uploaded
collection_idstringID of the collection this video belongs to
statusstringProcessing status: queued, pending, processing, done, or failed
progress_pctinteger | nullProcessing progress 0–100. Present only when status is queued, pending, or processing
duration_secsnumber | nullVideo duration in seconds. Populated after processing
widthinteger | nullVideo width in pixels
heightinteger | nullVideo height in pixels
fpsnumber | nullFrames per second
codecstring | nullVideo codec (e.g. h264)
mime_typestring | nullMIME type (e.g. video/mp4)
storage_bytesinteger | nullStorage used in bytes
thumbnail_urlstring | nullPresigned URL to a representative frame (valid ~1 hour). Present only when status is done
playback_urlstring | nullPresigned URL to stream the full video (valid ~1 hour). Present only on single-video GET
segments_countintegerNumber of indexed segments. Present only on single-video GET
created_atstringISO 8601 creation timestamp

Search segment object

Each element in a video’s segments array from POST /v1/search.

FieldTypeDescription
timestamp_startnumberSegment start in seconds
timestamp_endnumberSegment end in seconds
scorenumberRelevance score from 0 to 1
typestringWhich modality matched: "visual" or "transcript"
text_contentstring | nullTranscribed speech in this segment, if available
video_urlstring | nullPresigned URL to stream the full video at this timestamp (valid ~1 hour)
thumbnail_urlstring | nullPresigned URL to the matched frame image (valid ~1 hour)

Collection object

Returned by GET /v1/collections and GET /v1/collections/{collection_id}.

FieldTypeDescription
idstringUnique collection ID
namestringDisplay name — unique per account
video_countintegerNumber of videos in this collection
total_duration_secsnumberTotal video duration across all videos. Present only on single-collection GET
storage_bytesintegerTotal storage used by this collection. Present only on single-collection GET
created_atstringISO 8601 creation timestamp

Job object

Returned by GET /v1/jobs/{job_id}.

FieldTypeDescription
job_idstringUnique job ID
statusstringqueued, pending, processing, done, or failed
progress_pctintegerProcessing progress 0–100

Presigned URLs

video_url, thumbnail_url, and playback_url are presigned — they expire after approximately 1 hour. Re-fetch the relevant resource to get a fresh URL if yours has expired. Do not store these URLs long-term; store the video_id instead.