Videos
PATCH
/videos/{id}

Edits the parts of the brief that still mean something once a video exists: title, aspectRatio, showSubtitles, description, descriptionPrompt, scriptPrompt, prompt, subType, targetDuration, characterImageUrl and characterDescription, plus the generation choices voiceId, voiceProvider, videoDuration, imageStyle, connectedBRolls, animateBRolls, animationQuality, bRollPace, backgroundMusic, bRollTransitions and presenter.

scriptPrompt is what the script writer is briefed with on every later variation, so re-briefing an automation is a PATCH here and does not cost a generation the way POST /videos/{id}/script does. The generation choices work the same way: every video made from this one is generated with them, which is how an automation is reconfigured.

Any other brief field is generation-time only and is refused with a 400 naming it, rather than silently dropped. Editing does not requeue anything: run POST /videos/{id}/process or POST /videos/{id}/render afterwards if the change should be applied.

Authorization

bearerAuth
AuthorizationBearer <token>

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

In: header

Path Parameters

id*string

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

The brief fields that can still be changed once a video exists. Any other brief field is refused with a 400 naming it, rather than silently dropped. Fields may be sent flat or nested under brief.

Response Body

application/json

application/json

application/json

application/json

curl -X PATCH "https://example.com/videos/string" \  -H "Content-Type: application/json" \  -d '{    "title": "Why founders burn out (v2)",    "showSubtitles": false  }'
{  "data": {    "id": "string",    "title": "string",    "type": "faceless",    "subType": "string",    "isAutomation": true,    "parentVideoId": "string",    "isClip": true,    "brief": {      "prompt": "string",      "text": "string",      "scriptPrompt": "string",      "description": "string",      "descriptionPrompt": "string",      "inputMode": "auto",      "videoDuration": "subminute",      "language": "string",      "aspectRatio": "9:16",      "imageStyle": "auto",      "styleAuto": true,      "connectedBRolls": true,      "animateBRolls": true,      "animationQuality": "normal",      "bRollPace": "fast",      "backgroundMusic": true,      "bRollTransitions": true,      "customStyleText": "string",      "voiceId": "string",      "voiceProvider": "openai",      "showSubtitles": true,      "presentationTone": null,      "presentationAssets": [],      "presenter": {        "imageUrl": "http://example.com",        "avatarId": "string",        "name": "string",        "placement": "first",        "occurrences": 1      },      "targetDuration": 0,      "characterImageUrl": "http://example.com",      "characterDescription": "string"    },    "mood": "energetic",    "presentationMood": null,    "durationSeconds": 0,    "media": {      "sourceUrl": "http://example.com",      "audioUrl": "http://example.com",      "captionsUrl": "http://example.com",      "thumbnailUrl": "http://example.com",      "renderUrl": "http://example.com",      "bytes": 0    },    "process": {      "status": "QUEUED",      "progress": 0,      "statusText": "string",      "queuedAt": "2019-08-24T14:15:22Z",      "startedAt": "2019-08-24T14:15:22Z",      "error": {        "code": "string",        "message": "string",        "blocked": true,        "action": "upgrade",        "reference": "string",        "retryAt": "2019-08-24T14:15:22Z",        "platform": "string"      }    },    "render": {      "status": "QUEUED",      "progress": 0,      "queuedAt": "2019-08-24T14:15:22Z",      "startedAt": "2019-08-24T14:15:22Z",      "error": {        "code": "string",        "message": "string",        "blocked": true,        "action": "upgrade",        "reference": "string",        "retryAt": "2019-08-24T14:15:22Z",        "platform": "string"      }    },    "publish": {      "status": "SCHEDULED",      "scheduledAt": "2019-08-24T14:15:22Z",      "startedAt": "2019-08-24T14:15:22Z",      "publishedAt": "2019-08-24T14:15:22Z",      "failedAt": "2019-08-24T14:15:22Z",      "platforms": [        "string"      ],      "missingPlatforms": [        "string"      ],      "unhealthyPlatforms": [        "string"      ],      "caption": "string",      "error": {        "code": "string",        "message": "string",        "blocked": true,        "action": "upgrade",        "reference": "string",        "retryAt": "2019-08-24T14:15:22Z",        "platform": "string"      },      "stats": {        "checkedAt": "2019-08-24T14:15:22Z",        "updatedAt": "2019-08-24T14:15:22Z",        "available": true,        "totals": {          "views": 0,          "likes": 0,          "comments": 0,          "shares": 0        },        "platforms": [          {            "views": 0,            "likes": 0,            "comments": 0,            "shares": 0,            "platform": "string",            "status": "published",            "url": "string",            "error": "string"          }        ]      }    },    "createdAt": "2019-08-24T14:15:22Z",    "updatedAt": "2019-08-24T14:15:22Z",    "config": {      "captionsFontFamily": "string",      "captionsFontWeight": "string",      "captionsAnimation": "fadeInSlideUp",      "captionsWordEffects": "",      "captionsTextTransform": "none",      "layoutMode": "wrap",      "captionsPrimaryColor": "string",      "captionsSecondaryColor": "string",      "captionsAccentColor": "string",      "captionsStrokeColor": "string",      "captionsSecondaryStrokeColor": "string",      "captionsAccentStrokeColor": "string",      "captionsShadowColor": "string",      "captionsFirstWordColor": "string",      "captionsHighlightBackground": "string",      "captionsFontSize": 20,      "captionsVerticalPosition": 0,      "captionsTextStroke": 0,      "captionsActiveWordStroke": 0,      "captionsLetterSpacing": -5    },    "captions": [      {        "id": "string",        "startMs": 0,        "endMs": 0,        "text": "string",        "punctuated_word": "string",        "confidence": 0      }    ],    "captionsPages": [      {        "id": "string",        "startMs": 0,        "endMs": 0,        "hidden": true,        "emoji": {},        "audioEffect": {}      }    ],    "bRolls": [      {        "id": "string",        "startMs": 0,        "endMs": 0,        "text": "string",        "prompt": "string",        "keywords": "string",        "mediaType": "ai_image",        "url": "http://example.com",        "type": "string",        "qualityUrls": {},        "posterUrl": "http://example.com",        "sourceWidth": 0,        "sourceHeight": 0,        "stockQuery": "string",        "credit": {          "source": "string",          "author": "string",          "license": "string",          "url": "http://example.com"        },        "animation": "string",        "transition": "string",        "layout": "string",        "scale": 0,        "hidden": true,        "audioEffect": {},        "presenter": {          "imageUrl": "http://example.com",          "avatarId": "string",          "name": "string",          "bytes": 0,          "generatedAt": "2019-08-24T14:15:22Z"        }      }    ],    "presentationScenes": [],    "scenes": [      {        "imagePrompt": "string",        "animationPrompt": "string",        "narration": "string",        "voiceDescription": "string",        "duration": 3,        "id": "string",        "status": "string",        "imageUrl": "http://example.com",        "videoUrl": "http://example.com"      }    ]  }}