Zoom Python client
Zoom API Python client with support for Server to Server Oauth tokens
Install
This package is available on Pypi
pip install zoom-python-client
Requirements
- Python >= 3.9
Usage
Defining your env variables
Define the following variables in your env
or your .env
file:
- ZOOM_ACCOUNT_ID
- ZOOM_CLIENT_ID
- ZOOM_CLIENT_SECRET
Initialize the ZoomApiClient from environment variables
from zoom_python_client.zoom_api_client import ZoomApiClient
zoom_client = ZoomApiClient.init_from_env()
Initialize the ZoomApiClient from .env
from zoom_python_client.zoom_api_client import ZoomApiClient
zoom_client = ZoomApiClient.init_from_dotenv()
Initialize the ZoomApiClient manually
from zoom_python_client.zoom_api_client import ZoomApiClient
zoom_client = ZoomApiClient(
account_id="<YOUR ACCOUNT ID>",
client_id="<YOUR CLIENT ID>",
client_secret="<YOUR CLIENT SECRET>")
Use the file system to store the access token instead of environment
There are some cases where you might want to store the access token in the file system in order to share its value with other elements of the application (Ex. different pods on a Kubernetes/Openshift application).
You can define the path where the token will be stored, passing the use_path
variable to the constructor:
from zoom_python_client.zoom_api_client import ZoomApiClient
zoom_client = ZoomApiClient(
account_id="<YOUR ACCOUNT ID>",
client_id="<YOUR CLIENT ID>",
client_secret="<YOUR CLIENT SECRET>",
use_path="/path/to/token/folder")
How to make API calls
MEETING_ID = "12345"
USER_ID = "abcdfgh"
result = zoom_client.users.get_user(USER_ID)
print(result)
result = zoom_client.meetings.get_meeting(MEETING_ID)
print(result)
Optional: How to configure the logging
from zoom_python_client.utils.logger import setup_logs
setup_logs(log_level=logging.DEBUG)
Available endpoints
users:
- get user details
- get user meetings
meetings:
- get meeting details
- get meeting token
meeting live streams:
- get meeting live stream
- update live stream
- update livestream status
webinars:
- get webinar details
webinar live streams:
- get webinar live stream
- update webinar live stream
- update webinar livestream status
zoom rooms:
- get all zoom rooms
- get zoom room details
- get zoom room sensor data
calendars:
- get calendar services list
- get calendar resources list
- get calendar resources by service id list
- get calendar resource details by id