Move a Live to another organization
Required scopes: live.move.
Requires the source Authorization bearer with live.move and a destination X-Destination-Service-Token with live.create. Both credentials are revalidated after acquiring sorted workspace locks. Destination mismatch, expiry/revocation or missing destination credential returns 403. Destination total Live quota applies; exhausted capacity or same-workspace requests return 409. Missing/foreign source Lives return 404. Only organization-to-organization moves are supported. Ownership and cleared payloads commit in one transaction before disconnecting viewers and management watchers. Clears scripture payload/reference and presentation snapshots/media pins, resets to hidden Reader mode with pause off, removes collaborators and revokes pending Live invitations. Replaces translation selections and viewer limit with destination library/quota. Existing audience secrets are invalidated while preserving protection. Name, lifecycle status, runtime and viewer styling remain. Returns destination-owned Live and new ETag; source-only credentials lose access. On an ambiguous timeout, inspect through the destination token before retrying. A retry using the old source organization returns 404 once moved.
Response headers:
ETag(200): Shared Live sequence validator. Any relevant metadata, display, playback or workspace change invalidates it.
Authentication
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.
Destination organization svc_ secret. Must belong to organization_id in the move body and hold live.create. Required in addition to source Authorization bearer; never put this secret in a URL or body.
Path parameters
Headers
Shared Live sequence validator. Any relevant metadata, display, playback or workspace change invalidates it. Missing:428; stale:412; malformed, weak, wildcard or list:422.
