Skip to navigation

Replace or clear the Live display

Required scopes: live.update.

Service ownership, current explicit scopes and processing policy are checked inside the serialized Live actor. Requires live.update plus translation.read for scripture or presentation.present for saved-deck publication. Updates persist before broadcasting. Shared Live sequence validators protect display/playback/metadata/queue changes; viewer counts do not. Presentation publication requires presentation_id and explicit current saved revision. Foreign decks return 404, changed/missing requested revision returns 409 presentation_revision_conflict (no historical revision archive), empty decks/stopped Lives return 409. A fresh immutable snapshot is captured, and the deck revision is rechecked under the same workspace lock as final Live save/media pins, so a concurrent deck change cannot silently publish newer content. Optional slide_id selects a stable slide. When updating the same deck already in Presentation mode, omitted slide_id preserves the selected stable ID when present (otherwise clamps the prior index), and blank/paused state are retained. A new presentation starts at slide zero unless selected explicitly. Saving drafts never publishes; source deletion leaves existing snapshots intact. Empty display clears scripture and switches to Reader without deleting a retained presentation snapshot. Also accepts finite personal bearer tokens for resources owned by the caller’s personal account. Personal tokens cannot operate organization Lives, use collaborators’/children’s authority, or publish presentations. Current personal token scopes and user permissions are rechecked after waits. Registered delegated OAuth access tokens are accepted within these personal boundaries; /me and account metadata additionally require identity.read.

Response headers:

  • ETag (200): Strong Live state validator; send unchanged in If-Match for display/playback writes.

Authentication

AuthorizationBearer

Organization-owned service token. Issue the initial token in organization credential settings. Scopes are documented per operation via x-required-scopes; they are not OAuth scopes.

OR
AuthorizationBearer

Personal bearer credential issued through existing account settings or browser-approved CLI flow. Must be active, finite, unexpired, unrevoked, within any rotation overlap, and bound to an active personal membership/user/account. Explicit scopes intersect current user permissions; empty existing personal scopes inherit current user authority. Not an OAuth grant or service token. Browser cookies are ignored.

OR
AuthorizationBearer

Registered public-client OAuth for personal-account resources only. Exact registered HTTPS or fixed-port literal loopback redirect; S256 required; explicit consent. No organization/presentation authority. identity.read is required for /me and account metadata. Scope intersection with current user authority; no empty-scope inheritance.

Path parameters

live_idstringRequired

Headers

If-MatchstringRequiredformat: "^"live-[0-9]+"$"

Use the ETag from the latest display/playback response. Missing: 428; stale: 412. Wildcards, weak validators and lists are not accepted.

Request

This endpoint expects an object.
objectRequired
OR
objectRequired
OR
PresentationDisplayReferenceobjectRequired

Explicitly capture the current saved revision of a same-organization deck. This API has no historical revision archive: if the current saved revision differs, return 409 presentation_revision_conflict. Optional slide_id selects a stable saved slide. Missing slide returns 422. Empty decks and stopped Lives return 409.

Response headers

X-Request-IdstringOptional
ETagstringOptional

Strong Live state validator; send unchanged in If-Match for display/playback writes.

Response

Successful operation
LiveDisplayobject
OR
PersonalLiveDisplayobject

Personal-account Reader Live resource. Uses account_id instead of organization_id; only the personal account owner can access it with current personal token authority.

Errors

401
Unauthorized Error
403
Forbidden Error
404
Not Found Error
429
Too Many Requests Error
503
Service Unavailable Error