# Sdkkey cannot be empty

**URL:** <https://devforum.zoom.us/t/sdkkey-cannot-be-empty/88156>\
**Category:** Web\
**Tags:** sdk\
**Created:** [May 10, 2023, 11:12am UTC](https://devforum.zoom.us/t/sdkkey-cannot-be-empty/88156 "2023-05-10T11:12:45Z")\
**Posts on this page:** 1\
**Showing post:** 10

<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:** [May 15, 2023, 5:27am UTC](https://devforum.zoom.us/t/sdkkey-cannot-be-empty/88156/10 "2023-05-15T05:27:58Z")

</div>

> [@ajinkya.kulkarni](#):
>
> ```auto
> $time = round( ( time() * 1000 - 30000 ) / 1000 );
> $exp = $time + 86400;
> 
> $time = $time * 1000;
> $exp = $exp * 1000;
> 
> ```

you are using **millisconds** (depr. JWT app) - you have to use **seconds** (Meeting SDK app)

> [@How do I generate a valid SDK signature from PHP?](https://devforum.zoom.us/t/how-do-i-generate-a-valid-sdk-signature-from-php/70691/5):
>
> @SVIF Here is example SDK Signature in PHP: \<?php /\*\* \* Below are the fields required for the JWT payload \* sdkKey: Your SDK Key. Required for Web, optional for Native. \* sdkSecret Required, your SDK API Secret \* mn: The Zoom Meeting or Webinar Number. Required for Web, optional for Native. \* role: The user role. Required for Web, optional for Native. Values: 0 to specify participant, 1 to specify host. \* iat: The current timestamp in epoch format. Required. \* exp: JWT expiration date…

---

_[View the full topic](https://devforum.zoom.us/t/sdkkey-cannot-be-empty/88156)._
