Skip to main content
Co-host management is built on room invitations, room participant events, and room participant mutations. Use these APIs when a room host invites another user to broadcast, when an invited user accepts or rejects the invitation, and when the host manages a co-host during the room.
This page covers SDK co-host control APIs. LiveKit connection, camera and microphone publishing, and broadcaster UI are app-owned concerns after the SDK returns broadcaster data.

Platform Surface

Parameters

Event and Participant Control

Invite a Co-Host

Invite one user at a time. The invitation type is the room co-host invitation type under the hood.

Respond or Cancel

Invited users accept or reject the pending invitation. Hosts cancel an invitation before it is accepted.

Observe Co-Host Events

Use invitation events for invite status and participant events for active room membership changes. Keep the returned unsubscribe, disposable, or cancellable for as long as the screen needs updates.

Manage Active Co-Hosts

Hosts can update whether a co-host can manage product tags, remove a co-host from the room, and co-hosts can leave the room.
TypeScript exposes room participant events as global room event subscribers, so filter by event.room.roomId when a screen only cares about one room. Android and iOS expose room-filtered co-host event streams from the room repository.

Broadcaster Data Boundary

Accepting a co-host invitation does not connect the app to LiveKit. After a user is ready to broadcast, request broadcaster data through the room repository and connect your media stack with the returned co-host URL and token. See Start Broadcasting for media connection guidance.

Create Room

Create a co-host room and seed its initial participant list.

Manage Rooms

Query, update, stop, delete, and observe rooms.

Start Broadcasting

Connect the accepted host or co-host to the media stack.