Clips

Update a layout's shape, timing, transition style, or media. transitionStyle and media are only valid on time-ranged layouts, not on the base (clip-spanning) layout. Updating the base layout also changes every layout that reports followsBase: true.

patch/v1/videos/{id}/clips/{clipId}/layouts/{layoutId}

Request

Path parameters

idstring required

Video ID

clipIdstring required

Clip ID

layoutIdstring required

Layout (section) ID

Request body

cameraStyle'none' | 'circle' | 'square' | 'portrait' | 'cutout' | 'blob' | 'blob-outline' nullable

The camera's frame shape, as the editor's Camera style picker sets it, overriding the named layout's own: circle, square, portrait, none (a rectangle in the camera slot's aspect, rounded by the clip's corners, e.g. a squircle when corners are squircle), cutout (the presenter cut out of the camera feed with no frame or room, in the layout's camera position — e.g. camera-bubble with style: full and position: bottom-left for a full-screen recording with a cut-out presenter in the corner; it switches pop-out off), blob or blob-outline. It shapes the camera bubble and the pop-out frame. Null clears it so the layout's own shape applies; omitted leaves it as it is. Needs a camera recording and a named layout that frames the camera (not cut-out, screen-only or custom; on a custom layout set presentation.shape). On the base layout it is accepted without layout.

durationMsinteger
startTimeMsinteger

Start time in ms on the clip's playback timeline (cuts applied)

transitionStyle'spring' | 'hardCut'

How the editor transitions into this layout from the previous one. spring is the default smooth motion; hardCut is an instant cut.

Response

OK

Example response

{
  "layout": {
    "durationMs": 5000
  }
}

Changes

    • warning

      added the new motion enum value to the /// response property for the response status

    • info

      added motion discriminator mapping keys to the //// request property

    • info

      added to the //// request property oneOf list

    • info

      added the optional property /// to the response with the status

    • breaking

      the response property /////// became optional for the status

    • info

      the request property ////// became optional