About Calls SDK

Sendbird Calls enables real-time voice and video calls between users within your Sendbird-integrated app. The Calls SDK for JavaScript is used to initialize, configure, and build voice and video calling functionality into your JavaScript application. This and other pages in the Getting started show a brief overview of the Calls SDK’s structure and features, then goes through the preliminary steps of implementing the Calls SDK into your own project. This page shows requirements and a brief overview of the Calls SDK.


The requirements for Calls SDK for JavaScript are:

  • Node
  • npm or yarn
  • WebRTC API supported browsers

Note: See here to find out if your browser supports WebRTC API. However, the Calls SDK doesn't support legacy WebRTC libraries in some versions of web browsers.

Try the quickstart app

Our quickstart app for direct call and group call demonstrates an implementation of the core features of Sendbird Calls SDK. Download the apps from our GitHub repository to get an idea of what you can do with the actual SDK and to get started building your own project.

Download app

Note: The fastest way to see our Calls SDK in action is to build your app on top of our quickstart app. Make sure to change the application ID with your own when initializing the Calls SDK. Go to Create a Sendbird application from your dashboard section to learn more.

How Sendbird Calls SDK works with your app

Sendbird Calls can only be used by your Sendbird application users. When a user logs in, the user can send and receive direct calls with other users on the same Sendbird application.

Direct call in the Calls SDK refers to a 1-to-1 call. To make a direct call, the caller first initializes a call request to the callee. The callee will receive incoming call notifications to all logged in devices. When the callee accepts the call on any of these devices, a media connection is established between the caller and callee which marks the start of a direct call.

Call-related events are delivered through call event handlers. The event handlers include onRinging(), onConnected(), onEnded(), and other event callbacks. By using event callbacks of the handlers, your app can implement appropriate responses and actions accordingly such as updating call status on the UI level.