Skip to main content
POST
/
livekit
/
participant
/
mute
Handler for POST /livekit/participant/mute endpoint
curl --request POST \
  --url https://api.sayna.ai/livekit/participant/mute \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "muted": true,
  "participant_identity": "user-alice-456",
  "room_name": "conversation-room-123",
  "track_sid": "TR_abc123"
}
'
{
  "muted": true,
  "participant_identity": "user-alice-456",
  "room_name": "conversation-room-123",
  "track_sid": "TR_abc123"
}
Mutes or unmutes a participant’s published track. Access is authorized via metadata.auth_id check.

Authorization

ModeBehavior
Authenticated (auth.id present)Requires room.metadata.auth_id == auth.id.
Unauthenticated (auth.id absent)Access is allowed (backward-compatible mode).
Room names are used exactly as provided. No prefixing or modification is applied.

Request

Requires:
  • room_name - The LiveKit room where the participant is connected
  • participant_identity - The identity of the participant whose track to mute
  • track_sid - The session ID of the track to mute/unmute
  • muted - true to mute, false to unmute

Error responses

StatusCondition
400 Bad RequestEmpty required fields in request.
404 Not FoundRoom/participant not found or access denied (masked for security).
500 Internal Server ErrorLiveKit not configured or mute operation failed.

Authorizations

Authorization
string
header
required

JWT token obtained from the authentication service. Required when AUTH_REQUIRED is enabled.

Body

application/json

Request body for muting/unmuting a participant's track

Example

{
"room_name": "conversation-room-123",
"participant_identity": "user-alice-456",
"track_sid": "TR_abc123",
"muted": true
}
muted
boolean
required

True to mute, false to unmute

Example:

true

participant_identity
string
required

The identity of the participant whose track to mute

Example:

"user-alice-456"

room_name
string
required

The LiveKit room name where the participant is connected

Example:

"conversation-room-123"

track_sid
string
required

The session ID of the track to mute/unmute

Example:

"TR_abc123"

Response

Track muted/unmuted successfully

Response for a successful mute/unmute operation

Example

{
"room_name": "conversation-room-123",
"participant_identity": "user-alice-456",
"track_sid": "TR_abc123",
"muted": true
}
muted
boolean
required

Current muted state

Example:

true

participant_identity
string
required

The identity of the participant

Example:

"user-alice-456"

room_name
string
required

The room name

Example:

"conversation-room-123"

track_sid
string
required

The session ID of the track

Example:

"TR_abc123"