How to determine role value for signature

To generate signature for Meeting Web SDK I must know meeting number and role – 1 or 0, or in another words ‘host’ or ‘participant’.
The role is crucial, incorrect role can lead to errors while trying to join a meeting, for example ‘Signature is invalid’.

But how exactly to determine the role value is not clear.

The solution I came up with is like this:

  1. If user’s personal link is the same as invite link => user’s role is host
  2. Then I query Zoom /users/me/meetings endpoint, with ‘type’ parameter set to ‘scheduled’. If I find among these meetings the meeting with the same meeting number as the one I extracted from invite link => user’s role is host
  3. If nothing of the above is true => user is participant

But users complain that this is not always enough.

How to determine role value?

Which App Type?

How To Reproduce
Steps to reproduce the behavior:

  1. User A starts a new meeting with the help of Zoom Desktop application.
  2. User A copies invite link and shares it with user B
  3. User B authenticates in our custom web application that uses @zoomus/websdk
  4. User B sends request (to our custom server) to generate signature with meeting number we extracted from invite link user A gave, and with role 1 (host).
  5. User B uses this signature to join the meeting
  6. ‘Signature is invalid’

Hi, @_maksym,

Thank you for posting. One approach you can consider is to decode the signature, the format will be JSON Web Token,


If using SDK App type, debug by

Example signature created with SDK App type:


In the PAYLOAD section, you can see the values and debug them there.


If using JWT App type, debug by base64decoding it. Here is a helpful forum post you can reference on this topic as well:

HI, @donte.zoom , I know the value of the role in signature, because I generate it. The issue is what role value should I provide in which cases?


For the Web SDK, you want to leverage the user role to specify whether the user is a participant or host. For instance, if you want a user to be able to start a meeting, you would want to assign the host role. In short:

→ You want to use the value 0 to specify the participant role

→ And, You want to use the value 1 to specify the host role

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