Videos
GET
/videos

Top-level videos in the workspace, newest activity first. Automation blueprints and clips are excluded: read blueprints on /automations and a video's clips on /videos/{id}/clips.

status collapses the two job documents into the one value a client actually polls on, in this precedence: failed if either job failed, then rendering, then processing, then ready (a render exists), otherwise draft.

The heavy content arrays never ride on a list. Ask for the video itself with ?include= to get them; an include passed here is ignored.

Authorization

bearerAuth
AuthorizationBearer <token>

An API key created under Settings > API & Webhooks. Keys start with sf_live_.

In: header

Query Parameters

limit?integer

Page size, 1 to 100.

Range1 <= value <= 100
Default50
offset?integer

Number of records to skip.

Range0 <= value
Default0
type?string

Filter by pipeline. faceless and ai are the two a brief can create; video is an uploaded source file.

Value in

  • "video"
  • "faceless"
  • "ai"
subType?string

Filter by variant, for example presentation, ugc or generic.

Lengthlength <= 40
status?string

Filter by lifecycle status.

Value in

  • "draft"
  • "processing"
  • "rendering"
  • "ready"
  • "failed"
q?string

Case-insensitive search on the title.

Lengthlength <= 100

Response Body

application/json

application/json

application/json

curl -X GET "https://example.com/videos"
{  "data": [    {      "id": "7bQxL2mF9dR4tK1sv",      "title": "Why founders burn out",      "type": "faceless",      "subType": "generic",      "isAutomation": false,      "parentVideoId": null,      "isClip": false,      "brief": {        "prompt": "Why founders burn out and what to do about it",        "scriptPrompt": null,        "description": "The three habits that quietly wreck a founder's week.",        "descriptionPrompt": null,        "inputMode": "idea",        "videoDuration": "short",        "language": "en",        "aspectRatio": "9:16",        "imageStyle": "mixed",        "customStyleText": null,        "voiceId": "Enceladus",        "voiceProvider": "gemini",        "showSubtitles": true,        "presentationTone": null,        "targetDuration": null,        "characterImageUrl": null,        "characterDescription": null      },      "mood": "inspiring",      "presentationMood": null,      "durationSeconds": 41.6,      "media": {        "sourceUrl": null,        "audioUrl": "https://cdn.shortfast.com/uploads/audio/7bQxL2mF9dR4tK1sv.mp3",        "captionsUrl": null,        "thumbnailUrl": "https://cdn.shortfast.com/uploads/thumbs/7bQxL2mF9dR4tK1sv.jpg",        "renderUrl": "https://cdn.shortfast.com/uploads/renders/7bQxL2mF9dR4tK1sv.mp4",        "bytes": 18446231      },      "process": {        "status": "COMPLETED",        "progress": 100,        "statusText": "Finishing up",        "queuedAt": "2026-08-06T09:12:44.000Z",        "startedAt": "2026-08-06T09:12:47.000Z",        "error": null      },      "render": {        "status": "COMPLETED",        "progress": 100,        "queuedAt": "2026-08-06T09:18:02.000Z",        "startedAt": "2026-08-06T09:18:05.000Z",        "error": null      },      "publish": null,      "createdAt": "2026-08-06T09:12:44.000Z",      "updatedAt": "2026-08-06T09:21:10.000Z"    }  ],  "paging": {    "limit": 50,    "offset": 0,    "total": 37  }}