Hi Zoom community,
Description
I’m trying to integrate the Zoom Meeting SDK using the JavaScript client and the provided auth endpoint sample. However, I keep encountering the “Signature is invalid” error. Here’s what I’ve done so far:
- Cloned the Zoom Meeting SDK Auth Endpoint Sample and set up the server locally.
- Configured the .env file with my SDK Key and Secret from the Zoom Marketplace.
- Used the client-side code from the Zoom SDK documentation to initialize and join the meeting.
- Verified that the meeting number, SDK key, and role are correct.
Scenario
I want to join a Zoom meeting that does not require registration (i.e., participants can join directly without registering). I’ve already started a meeting using my Zoom account, but when I try to join the meeting programmatically using the Zoom Meeting SDK, I’m unable to join and encounter issues.
Debug Code
Despite this, the error persists. Here’s my client-side code:
function getSignature() {
fetch(authEndpoint, {
method: 'POST',
headers: {
'Content-Type': 'application/json'
},
body: JSON.stringify({
meetingNumber: meetingNumber,
role: role
})
}).then((response) => {
return response.json()
}).then((data) => {
console.log(data)
startMeeting(data.signature)
}).catch((error) => {
console.log(error)
})
}
function startMeeting(signature) {
document.getElementById('zmmtg-root').style.display = 'block'
ZoomMtg.init({
leaveUrl: leaveUrl,
patchJsMedia: true,
leaveOnPageUnload: true,
success: (success) => {
console.log(success)
ZoomMtg.join({
signature: signature,
sdkKey: sdkKey,
meetingNumber: meetingNumber,
passWord: passWord,
userName: userName,
userEmail: userEmail,
tk: registrantToken,
zak: zakToken,
success: (success) => {
console.log(success)
},
error: (error) => {
console.log(error)
},
})
},
error: (error) => {
console.log(error)
}
})
}
The get the code above from the original zoom Javascript Sample Repository
And here’s the response:
{
"method": "join",
"status": false,
"result": "Invalid signature.",
"errorCode": 3712,
"errorMessage": "Signature is invalid."
}
Questions
I’ve double-checked the following:
- SDK Key and Secret match between the client and server.
- Meeting number is valid and belongs to the same Zoom account.
- Server clock is synchronized.
What am I missing? Any help would be greatly appreciated!
Thanks in advance!