# Signature is invalid, Joining Meeting Timeout error

**URL:** <https://devforum.zoom.us/t/signature-is-invalid-joining-meeting-timeout-error/83625>\
**Category:** Web\
**Created:** [February 23, 2023, 11:50am UTC](https://devforum.zoom.us/t/signature-is-invalid-joining-meeting-timeout-error/83625 "2023-02-23T11:50:43Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![omotehinsedelecaleb](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/omotehinsedelecaleb/32/45599_2.png) [@omotehinsedelecaleb](https://devforum.zoom.us/u/omotehinsedelecaleb)\
**Post date:** [February 23, 2023, 11:50am UTC](https://devforum.zoom.us/t/signature-is-invalid-joining-meeting-timeout-error/83625/1 "2023-02-23T11:50:43Z")

</div>

I am integrating zoom SDK on a website. After downloading the SDK and generating my client ID and client secret, I added the client ID and client secret to the appropriate places on the SDK J’s files.  
On joining a meeting I get an error “Joining meeting timeout signature is invalid” but after clicking on the retry button for 2 to three times, the meeting will start successfully.  
I need assistance with this as all the resources I’ve seen online does not really address the challenge.  
Thanks.

---

<div class="post-metadata">

**Author:** ![j.schoenemeyer](https://avatars.discourse-cdn.com/v4/letter/j/f9ae1b/32.png) [@j.schoenemeyer](https://devforum.zoom.us/u/j.schoenemeyer)\
**Post date:** [February 23, 2023, 12:43pm UTC](https://devforum.zoom.us/t/signature-is-invalid-joining-meeting-timeout-error/83625/2 "2023-02-23T12:43:06Z")

</div>

> [@omotehinsedelecaleb](#):
>
> “Joining meeting timeout signature is invalid” but after clicking on the **retry button for 2 to three times** , the meeting will start successfully

perhaps you have problems with the **iat** of the signature

default: iat should be “[current time - 30 sec](https://github.com/zoom/meetingsdk-sample-signature-node.js/blob/master/index.js)”

sometime you need [more in the past](https://devforum.zoom.us/t/invalid-signature-after-migrating-to-sdk-jwt-v2-9-7/82045/5)

---

<div class="post-metadata">

**Author:** ![omotehinsedelecaleb](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/omotehinsedelecaleb/32/45599_2.png) [@omotehinsedelecaleb](https://devforum.zoom.us/u/omotehinsedelecaleb)\
**Post date:** [February 23, 2023, 12:55pm UTC](https://devforum.zoom.us/t/signature-is-invalid-joining-meeting-timeout-error/83625/3 "2023-02-23T12:55:32Z")

</div>

Here is the script that generate the signature. Nothing like iat in the code. I am using the direct code from zoom apk files. Note that i am not using any framework too. Just vanila js, htm and css just the way i downloaded the sdk files,

var signature = ZoomMtg.generateSDKSignature({  
meetingNumber: meetingConfig.mn,  
sdkKey: SDK\_KEY,  
sdkSecret: SDK\_SECRET,  
role: meetingConfig.role,  
success: function (res) {  
console.log(res.result);  
meetingConfig.signature = res.result;  
meetingConfig.sdkKey = SDK\_KEY;  
var joinUrl = “C:/Users/CGX/Downloads/zoom-sdk-web-2.9.7/CDN/meeting.html?” + testTool.serialize(meetingConfig);  
// console.log(joinUrl);  
window.open(joinUrl, “\_blank”);  
},  
});

---

<div class="post-metadata">

**Author:** ![j.schoenemeyer](https://avatars.discourse-cdn.com/v4/letter/j/f9ae1b/32.png) [@j.schoenemeyer](https://devforum.zoom.us/u/j.schoenemeyer)\
**Post date:** [February 23, 2023, 1:14pm UTC](https://devforum.zoom.us/t/signature-is-invalid-joining-meeting-timeout-error/83625/4 "2023-02-23T13:14:35Z")

</div>

here is a [example on github](https://github.com/zoom/meetingsdk-web-sample), where you can learn how zoom works

the **CDN version** is ready to use with a few simple steps

```auto
CDN/js/index.js:20 var SDK_KEY = "YOUR_SDK_KEY";
CDN/js/index.js:26 var SDK_SECRET = "YOUR_SDK_SECRET";
CDN/js/index.js:112 ... "/meeting.html?" // replace '/' with './'

CDN/js/meeting.js:31 leaveUrl: "/index.html", // replace '/' with './'

```

here is a tutorial on [youtube](https://www.youtube.com/watch?v=fMIXcLlBwZ0)

you can check your signatur [here](https://jwt.io/)

 ![signature](https://us1.discourse-cdn.com/flex016/uploads/zoomdeveloper/original/3X/f/6/f65d3a26475fcb8726a4d9d763d5d0dac5c68002.png)

and you can decode **exp** and **iat** [here](https://www.epochconverter.com/)

 ![epoch](https://us1.discourse-cdn.com/flex016/uploads/zoomdeveloper/original/3X/f/1/f1e75f871f97e203002f074cd05cd05ddbd6f5bc.png)

---

<div class="post-metadata">

**Author:** ![omotehinsedelecaleb](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/omotehinsedelecaleb/32/45599_2.png) [@omotehinsedelecaleb](https://devforum.zoom.us/u/omotehinsedelecaleb)\
**Post date:** [February 23, 2023, 1:37pm UTC](https://devforum.zoom.us/t/signature-is-invalid-joining-meeting-timeout-error/83625/5 "2023-02-23T13:37:24Z")

</div>

Thanks so much. I used these exact folder structure you shared and the youtube video to set up my project. I dont know why the signature error persist and i make sure the CLIENT ID and CLIENT SECRETE im using are correct

---

<div class="post-metadata">

**Author:** ![j.schoenemeyer](https://avatars.discourse-cdn.com/v4/letter/j/f9ae1b/32.png) [@j.schoenemeyer](https://devforum.zoom.us/u/j.schoenemeyer)\
**Post date:** [February 23, 2023, 2:07pm UTC](https://devforum.zoom.us/t/signature-is-invalid-joining-meeting-timeout-error/83625/6 "2023-02-23T14:07:48Z")

</div>

[**A NOTICE**](https://marketplace.zoom.us/docs/sdk/native-sdks/auth/): you can only use CLIENT ID and CLIENT SECRETE, if your **Meeting SDK app** was first created after 12 February 2023

for ‘older’ Meeting SDK apps you need **SDK Key** and **SDK Secret**

if your app was created before 12 February and you have no SDK key/secret you have to create a new app  
(there was a problem when creating the Meeting SDK app at the beginning of this year)

Update: but if you get into the meeting with multiple clicks - it can’t be because of that

---

<div class="post-metadata">

**Author:** ![omotehinsedelecaleb](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/omotehinsedelecaleb/32/45599_2.png) [@omotehinsedelecaleb](https://devforum.zoom.us/u/omotehinsedelecaleb)\
**Post date:** [February 23, 2023, 2:14pm UTC](https://devforum.zoom.us/t/signature-is-invalid-joining-meeting-timeout-error/83625/7 "2023-02-23T14:14:27Z")

</div>

Thanks so much @Jurgen. I am aware of the changes in the zoom API. I created this app last week with the resources you shared earlier and I’m using client ID and client secret instead of SDK key and SDK secret.

This error still persist please

---

<div class="post-metadata">

**Author:** ![j.schoenemeyer](https://avatars.discourse-cdn.com/v4/letter/j/f9ae1b/32.png) [@j.schoenemeyer](https://devforum.zoom.us/u/j.schoenemeyer)\
**Post date:** [February 23, 2023, 2:37pm UTC](https://devforum.zoom.us/t/signature-is-invalid-joining-meeting-timeout-error/83625/8 "2023-02-23T14:37:40Z")

</div>

the included function “ZoomMtg.generateSDKSignature” (-\> zoom-meeting.**[version]**.min.js) has a fix 30 sec offset and cannot be changed

![iat](https://us1.discourse-cdn.com/flex016/uploads/zoomdeveloper/original/3X/d/b/dbcac060c6b8b941f021aa31de3920e7d65bc321.png)

you should check if the time on your computer is adjusted correctly - if the time is set incorrectly, it can lead to problems such as yours

this function is ONLY for testing embeded into the library and has to be replaced later with a function on the webserver - there you can adjust all values - [example](https://github.com/zoom/meetingsdk-sample-signature-node.js/blob/master/index.js)

if its done correct on the server, the time of the server and not that of the client is relevant

---

<div class="post-metadata">

**Author:** ![omotehinsedelecaleb](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/omotehinsedelecaleb/32/45599_2.png) [@omotehinsedelecaleb](https://devforum.zoom.us/u/omotehinsedelecaleb)\
**Post date:** [February 23, 2023, 3:46pm UTC](https://devforum.zoom.us/t/signature-is-invalid-joining-meeting-timeout-error/83625/9 "2023-02-23T15:46:43Z")

</div>

My system date is correct. I couldn’t find the file meetings.min.js you referenced and the meeting.js fine in the SDK J’s folder does not have similar script

---

<div class="post-metadata">

**Author:** ![olusegun.olowoyo](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/olusegun.olowoyo/32/45396_2.png) [@olusegun.olowoyo](https://devforum.zoom.us/u/olusegun.olowoyo)\
**Post date:** [February 23, 2023, 10:43pm UTC](https://devforum.zoom.us/t/signature-is-invalid-joining-meeting-timeout-error/83625/10 "2023-02-23T22:43:28Z")

</div>

Please I am also facing same problem. I have tried every possible soltions I know and some I have read. I guess there is something I am still doing wrong…

---

<div class="post-metadata">

**Author:** ![j.schoenemeyer](https://avatars.discourse-cdn.com/v4/letter/j/f9ae1b/32.png) [@j.schoenemeyer](https://devforum.zoom.us/u/j.schoenemeyer)\
**Post date:** [February 24, 2023, 8:19am UTC](https://devforum.zoom.us/t/signature-is-invalid-joining-meeting-timeout-error/83625/11 "2023-02-24T08:19:37Z")

</div>

you can find [zoom-meeting-2.9.7.min.js](https://github.com/zoom/meetingsdk-web/tree/master/dist) on github

 ![zoom](https://us1.discourse-cdn.com/flex016/uploads/zoomdeveloper/original/3X/c/e/ce84e9a6c26dec98a6ca0565ba85626216f1fcb8.png)

if you change anything - you have to host the zoom CDN files on your web server

---

<div class="post-metadata">

**Author:** ![j.schoenemeyer](https://avatars.discourse-cdn.com/v4/letter/j/f9ae1b/32.png) [@j.schoenemeyer](https://devforum.zoom.us/u/j.schoenemeyer)\
**Post date:** [February 24, 2023, 8:23am UTC](https://devforum.zoom.us/t/signature-is-invalid-joining-meeting-timeout-error/83625/12 "2023-02-24T08:23:13Z")

</div>

what EXACTLY happens if you want to join a meeting?

---

<div class="post-metadata">

**Author:** ![omotehinsedelecaleb](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/omotehinsedelecaleb/32/45599_2.png) [@omotehinsedelecaleb](https://devforum.zoom.us/u/omotehinsedelecaleb)\
**Post date:** [February 24, 2023, 9:13am UTC](https://devforum.zoom.us/t/signature-is-invalid-joining-meeting-timeout-error/83625/13 "2023-02-24T09:13:40Z")

</div>

Ok thanks I’m going to check that out though I’m using the SDK files on zoom market place directly

---

<div class="post-metadata">

**Author:** ![omotehinsedelecaleb](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/omotehinsedelecaleb/32/45599_2.png) [@omotehinsedelecaleb](https://devforum.zoom.us/u/omotehinsedelecaleb)\
**Post date:** [February 24, 2023, 9:19am UTC](https://devforum.zoom.us/t/signature-is-invalid-joining-meeting-timeout-error/83625/14 "2023-02-24T09:19:01Z")

</div>

![Screenshot 2023-02-24 101704](https://us1.discourse-cdn.com/flex016/uploads/zoomdeveloper/original/3X/b/0/b014b5aa17ff6581c87a4248b7fba3d560554c6d.png)  
This “Joining meeting timeout signature invalid” is the error i get once i try to join a meeting either as host or attendee. But when i click on the retry button like 2 or 3 trils the meeting will start successfully

---

<div class="post-metadata">

**Author:** ![olusegun.olowoyo](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/olusegun.olowoyo/32/45396_2.png) [@olusegun.olowoyo](https://devforum.zoom.us/u/olusegun.olowoyo)\
**Post date:** [February 24, 2023, 9:20am UTC](https://devforum.zoom.us/t/signature-is-invalid-joining-meeting-timeout-error/83625/15 "2023-02-24T09:20:32Z")

</div>

I am just testing out the SDK integration and on both starting a meeting (role=1) and joining (role=0) I keep on getting Invalid Signature error message.  
I really don’t know if there is still something I am supposed to do on my SDK App that I did not do.

Thanks for your help

---

<div class="post-metadata">

**Author:** ![omotehinsedelecaleb](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/omotehinsedelecaleb/32/45599_2.png) [@omotehinsedelecaleb](https://devforum.zoom.us/u/omotehinsedelecaleb)\
**Post date:** [February 24, 2023, 9:23am UTC](https://devforum.zoom.us/t/signature-is-invalid-joining-meeting-timeout-error/83625/16 "2023-02-24T09:23:00Z")

</div>

We are having similar issue. My own will start once i click retry maybe 2 or 3 attempt

---

<div class="post-metadata">

**Author:** ![olusegun.olowoyo](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/olusegun.olowoyo/32/45396_2.png) [@olusegun.olowoyo](https://devforum.zoom.us/u/olusegun.olowoyo)\
**Post date:** [February 24, 2023, 9:25am UTC](https://devforum.zoom.us/t/signature-is-invalid-joining-meeting-timeout-error/83625/17 "2023-02-24T09:25:05Z")

</div>

In my own case, I does not start at all. I have tried the **RETRY** button several,time and its same message I keep on getting.

---

<div class="post-metadata">

**Author:** ![j.schoenemeyer](https://avatars.discourse-cdn.com/v4/letter/j/f9ae1b/32.png) [@j.schoenemeyer](https://devforum.zoom.us/u/j.schoenemeyer)\
**Post date:** [February 24, 2023, 11:51am UTC](https://devforum.zoom.us/t/signature-is-invalid-joining-meeting-timeout-error/83625/18 "2023-02-24T11:51:08Z")

</div>

did you check your signatur [here](https://jwt.io/) ?  
what is the result ?

---

<div class="post-metadata">

**Author:** ![olusegun.olowoyo](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/olusegun.olowoyo/32/45396_2.png) [@olusegun.olowoyo](https://devforum.zoom.us/u/olusegun.olowoyo)\
**Post date:** [February 24, 2023, 12:07pm UTC](https://devforum.zoom.us/t/signature-is-invalid-joining-meeting-timeout-error/83625/19 "2023-02-24T12:07:25Z")

</div>

Hello,  
Thanks for your help. I checked and it was INVALID!  
I am surprised. because I use the PHP code sample on the signature page to generate the signature.  
See attached screenshot.

 ![Screenshot 2023-02-24 at 13-02-19 JWT.IO](https://us1.discourse-cdn.com/flex016/uploads/zoomdeveloper/original/3X/c/a/cae304a36d2ad300188c6879ffd9aea03118f619.png)

---

<div class="post-metadata">

**Author:** ![j.schoenemeyer](https://avatars.discourse-cdn.com/v4/letter/j/f9ae1b/32.png) [@j.schoenemeyer](https://devforum.zoom.us/u/j.schoenemeyer)\
**Post date:** [February 24, 2023, 12:14pm UTC](https://devforum.zoom.us/t/signature-is-invalid-joining-meeting-timeout-error/83625/20 "2023-02-24T12:14:56Z")

</div>

> … PHP code sample on the signature page …

this is probably for the JWT Signature (deprecated)

there a two different versions of signatures

JWT Signature (deprecated) → all times in **Milliseconds**  
SDK JWT Signature → all times in **Seconds**

for the currents zoom sdk you need the **SDK JWT Signature**

[Next page](https://devforum.zoom.us/t/signature-is-invalid-joining-meeting-timeout-error/83625.md?page=2)
