ZoomMtg.join() doesn't return 3001 (error not exist) as expected

I am using the Web JS SDK to join meetings and I want to handle the situation where an attendee attempts to join a meeting after it has ended. The problem is that the SDK join() call is returning an errorCode of 1 with an errorMessage of ‘Invalid signature’ instead of the errorCode of 3001 and an errorMessage of ‘error not exist’

Which Endpoint/s or Web JS SDK?

How To Reproduce (If applicable)
Steps to reproduce the behavior:

  1. Create a meeting using the REST API
  2. Use the Web SDK to join, attend and then end the meeting
  3. Use the Web SDK to attempt to join the meeting after it has ended
  4. The call to ZoomMtg.join() calls the provided “error” callback with errorCode 1 and errorMessage ‘Invalid signature’
  5. The expected result is errorCode 3001 and/or errorMessage ‘error not exist’

Screenshots (If applicable)

Additional context
We normally use the REST API to check the status of the meeting before joining, but there are some situations where this cannot be done so we need to simply attempt to join the meeting and handle the failure. It is important to be able to determine the difference between the meeting not existing and other failure conditions.

Hey @ansell,

I see the difficulties here. Technically if the Zoom meeting has ended the signature is in-fact “Invalid” because the meeting ID/Number is used to generate the signature.

I will pass this to our team as a feature request and see if we can improve the error message for joining an ended meeting. JIRA: DEVELOPERS-551