Join Meeting in Windows C++ SDK when Require Authentication is enabled


In Zoom Windows C++ SDK Application, when we try to join meeting for the meeting which are enabled Require Authentication.

I tried the approach with JWT Token generated from Zoom SDK Key and Secret during authentication of SDK and while join meeting I tried as REST API Join with user ZAK Token, Meeting Id, Passcode. but, I am unable to join the meeting. if I provided the ZAK token that exists in Join URL of Meeting in the place of ZAK token, I was able to join as Co-Host. But,I need to join as a participant level from the Zoom Windows C++ App.

Is there a way to join meeting with any token (multiple tokens) in C++ App, if the App can able to join as a participant in both General & Personal Meetings and please provide the approach in detail to get and use in C++ App.

For the scenario which you are highlighting @durgaprasad.pennada ,

you will need to get the user’s ZAK token.

There are couple of ways of doing so, using OAuth App Type or Server to Server App Type

You will need to get user’s permission to access these scope user:read or user:read:admin

From a high level, here’s the process.

  1. Use OAuth App Type or Server to Server OAuth App Type. Note: OAuth will require explicit user’s permission, Server to Server OAuth will require admin permission.
  2. Get a token (applies for both OAuth App or Server to Server App Type) to call Zoom Meeting API
  3. Receive a specific user’s ZAK token
  4. Use this ZAK token in the join meeting params of Meeting SDK for Windows

Hi @chunsiong.zoom,

Thanks for your reply, I tried the same approach as you suggested. below are the steps I followed. please guide me if I done wrong at anywhere.

  1. Created a New Server-to-Server OAuth App Type
  2. I tried to get ZAK Token with both REST API End Points ( & (
  3. Specified the ZAK Token obtained from above API endpoint and used in Zoom C++ Windows App.

Please refer below the sample code used in C++ Windows App.

ZOOM_SDK_NAMESPACE::JoinParam joinParam;
ZOOM_SDK_NAMESPACE::JoinParam4WithoutLogin& RestAPIUserJoinParam = joinParam.param.withoutloginuserJoin;
RestAPIUserJoinParam.userZAK = “”; // Use ZAK Token obtained from REST API End Points
RestAPIUserJoinParam.userName = “Testing”;
RestAPIUserJoinParam.meetingNumber =12345678;
RestAPIUserJoinParam.psw = “”; // Use Meeting Passcode in digits (non-encrypted password)
RestAPIUserJoinParam.vanityID = NULL;
RestAPIUserJoinParam.hDirectShareAppWnd = NULL;
RestAPIUserJoinParam.customer_key = NULL;
RestAPIUserJoinParam.webinarToken = NULL;
RestAPIUserJoinParam.isVideoOff = true;
RestAPIUserJoinParam.isAudioOff = true;
RestAPIUserJoinParam.isDirectShareDesktop = false;

ZOOM_SDK_NAMESPACE::SDKError err = m_RestAPIUserWorkFlow.RestAPIJoinMeeting(joinParam);


The sample code looks ok. I’m assuming the code below does something like meetingService->Join(RestAPIUserJoinParam) ?

ZOOM_SDK_NAMESPACE::SDKError err = m_RestAPIUserWorkFlow.RestAPIJoinMeeting(joinParam);


Yes, it will be same as you expected

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