Twilio Zoom Migration, Session Join Error {type: 'JOIN_MEETING_FAILED', reason: 'This account does not exist or does not belong to you', errorCode: 200}

{type: ‘JOIN_MEETING_FAILED’, reason: ‘This account does not exist or does not belong to you’, errorCode: 200}

We’re migrating from Twilio Video to the Zoom Video SDK and are running into the error above when trying to join a session. We’ve built a Video SDK and used the SDK key and secret in our backend, we’ve taken the code from here: GitHub - zoom/videosdk-auth-endpoint-sample: Generate a Video SDK JWT to join Zoom Video SDK sessions with the Video SDK..

To connect/create a session we’re using the following code:

  const getAccessToken = async () => {
    const payload = {
      sessionName: "sessionName123",
      role: "0",
      userIdentity: "userName",
      sessionKey: "your_session_key",
      // geoRegions: "JP",
      // cloudRecordingOption: "your_cloud_recording_option",
      // cloudRecordingElection: "your_cloud_recording_election",
    };
    try {
      const response = await axios.post(
        `${import.meta.env.VITE_ENDPOINT}/token`,
        payload
      );

      return response.data;
    } catch (error) {
      console.error("Error fetching access token:", error);
      throw error;
    }
  };

await getAccessToken().then((result) => {
      accessToken.value = result.signature;
    });

 let zoomVideo = ZoomVideo.createClient();
    let zoomSession;
    await zoomVideo.init("jp-JA", "Global", { patchJsMedia: true });

    await zoomVideo
      .join(
        "sessionName123",
        accessToken.value,
        "userName"
        // "passcode" //session
      )
      .catch((e) => {
        console.log(e);
      });

    zoomSession = zoomVideo.getMediaStream();

Hi there :wave:

This error is typically the result of using credentials not intended for the Video SDK. Can you verify that you have followed these steps to create a Video SDK account (separate from your regular Zoom account) here → Video SDK - Get credentials

If you’ve done this already, be sure you are grabbing the SDK Key and SDK Secret, and not the API Key and API Secret. Let me know if this helps, or if you are still stuck.

Also - try changing role: "0" to role: 0 or role:1. That may also correct the issue if the credentials are correct. Role is a number type, not a string. Video SDK - Authorize

3 Likes

Hello,
I am facing the same issue.
I signed up using “Free Sign Up” option and then created an app using “Build App” option.

// Server Side Code
import jwt from "jsonwebtoken";
export function createZoomVideoAccessToken(identity: string, room: string, isHost?: boolean) {
  const iat = Math.round(new Date().getTime() / 1000) - 30;
  const exp = iat + 60 * 60 * 2;
  const oHeader = { alg: "HS256", typ: "JWT" };

  const oPayload = {
    app_key: ZOOM_APP_CLIENT_ID,
    tpc: room,
    role_type: isHost ? 1 : 0,
    user_identity: identity,
    version: 1,
    iat,
    exp,
  };

  const sdkJWT = jwt.sign(oPayload, ZOOM_APP_SECRET, { header: oHeader });

  return sdkJWT;
}

//Client Side Code
const zoomVideo = ZoomVideo.createClient();
await zoomVideo.init("en-US", "Global", { patchJsMedia: true });
await zoomVideo.join(room, accessToken, auth.user.fullName);

Hey @muhammad.zubair ,

Double check you are using a Video SDK account and Video SDK credentials.

Best,
Tommy

Is there any way to get free credentials for video sdk? Since we are migrating from Twilio so 1st we need to show a POC with Zoom to management.
If they will approve it then will purchase a premium plan.

Hey @muhammad.zubair ,

Of course, you get 10K free minutes a month. You can sign up here: Plans & Pricing for Developer | Zoom - Zoom

Best,
Tommy

Hello Tommy,
I’ve already signed up from same link using “Free Sign Up” option but that way I do not see any option to create “Video SDK App” under Develop menu of marketplace page.
There is simple options;
Build App (there is no SDK KEY & SDK SECRET in such apps but it show CLIENT KEY & CLIENT SECRET which did not work)
Build Legacy App

If I choose Buy SDK option, it redirects to payment steps which I do not want at this moment.

How can I get Video SDK Key & Secret without payment step?

Okay, I did procced with payment option and created a new account but still options are same
Build App
Build Legacy App
I do not see any such option which is mentioned in various guides and docs for creating video sdk app.
Could you please help me creating correct one?

Hey @muhammad.zubair ,

It seems you have created a standard Zoom user account still. You must create a Video SDK account, here are more detailed steps: Video SDK - Get credentials

I am happy to walk you through it over a meeting: Zoom Scheduler

Best,
Tommy