Skip to main content

Zoom API client for Python using server to server tokens

Project description

Zoom Python client

Python tests pre-commit CodeQL codecov

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:

  1. get user details
  2. get user meetings

meetings:

  1. get meeting details
  2. get meeting token

meeting live streams:

  1. get meeting live stream
  2. update live stream
  3. update livestream status

webinars:

  1. get webinar details

webinar live streams:

  1. get webinar live stream
  2. update webinar live stream
  3. update webinar livestream status

zoom rooms:

  1. get all zoom rooms
  2. get zoom room details
  3. get zoom room sensor data

calendars:

  1. get calendar services list
  2. get calendar resources list
  3. get calendar resources by service id list
  4. get calendar resource details by id

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

zoom_python_client-0.2.2.tar.gz (10.3 kB view details)

Uploaded Source

Built Distribution

zoom_python_client-0.2.2-py3-none-any.whl (16.7 kB view details)

Uploaded Python 3

File details

Details for the file zoom_python_client-0.2.2.tar.gz.

File metadata

  • Download URL: zoom_python_client-0.2.2.tar.gz
  • Upload date:
  • Size: 10.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.6.1 CPython/3.11.0 Linux/5.15.0-1041-azure

File hashes

Hashes for zoom_python_client-0.2.2.tar.gz
Algorithm Hash digest
SHA256 87f690cee50ee4333c582db197a32263bf2fa411f70fdccd85b6208407328752
MD5 e94acb726ffed1736091f908ead67453
BLAKE2b-256 13c22a75fb7dd189234b1e3545414d2db5c19c1ba6787de365dab7e8730bb6d6

See more details on using hashes here.

File details

Details for the file zoom_python_client-0.2.2-py3-none-any.whl.

File metadata

  • Download URL: zoom_python_client-0.2.2-py3-none-any.whl
  • Upload date:
  • Size: 16.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.6.1 CPython/3.11.0 Linux/5.15.0-1041-azure

File hashes

Hashes for zoom_python_client-0.2.2-py3-none-any.whl
Algorithm Hash digest
SHA256 733fc23d011c463e557f30bcae37c6b7339623c50a0a9864b30d8b1de10e0358
MD5 d3845ace069f264c4af2bfbf6897ceaf
BLAKE2b-256 420a99a6078b91f046e5680d66f4abe9b7e0f40bcc555b5f49370566c762f13e

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page