List Videos
GET /api/videos/my-videos - List all videos in a workspace.
GET /api/videos/my-videos
Query Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
workspaceId | string | ✅ | The workspace ID |
Example
curl "https://api.scalereach.ai/api/videos/my-videos?workspaceId=abc123" \
-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,
"createdAt": "2026-04-03T09:41:50.622Z"
}
]Query parameters
workspaceId is the only required parameter. Two optional filters narrow the list:
| Parameter | Type | Required | Description |
|---|---|---|---|
workspaceId | string | ✅ | The workspace whose videos you want. |
filter | string | No | processing returns videos that are still being worked on (pending, downloading, uploading, transcribing or analyzing). completed and failed return only videos in that exact status. Any other value is ignored and every video is returned. |
sourceType | string | No | upload returns only uploaded files. A platform name such as youtube returns only videos submitted from that platform. Unknown values are ignored. |
curl "https://api.scalereach.ai/api/videos/my-videos?workspaceId=abc123&filter=completed&sourceType=youtube" \
-H "Authorization: Bearer sr_live_YOUR_KEY"Response fields
The response is a JSON array, ordered with the newest video first. Each item has id, title, duration (seconds), thumbnailUrl, status, sourceType, sourceUrl, createdAt and expiresAt. The list does not include the transcript, so it stays small even for workspaces with many videos. Call Get Video when you need the transcript or language.
The array is empty ([]) when the workspace has no videos or when the filters match nothing. There is no pagination, so the whole matching set comes back in one response.
Errors
| Status | When it happens |
|---|---|
400 | The workspaceId query parameter is missing. |
401 | The API key is missing, invalid or expired. |
403 | You are not a member of that workspace. |
500 | The list could not be loaded. Retry the request. |
Finding your workspace ID
An API key belongs to one workspace. Call List Workspaces with the key and use the id of the single workspace it returns as workspaceId here.
Example: find videos that are still processing
import requests, os
headers = {"Authorization": f"Bearer {os.environ['SCALEREACH_API_KEY']}"}
base = "https://api.scalereach.ai/api"
workspace_id = requests.get(f"{base}/workspaces", headers=headers).json()[0]["id"]
busy = requests.get(
f"{base}/videos/my-videos",
params={"workspaceId": workspace_id, "filter": "processing"},
headers=headers,
).json()
for v in busy:
print(v["id"], v["status"], v["title"])