Understanding VideoSDK
Understand the core concepts behind a VideoSDK application and where each part is managed.
A VideoSDK application is built around rooms, sessions, participants, and streams. These concepts are shared across the client SDKs and server APIs, even when individual SDKs use slightly different names.
Start with Rooms, Sessions, Participants, and Streams for the complete conceptual model.
Explore this section
| Guide | What you'll learn |
|---|---|
| How a client connects | How roomId and access tokens reach the client, and how token permissions control access. |
| Join a room from a client | Install a client SDK, join a room, respond to events, leave, and handle reconnection. |
| Rooms, Sessions, Participants, and Streams | How rooms, sessions, participants, and media streams relate to each other. |
| Room management | Create, retrieve, validate, list, and manage rooms and sessions from your server. |
| Participant management | Access participants, change modes, moderate users, and manage participants from your server. |
| Stream management | Publish and receive microphone, camera, and screen-share media and control incoming quality. |
Where to start
If you are building the client application, start with How a client connects, then follow Join a room from a client for implementation examples.
If you are building the backend, start with Rooms, Sessions, Participants, and Streams, then continue to Room management.
Next steps
How a client connects
Understand room IDs, access tokens, and the permissions that control how clients join.
Rooms and participants
Understand how rooms, sessions, participants, and streams work together.
Server SDK and REST API
Manage rooms, tokens, participants, recording, telephony, and other server-side operations.
Building AI agents
Create agents that join VideoSDK rooms as participants and interact using audio and video.

