Projects

Apply commands

Apply an ordered list of edit commands. This is the only way to change a timeline, and it is the same reducer the editor calls: anything you can do by hand you can do here.

Each command succeeds or fails on its own, and the batch is saved when at least one succeeds: check ok and results[].ok, not only the HTTP status. A plan-gated op (scripting without a paid plan) is dropped and listed in blocked while the rest applies. The call is not idempotent: a retried batch appends the clips again.

post/projects/{id}/commands

Request

  • Base URL: https://api.vidmoat.com/v1
  • URL: https://api.vidmoat.com/v1/projects/{id}/commands
  • Auth: HTTP bearer

Path parameters

idstring required

The project id.

Request body

commandsobject[] required

One to 200 commands, applied in order. Each is an object with a string op and that op's parameters, exactly as listed by GET /v1/schema/commands.

dryRunboolean

Run the batch without saving and return what would happen.

Response

Apply commands

projectIdstring

The project.

okboolean

true only when every command succeeded.

dryRunboolean

Whether anything was saved.

verificationobject

What happened: accepted (count), failed ([{ op, error }]), blocked, layout warnings, and outcome (executed, needs-repair or blocked).

blockedstring[]

Plan-gated features that were dropped.

suggestedPreviewTimesnumber[]

Timestamps worth looking at with the preview endpoint before you render.

timelineobject

{ clipCount, durationSec } after the batch.

hintstring

What to check next.

Changes

No recorded changes to this operation across all 1 revision of this API.