'Invalid request : Redirect URI mismatch.' despite using ngrok

Description
Hi all, I am trying to integrate zoom into an app I’m developing, but I have been stuck on this error for 2 days: ‘Invalid request : Redirect URI mismatch.’

I am developing the app on localhost and used ngrok and white-listed the re-direct urls as recommended. However, despite doing all that, I am still getting this error and can’t seem to identify the cause of this. Would greatly appreciate your help if you can tell me what I am doing wrong! :grinning:

This is my app link: https://zoom.us/oauth/authorize?response_type=code&client_id=uhZaUDEvQiewpSECmxZPkg&redirect_uri=https%3A%2F%2F187929699399.ngrok.io%2Fzoom%2Fget-access-token

Error
{ reason: ‘Invalid request : Redirect URI mismatch.’,
error: ‘invalid_request’ } },

Which App Type (OAuth / Chatbot / JWT / Webhook)?
OAuth

Which Endpoint/s?
https://zoom.us/oauth/token

How To Reproduce (If applicable)

  1. Successfully obtained authorization_code in step 1
  2. Redirect to https://187929699399.ngrok.io/zoom/get-access-token successfully
  3. Perform post request:

https://zoom.us/oauth/token?grant_type=authorization_code&code=5GZyeq2Oii_HkO8eriES-OrrKvKAtUKaw&redirect_uri=https://187929699399.ngrok.io/zoom/authorization-success

  1. Receive ‘Invalid request : Redirect URI mismatch.’ error

Screenshots (If applicable)

List of redirect urls in white-list:

Hey @Nad

Thanks for posting on the Zoom Devforum! I am still learning, but I will try my best to help answer your question. :slightly_smiling_face:

Checkout these related threads that may have the answer you are looking for:

If these threads did not help, please let us know by replying back here and someone from the Developer Relations team will get back to you shortly.

Thanks,
DeveloperBot

Hi thank you, I have read the threads above but still can’t identify the problem :slightly_smiling_face:

Edit: I used the same redirect url in https://zoom.us/oauth/authorize? and https://zoom.us/oauth/token, and managed to get the access token, but don’t really understand why

1 Like

Hey @Nad,

Let me know if this helps explain things:


The Redirect URI needs to be the same URI from the authorization (install URL) through to the Get Access Token request. So with these URLs set:

When I go to install the app from the “Activation” page, it defaults the redirect URI to the one specified in the “Redirect URL for OAuth” input:

https://zoom.us/oauth/authorize?response_type=code&client_id=ztmR8sxaSBGZ66b5laR7Ag&redirect_uri=https://zoom.us

So if I proceed to install the app, the redirect uri needs to be exactly https://zoom.us for the get access token request or else you will see the Redirect URI mismatch error

That being said, if from the start with the same settings above, I add the /meetings path to the authorize install url:

https://zoom.us/oauth/authorize?response_type=code&client_id=ztmR8sxaSBGZ66b5laR7Ag&redirect_uri=https://zoom.us/meeting

And then after I get the auth code, I make the access token request and set the redirect uri to the same as the one in the install url https://zoom.us/meeting it will work.

Does that make sense? So you can have dynamic redirect urls, but they need to be the same for both the authorize url and the get access token url requests.

More details here on how to handle this in your code:


Thanks,
Tommy

1 Like

@tommy Many thanks, it was very clear :smile:

1 Like

You are welcome! :slight_smile:

-Tommy

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