Replaces the stored config with the editor defaults and returns them.
Authorization
bearerAuth An API key created under Settings > API & Webhooks. Keys start with sf_live_.
In: header
Path Parameters
Response Body
application/json
application/json
application/json
curl -X DELETE "https://example.com/videos/string/config"{ "data": { "captionsFontFamily": "TheBoldFont", "captionsFontWeight": "medium", "captionsPrimaryColor": "#39E508", "captionsFontSize": 72, "captionsVerticalPosition": 70, "captionsAnimation": "fadeInSlideUp", "captionsWordEffects": "bounceWord", "captionsSecondaryColor": "#ffffff", "captionsAccentColor": "#0000ff", "captionsTextStroke": 10, "captionsStrokeColor": "black", "captionsSecondaryStrokeColor": "#ffffff", "captionsAccentStrokeColor": "#0000ff", "layoutMode": "wrap", "captionsTextTransform": "uppercase" }}Replace the presentation timeline PUT
Replaces the whole scene timeline. Send a bare JSON array or wrap it as `{ "presentationScenes": [ ... ] }` (`{ "scenes": [ ... ] }` is accepted too). Every scene is validated against the end of the transcript, or the source duration when there is none: a scene outside that window is clamped, and one that ends at or before it starts is dropped. Scenes are stored sorted by `startMs`. A video with neither a transcript nor a known duration cannot place scene timings and is refused with `409` `warning-source-not-ready`. Only presentation videos have this timeline; anything else is `409` `wrong-video-type`.
Edit one scene PATCH
Edits a scene's content: `imagePrompt`, `animationPrompt`, `narration`, `voiceDescription` or `duration` (5 to 20 seconds, or 3 to 20 when clamped). Provide at least one. Every editable field is content, so the scene's rendered clip and the stitched video both become stale: `videoUrl` on the scene and `renderUrl` on the video are cleared. Regenerate the still with `POST /videos/{id}/scenes/{sceneId}/image` and re-render afterwards.