Videos
Get Video
GET /api/videos/:id - Get full details of a specific video.
GET /api/videos/{id}
Path Parameters
| Parameter | Type | Description |
|---|---|---|
id | string | The video ID |
Example
curl https://api.scalereach.ai/api/videos/UThwmCZb75JYZi4UP9rOX \
-H "Authorization: Bearer sr_live_YOUR_KEY"Response 200
{
"id": "UThwmCZb75JYZi4UP9rOX",
"title": "How Steve Jobs saved Apple from BANKRUPTCY?",
"status": "completed",
"sourceType": "youtube",
"sourceUrl": "https://www.youtube.com/watch?v=wVXAFlueS9Y",
"duration": 1950,
"transcript": "The year is 1997 and Apple is dying...",
"transcriptLanguage": "en",
"workspaceId": "znrje9lkcidmmaiziti",
"createdAt": "2026-04-03T09:41:50.622Z"
}Response fields
| Field | Type | Description |
|---|---|---|
id | string | Unique video ID. Use it in every other video and clip endpoint. |
title | string | The video title. |
status | string | Where the video is in the pipeline. See the status list below. |
sourceType | string | upload for files you uploaded, or the platform name, such as youtube, for links. |
sourceUrl | string | The original link. Empty for uploaded files. |
duration | number | Length of the source video in seconds. |
transcript | string | Full transcript, once transcription has finished. |
transcriptLanguage | string | Detected language code, for example en. |
workspaceId | string | The workspace the video belongs to. |
createdAt | string | ISO 8601 timestamp of when the video was submitted. |
The status values, in order, are downloading, uploading, transcribing, analyzing, generating_clips, completed, and failed. If you only need the status and progress, call Get Video Status instead, because it also returns the processing job's progress percentage.
Errors
| Status | When it happens |
|---|---|
401 | The Authorization header is missing, or the API key is invalid or expired. |
403 | The video belongs to a workspace you are not a member of. |
404 | No video exists with that ID. |
500 | The video could not be loaded. Retry the request, and contact support if it keeps failing. |
Getting the clips for a video
This endpoint returns the video itself, not its clips. Once status is completed, fetch the clips with GET /api/videos/{id}/clips, then call Get Clip for the signed download link of any single clip.
Example in Python
import requests
video_id = "UThwmCZb75JYZi4UP9rOX"
r = requests.get(
f"https://api.scalereach.ai/api/videos/{video_id}",
headers={"Authorization": "Bearer sr_live_YOUR_KEY"},
)
r.raise_for_status()
video = r.json()
print(video["title"], video["status"], f'{video["duration"] // 60} min')