cancel
Showing results for 
Search instead for 
Did you mean: 
Effective January 9th, 2026 through January 22nd, 2026: The Zoom Community is currently in read-only mode with login disabled, to deliver you a new and improved community experience!

The site is still accessible to view, however, the ability to login, create content, or access your community account is temporarily unavailable. We appreciate your patience during this time. If seeking support, please browse existing community content or ask our Zoom Virtual Agent.

Avoiding Waiting room and how to use passcode instead with API??

nailedit
Newcomer
Newcomer

Hi,

I've really tried everything, but it's still not working. I did the following steps—could you please check if I missed anything?

  1. I’m using the Pro plan and I want to create a meeting via API where two other participants can join without me being present.
  2. To achieve this, I disabled the Waiting Room in my Account Settings.
  3. I understand that I must enable either a passcode, authentication, or a waiting room. So, I set up my API configuration as follows and wrote a Python function accordingly:

    def create_meeting(access_token, row😞

        headers = {
            'Authorization': f'Bearer {access_token}',
            'Content-Type': 'application/json'
        }

        start_time = row['meeting_date']
        start_time_iso = start_time.strftime("%Y-%m-%dT%H:%M:%S")  # ISO 8601 format
        alternative_hosts = ",".join([row["email1"], row["email2"]])
        data = {
            "topic": f"{row['type']} with {row['nick1']} and {row['nick2']}",
            "default_password" : True,
            "password" : "123456",
            "type": 2,  # reserved meeting
            "start_time": start_time_iso,
            "duration": int(row['time']),  #by minutes
            "scheduled_for": row["user1_email"],
            "settings": {
                "join_before_host": True,
                "jbh_time" : 0,
                "mute_upon_entry": True,
                "waiting_room": False,
                "auto_recording": "cloud",  
                "recording_audio_transcription": True,
                "allow_multiple_devices":True,
                #"alternative_hosts" : alternative_hosts,
                #"alternative_hosts_email_notification" : True,
                "authentication_exception" : [
                    {
                        "email" : "***********",
                        "name" : "myname"
                    }
                ],
            },
            "calendar_type" : 2
        }
           
        response = requests.post(url, headers=headers, json=data)
        if response.status_code == 201:
            return response.json()  
        else:
            raise Exception(f"Failed to create meeting: {response.json()}")


    Anyone who can solve this??
0 REPLIES 0