Render an Instavar video
create_video_briefCreate a private hosted video and start rendering after the user confirms the complete brief and plan usage. Requires account linking. Automatic supplemental footage defaults to off; set automaticBroll to auto only if the user explicitly requests it. Preserve visual exclusions in scenes[].generationContract.prohibitedChanges, separately from the visible copy. Use real source media or explicitly accepted generated visuals for demonstrations; never silently replace requested footage with text. Plan distinct shots for a story, with each generated motion shot at most 15 seconds. For silent videos set narrationMode off and supply explicit scenes; omit script and any unsupplied caption. publishTarget is an optional layout hint, not a publish action; preserve the accepted aspectRatio. Put exact spoken words in script for narration, never filmmaking directions. Supplied originals must be uploaded and bound; do not replace missing branded media with stock. This is the hosted brief contract, not VideoSpec or paired-announcement source. Preserve requestId when retrying the same request, including after a timeout; use a new UUID for changed content. Returns a queued job, not a finished video. Does not publish.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| steps | No | ||
| title | Yes | ||
| scenes | No | A shot-by-shot plan. Generated motion shots must be at most 450 frames (15 seconds at 30 fps). Split longer stories into distinct shots; bind supplied media by src or a matching scene asset slot. | |
| script | No | ||
| caption | No | ||
| voiceId | No | ||
| confirmed | Yes | Set only after the user authorizes this hosted render and its plan usage. | |
| objective | Yes | ||
| requestId | Yes | Stable retry identity for this exact approved brief. Reuse after uncertain responses. | |
| assetSlots | No | ||
| directions | No | ||
| aspectRatio | No | Aspect ratio (defaults to 9:16 when omitted) | |
| audioLayers | No | ||
| lessonTitle | No | ||
| workspaceId | No | Optional workspace override. For a new plan, omit this field so the server resolves the account default. A workspace ID returned by an account read is not a user selection. Supply this field only for a user-selected workspace or the workspace of an existing saved project. Ask only when the server requires selection; never fall back after denied access. | |
| compositionId | No | ||
| narrationMode | No | ||
| publishTarget | No | ||
| automaticBroll | No | Automatic supplemental footage. External API renders default to off. Use off for text/graphics-only videos or when the user has not requested footage. Use auto only when the user explicitly wants automatically selected stock or generated B-roll. This does not remove explicitly supplied assets. | |
| publishTargets | No | ||
| visualDirection | No | ||
| targetDurationSeconds | No |