Bug with Meeting UUID and GET meeting to retrieve actual meeting ID

When retrieving the actual Meeting ID from the Meeting UUID received in the HTTP_X_ZOOM_APP_CONTEXT for a Zoom App I believe I have found a bug.

The “mid” returned in the header appears to be a base64 value which may contain the ‘/’ and ‘+’ characters.
If the “mid” value does not contain those characters everything is fine.

If I receive a value like “mid”: “+uip6bY+TjxMOREBASE64x==”
and then send:

GET /v2/meetings/+uip6bY+TjxMOREBASE64x==/?type=live HTTP/1.1
Host: api.zoom.us
Authorization: Bearer …

I receive the following response:

{“code”:3001,“message”:“Meeting uip6bY TjxMOREBASE64x== is not found or has expired.”}

I have tried encoding the value to url (‘+’ = ‘-’, ‘/’ = ‘_’, remove ‘=’) but that fails with the same error.

Again, if the “mid” value does not contain ‘+’ or ‘/’ it’s all fine.

How To Reproduce
Get an unlucky “mid” value.

Additionally, % encoding fails as well.

Hi @tskiles , just to read this back so I get this right, you’re saying you are able to access this endpoint successfully when you have UUIDs that do not contain special characters, but when they do, double encoding still does not work?

When you use the past_meeting endpoint with these double encoded UUIDs are you able to get meeting data? Past meeting details API

I had not tried double encoding. That works, thank you. Any chance of adding that to the get meeting API endpoint description. I didn’t look at the past meeting details because I didn’t need that information.

We’ll work to update our docs with this info, thank you!