Start a meeting

The Zoom Meeting SDK enables you to embed Zoom's complete meeting experience directly into your platform, allowing users to host and join meetings without leaving your application or webpage.

When a user wants to start a meeting, first retrieve the meeting details from your database. You can then connect the host to their meeting using one of two methods:

  • Pass the start_url directly to the host, which opens the meeting in their Zoom client.
  • Use the meeting information to initialize the Meeting SDK and programmatically start the meeting for the host directly within your platform.

Endpoint: Get User token

Granular Scopes: user:read:token, user:read:token:admin

This workflow describes starting a meeting using Zoom Meeting Web SDK.

  1. After creating a meeting, save the meeting's id and password to your database. You'll use the id to generate the SDK signature and the password to start the meeting.

  2. To start the meeting, use the Get a User’s Token request to retrieve the user's authentication token (ZAK - Zoom Access Key).

  3. Generate the signature used to authenticate the SDK. Take note of the following values:

    • For role key, use the value 1 for host.
    • For mn key, use the value of the meeting id.
    • You can use this sample code to generate the signature.
  4. Initialize the SDK using the init method. Y

  5. Start the meeting using the client.join method. Each ZoomMtg join method call needs to be inside ZoomMtg init method success callback. For the join method, take note of the following values:

    • For ZAK value, use the host’s ZAK token.
    • For meetingNumber value, use the value of meeting id. The value must be the same used in the SDK signature.

    For more information, see the start meeting code sample.

Sample API Call

CURL Command

curl --location --request POST 'https://api.zoom.us/v2/users/{userid}/token' \
  --header 'Content-Type: application/json' \
  --header 'Authorization: Bearer <token>' \
  --data-raw '{"type": "zak", "ttl": "7200"}'

Sample response

{
    "token": "6IjAwMDAwMSIsInptX3NrbSI6InptX"
}

Init SDK & Client.Join

Javascript example

ZoomMtg.init({
    leaveUrl: leaveUrl, // https://example.com/thanks-for-joining
    success: (success) => {
        ZoomMtg.join({
            sdkKey: sdkKey,
            signature: signature, // role in SDK signature needs to be 1
            meetingNumber: meetingNumber,
            passWord: passWord,
            userName: userName,
            zak: zakToken, // the host's ZAK token
            success: (success) => {
                console.log(success);
            },
            error: (error) => {
                console.log(error);
            },
        });
    },
    error: (error) => {
        console.log(error);
    },
});