shot.update
Change a shot's story, cast, framing, camera rig, lighting, reference videos or duration (a duration change ripples later clips)
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"projectId": "<projectId>",
"expectedVersion": "<expectedVersion>",
"shotId": "<shotId>"
},
"name": "shot.update"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| seed | No | ||
| action | No | What happens during the shot (used for video) | |
| camera | No | Physical camera settings. Unset fields are left to the model. | |
| shotId | Yes | ||
| dialogue | No | Spoken line(s); prefix with the speaker's name ("ANNA: …") so shot.lipsync knows who says it | |
| lighting | No | ||
| shotSize | No | ||
| projectId | Yes | ||
| locationId | No | Override the scene's location for this shot (null = where the scene is) | |
| videoModel | No | ||
| aspectRatio | No | This shot's frame shape (null = the film look's, else the project's). Stills use it; the video take follows its start frame | |
| cameraAngle | No | ||
| composition | No | e.g. "rule of thirds, subject frame left, negative space right" | |
| description | No | What the frame shows | |
| characterIds | No | Cast members in frame — their reference images keep them consistent | |
| generateAudio | No | Ask the video model for native audio (costs more) | |
| cameraMovement | No | ||
| endFrameAssetId | No | ||
| expectedVersion | Yes | ||
| videoResolution | No | Video output resolution (null = the model's default; only some models offer a choice, and higher costs more) | |
| plannedDurationMs | No | ||
| startFrameAssetId | No | ||
| referenceVideoMode | No | follow (default): make a new clip copying the reference's motion and camera. edit: change the first reference clip itself and keep the rest — write the change in the description (e.g. "Replace the man with Whiskers") and add the new subject to the cast. Needs a model whose videoReferences.modes includes edit (kling-o3-pro-edit, kling-o3-standard-edit, seedance-2.5-ref); the take is as long as the clip. | |
| speakerCharacterId | No | Who speaks the dialogue (null = the character it names, else the first cast member with a voice) | |
| referenceVideoAssetIds | No | Video assets (uploads or earlier takes) whose motion and camera the shot follows; replaces the list ([] clears it). Only reference_to_video models use them — generation.list_models shows each model's videoReferences limits and modes. |