Use of this SDK is subject to our Terms of Use
The release of Chrome 93 on August 31st will result in breaking changes to WebCodecs due to API updates, which breaks the WebSDK's ability to send video. To use Chrome 93+, you must upgrade to Web Client SDK 1.9.8+
When Chrome 92 releases on July 20th, the Chrome SharedArrayBuffer
will only work with cross-origin isolated web pages, or web pages with Origin Trials applied to them. This will affect any previously configured Web SDK clients. Therefore, you must reconfigure your web server settings and upgrade to the Web Client SDK version 1.9.5+ if you want to continue using this feature.
- Apply
SharedArrayBuffers
origintrials for your domain. This temporary extension works until the Chrome 94 release. - Enable cross-origin isolation for the Web SDK.
- Update to v1.9.5 or higher.
See the Web SDK updates for Chrome 92 Announcement for details.
Microsoft is ending support for Internet Explorer (IE) 11 on August 17, 2021. Based on this date, Zoom is ending support for IE on September 30, 2021. Users can still use Zoom on IE after this date but we will no longer be supporting IE, fixing issues related to IE, or offering any customer support related to IE.
Starting from version 1.9.1, an OSS attribution file (oss_attribution.txt) will be provided in each release. Some licenses for OSS contained in our products give you the right to access the source code under said license. You may obtain a copy of source code for the relevant OSS via the following link: https://zoom.us/opensource/source. Please obtain independent legal advice or counsel to determine your responsibility to make source code available under any specific OSS project.”
The Zoom Web SDK NPM package is for implementing the Zoom Web SDK with a frontend framework like React or Angular that uses webpack / babel.
node_modules/@zoomus/websdk/dist/lib/
In your frontend project, install the Web SDK:
$ npm install @zoomus/websdk --save
In the component file where you want to use the Web SDK, import ZoomMtg
and call the preLoadWasm()
and prepareJssdk()
functions.
import { ZoomMtg } from '@zoomus/websdk';
ZoomMtg.preLoadWasm();
ZoomMtg.prepareJssdk();
NOTE: The following directory (already in node_modules) must be accessible in your url path:
node_modules/@zoomus/websdk/dist/lib/
Or, you can set a custom path to the Web SDK's lib directory using:
ZoomMtg.setZoomJSLib('http://localhost:9999/custom/path/to/lib/', '/av')
NOTE: The following files (already in node_modules) must be globally accessible (equivalent of link and script tag in index.html):
node_modules/@zoomus/websdk/dist/css/bootstrap.css
node_modules/@zoomus/websdk/dist/css/react-select.css
Set the config variables (reference below):
// setup your signautre endpoint here: https://github.com/zoom/websdk-sample-signature-node.js
var signatureEndpoint = 'http://localhost:4000'
var apiKey = 'JWT_API_KEY'
var meetingNumber = 123456789
var role = 0
var leaveUrl = 'http://localhost:9999'
var userName = 'WebSDK'
var userEmail = ''
var passWord = ''
Config variables reference:
Variable | Description |
---|---|
signatureEndpoint | Required, the endpoint url that returns a signature. Get a signature endpoint here. |
apiKey | Required, your Zoom JWT App API Key. |
meetingNumber | The Zoom meeting / webinar number. |
role | Required, 0 to join the meeting / webinar, 1 to start the meeting. |
leaveUrl | Required, the URL the user is taken to once the meeting is over. |
userName | Required, A name for the user joining / starting the meeting / webinar. |
userEmail | Optional, the user joining / starting the meeting / webinar. |
passWord | Optional, meeting password. Leave as empty string if the meeting does not require a password. |
Generate the meeting signature to authenticate, instructions here.
var signature = 'eHUzSlBhQV9SSlcyLTlsNV9IQWFMQS4xMjM0NTY3ODkuMTU4MzE2OTUzODc3My4wLkJMNEtiM3FINGx5ZzA1MUZtbGJOcGtPRnlFQS9lQUR2bGllVzJNNGZJeWs9'
Then init, and join the meeting.
ZoomMtg.init({
leaveUrl: leaveUrl,
isSupportAV: true,
success: (success) => {
console.log(success)
ZoomMtg.join({
signature: signature,
meetingNumber: meetingNumber,
userName: userName,
apiKey: apiKey,
userEmail: userEmail,
passWord: passWord,
success: (success) => {
console.log(success)
},
error: (error) => {
console.log(error)
}
})
},
error: (error) => {
console.log(error)
}
})
Checkout the Zoom Web SDK Sample App, and the Simple Signature Setup Sample App.
If you're looking for help, try Developer Support or our Developer Forum. Priority support is also available with Premier Developer Support plans.