Skip to main content
PUT
Create or replace a resource

Authorizations

X-API-Key
string
header
required

A Streamloop API key (sl_…). It carries no workspace: send X-Workspace-Id too (400 WORKSPACE_REQUIRED otherwise).

Headers

If-Match
string

The revision (ETag) you read — one, or a comma-separated list of which any current one matches — compared strongly (a weak W/"…" tag never matches): refused with 412 PRECONDITION_FAILED if the resource changed since or no longer exists (the problem carries currentRevision, null when it is gone, and for a layer frameRevision: either is taken). A layer takes its own revision or that of the frame/<id> it is in. *: it must exist. Checked atomically with the write: of two writes sent at once with the same revision, one lands and the other is 412.

If-None-Match
string

*: create only — 412 if the resource exists already. On a GET, the ETag you hold (a weak W/"…" one too): 304 when nothing changed.

X-Workspace-Id
string

The workspace to act in. Required with an API key; otherwise the session's own.

Path Parameters

id
string
required

The scene's id (scn_…)

Pattern: ^scn_
path
string
required

A resource path, slashes and all: frame/intro, frame/intro/title, source/data/headlines/rows, component/LowerThird, script/show.ts, a type (element/Text) or a list (frame/*)

Body

The body is of type object.

Response

The answer

What a draft operation answers. summary says what happened in a sentence; value is what a read found.

summary
string
value
object

What was read: a resource (with revision and children), a type (what it takes), or a list

path
string

A write: where it is stored (a new id is made unique)

revision
string

A write: the resource's new revision

frameRevision
string

A layer's write: the revision of the frame/<id> it is in (If-Match takes either)

created
boolean
diff
string

A write: a unified diff of what changed

removed
string[]
draftRevision
string

The whole draft as this answer saw it: publish takes it