# The signature has expired errorCode: 3705

**URL:** <https://devforum.zoom.us/t/the-signature-has-expired-errorcode-3705/39939>\
**Category:** Web\
**Created:** [January 7, 2021, 12:17pm UTC](https://devforum.zoom.us/t/the-signature-has-expired-errorcode-3705/39939 "2021-01-07T12:17:09Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![kamalspyinforman](https://avatars.discourse-cdn.com/v4/letter/k/919ad9/32.png) [@kamalspyinforman](https://devforum.zoom.us/u/kamalspyinforman)\
**Post date:** [January 7, 2021, 12:17pm UTC](https://devforum.zoom.us/t/the-signature-has-expired-errorcode-3705/39939/1 "2021-01-07T12:17:09Z")

</div>

**Description**  
Occasionally it can join meeting but when specific time I get “The signature has expired.”. what timezone I must set?

**Error**  
{method: “join”, status: false, result: “The signature has expired.”, errorMessage: “The signature has expired.”, errorCode: 3705}

**Which version?**  
[https://dmogdx0jrul3u.cloudfront.net/1.8.5/lib](https://dmogdx0jrul3u.cloudfront.net/1.8.5/lib)

**To Reproduce(If applicable)**  
function generate\_signature ( $api\_key, $api\_secret, $meeting\_number, $role = 0){  
$time = time() \* 1000 - 30000;//time in milliseconds (or close enough)   
$data = base64\_encode($api\_key . $meeting\_number . $time . $role);  
$hash = hash\_hmac(‘sha256’, $data, api\_secret, true); \_sig = $api\_key . “.” . $meeting\_number . “.” . $time . “.” . $role . “.” . base64\_encode(hash); //return signature, url safe base64 encoded return rtrim(strtr(base64\_encode(_sig), ‘+/’, '-_’), ‘=’);  
}

**Screenshots**

 ![image](https://us1.discourse-cdn.com/flex016/uploads/zoomdeveloper/original/3X/4/7/4709511058c9d708aa2a79486558431ca13fd962.png)

**Device (please complete the following information):**  
Device: Noteboo  
Web SERVER: Centos  
Chrome Version 87.0.4280.88 (Official Build) (64-bit)

**Additional context**  
On my local server OS windows i get no problem but on linux server i get signature has expired

---

<div class="post-metadata">

**Author:** ![alexmayo](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/alexmayo/32/27289_2.png) [@alexmayo](https://devforum.zoom.us/u/alexmayo)\
**Post date:** [January 7, 2021, 2:51pm UTC](https://devforum.zoom.us/t/the-signature-has-expired-errorcode-3705/39939/2 "2021-01-07T14:51:49Z")

</div>

Where is the `generate_signature()` function located? Is it on your frontend or backend?

Also, are you using the latest API?

---

<div class="post-metadata">

**Author:** ![tommy](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/tommy/32/72769_2.png) [@tommy](https://devforum.zoom.us/u/tommy)\
**Post date:** [January 8, 2021, 9:52pm UTC](https://devforum.zoom.us/t/the-signature-has-expired-errorcode-3705/39939/3 "2021-01-08T21:52:10Z")

</div>

Hey @kamalspyinforman ,

The signature should be generated on the server side in UTC time. Checkout this post here to make sure your time settings are correct:

> [@Join meeting timeout or signature expired](https://devforum.zoom.us/t/join-meeting-timeout-or-signature-expired/8616/14):
>
> Hi @vijayk.kannan, For the signature issue, make sure to use the system time and make sure the time syncs with world time. Generate a signature by ZoomMtg.generateSignature. - Example of syncing your machine time using window 10 [e1b2c451-e93c-4238-b464-ead68f8cca69] Example for using Mac Generate a signature by customer web backend with sync server time. We are currently investigation to see if there is a sync issue on our end as well. We’ll follow up as soon as we’re done lo…

You can also try using this [sample app to generate the Web SDK Signature.](https://github.com/zoom/websdk-sample-signature-node.js)

Thanks,  
Tommy

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/flex016/uploads/zoomdeveloper/original/3X/6/1/614bdd549b610bbaa46ff934617683a02bdaa03c.png) [@system](https://devforum.zoom.us/u/system)\
**Post date:** [February 8, 2021, 7:52am UTC](https://devforum.zoom.us/t/the-signature-has-expired-errorcode-3705/39939/4 "2021-02-08T07:52:12Z")

</div>

Closed on February 8, 2021, 7:52am UTC

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.
