The server entry fails in the browser
digital-human/server intentionally fails closed in browser builds. Move the
client creation and every API-key operation to a server route. Import browser
types from digital-human and React helpers from digital-human/react.
Camera or microphone permission is denied
- Confirm the page uses HTTPS outside local development.
- Check browser and operating-system permissions.
- Use LiveKit’s
PreJointo let the user select available devices. - Pass
audio={false}orvideo={false}when your experience does not require that track.
Remote audio does not start
Browsers may block audio until the user interacts with the page. Keep LiveKit’s start-audio UI available and begin the call from a user gesture.The digital human is not visible
- Confirm that the session is active and
connectionis notnull. - Confirm the page contains
DigitalHumanVideowithinDigitalHumanRoom. - If you passed
participantIdentity, verify that it matches the remote participant. - Show a fallback while waiting for the remote camera track.
The API returns 403
Check that the key has the scope required by the method. Session creation, reading, and ending have separate scopes.The API returns 409
An idempotency key was reused for a different request or for a session that is already terminal. Generate a new key for a new intended session.The session stopped accepting its token
Call your authenticated server refresh route. That route should callgetSession(sessionId) and return the new SessionConnection if the session
is still connectable.