How to Create a Joinable Zoom Meeting Using Python

What will you learn?

In this comprehensive guide, you will learn how to automate the process of creating Zoom meetings using Python. By leveraging Python’s capabilities along with Zoom’s API, you will be able to programmatically generate joinable meetings, saving time and streamlining your meeting organization process.

Introduction to the Problem and Solution

Manually creating Zoom meetings can be a tedious task, especially when dealing with frequent scheduling requirements. The solution lies in automating this process using Python and Zoom’s API. By the end of this tutorial, you will have the knowledge to create new Zoom meetings effortlessly, allowing anyone with the link to join seamlessly.

To achieve this automation, we will utilize Python in conjunction with the requests library to interact with Zoom’s API. The process involves generating an API token for authentication purposes and then proceeding to create a meeting by sending a POST request containing specific meeting settings. Let’s delve into the step-by-step approach to accomplish this task effectively.


import requests
import json

# Your Zoom JWT Token here
jwt_token = 'Your_JWT_Token_Here'
headers = {
    'authorization': f'Bearer {jwt_token}',
    'content-type': 'application/json'

meeting_details = {
  "topic": "The Awesome Meeting",
  "type": 2,
  "start_time": "2023-04-30T15:00:00",
  "duration": "45", # Duration in minutes
  "timezone": "Europe/London",
  "agenda": "Discussing awesome things.",

  # Settings for allowing anyone to join and other configurations
  "settings": {
    "host_video": True,
    "participant_video": True,
    "join_before_host": True,
    "mute_upon_entry": False,
    // Additional settings can be adjusted according to preferences.

response ='', headers=headers, data=json.dumps(meeting_details))

print("Meeting created:", response.json())

# Copyright PHD


In the above code snippet:

  • Import Libraries: Essential libraries such as requests for HTTP requests and json for JSON data handling are imported.
  • Authentication: JWT (JSON Web Tokens) is utilized for authentication by providing your specific JWT token obtained from your Zoom account.
  • Headers: Necessary headers including authorization (Bearer token) and content type are set up.
  • Meeting Details: Various parameters like topic, start time, duration, timezone, agenda, and settings are defined for the meeting.
  • Sending Request: A POST request is made to create a new meeting on Zoom with specified details in JSON format.

Upon successful execution, this script creates a scheduled Zoom meeting that allows anyone with the link to join without requiring explicit permission from the host.

  1. What is JWT?

  2. JWT stands for JSON Web Token – an open standard used for secure information exchange between clients and servers.

  3. How do I obtain my JWT token?

  4. You can generate your own JWT token through the Zoom App Marketplace under app credentials after creating a JWT App.

  5. Can I customize additional settings for my meetings?

  6. Yes! The settings object within meeting_details enables further customization such as setting password requirements or enabling waiting rooms.

  7. Is it possible to schedule recurring meetings via API?

  8. Absolutely! By adjusting the “type” parameter value and specifying recurrence patterns within “recurrence” object in meeting_details, you can schedule recurring meetings seamlessly.

  9. Do I need special permissions on my account?

  10. Certain functionalities or endpoints offered by the Zoom API may require administrator privileges or specific plan subscriptions on your account.


By harnessing Python’s capabilities along with Zoom’s API functionalities through simple yet powerful code snippets like these, you can effortlessly automate the creation of joinable Zoom meetings. This not only saves time but also paves the way for integrating more sophisticated workflows involving scheduling automation scripts effectively.

Leave a Comment