What You’ll Learn
Replace Backgrounds
Swap scene background images or videos with your own media
Update Text
Modify scene text and title content
Change Music
Replace background music with a different track
Render Updates
Render the final video with all your modifications
Before You Begin
Make sure you have:- A Pictory API key (get one here)
- Node.js or Python installed on your machine
- A completed storyboard preview job (see Create Storyboard Preview)
Workflow Overview
The update workflow fits between creating a storyboard preview and rendering the final video:You can only update existing elements — no new elements can be added. Each element is identified by a unique
id from the preview response.Step-by-Step Guide
Step 1: Create a Storyboard Preview
First, create a storyboard preview to generate the elements you will modify:Step 2: Poll for Completion and Review Elements
Wait for the preview job to complete and review therenderParams.elements array to identify elements you want to update:
Step 3: Update Elements
Now update the elements you want to modify. You can update one or many elements in a single request.Replace a Background Visual
Update Scene Text
Scene text elements support<strong> tags for keyword highlighting. The highlighted words will be rendered using the element’s keywordColor.
Change Background Music
Update Multiple Elements at Once
Step 4: Render the Final Video
After updating elements, render the final video using the Render from Preview API:Element Types Quick Reference
The following element types are returned in therenderParams.elements array from a completed storyboard preview job:
| Element | elementType | type | id Pattern | Key Updatable Properties |
|---|---|---|---|---|
| Voice-Over | audioElement | audio | voiceOver | url |
| Background Music | audioElement | audio | bgMusic | url, fade |
| Scene Background | backgroundElement | video / image | backgroundElement_{uniqueId} | url, visualUrl, visualType, type, loop, mute, objectMode, colorOverlay |
| Scene Text | SceneText | text | SceneText_{uniqueId} | text (supports <strong> for keyword highlighting), fontFamily, fontSize, fontColor, keywordColor, textBackgroundColor, textAlign |
| Title/Layer Text | layerItem | text | {uniqueId} | text, fontFamily, fontSize, fontColor, textAlign |
| Layer Visual | layerItem | video / image | {uniqueId} | url, visualUrl, type, objectMode, opacity |
