Back

Zoom API Essential Guide

Aug 1, 20246 minute read

What type of API does Zoom provide?

Zoom offers both REST and GraphQL APIs:

REST API

Zoom provides a comprehensive REST API that allows developers to interact with Zoom services programmatically. With the REST API, you can:

  • Create, manage, and delete Zoom resources like users, meetings, webinars, and recordings
  • Automate workflows and build custom integrations
  • Access over 600 API endpoints to mirror many features available in the Zoom web portal

Key points about Zoom's REST API:

  • Uses standard HTTP methods (GET, POST, PUT, DELETE, etc.)
  • Returns responses in JSON format
  • Requires authentication using OAuth 2.0

GraphQL API

In addition to REST, Zoom also offers a GraphQL API. The GraphQL API provides:

  • A flexible way to query and mutate Zoom data using a single endpoint
  • The ability to request exactly the data you need in a single request
  • Subscriptions for real-time updates

Key points about Zoom's GraphQL API:

  • Uses a single endpoint: https://api.zoom.us/v3/graphql
  • Allows complex queries and mutations in a single request
  • Requires importing the Zoom GraphQL schema to use effectively

Does the Zoom API have webhooks?

Yes, the official Zoom API does have webhooks, and you can subscribe to various types of events. Here are the key points about Zoom API webhooks:

Webhook Availability

Zoom offers webhooks as part of their API, allowing developers to receive real-time notifications about various events.

Event Types

You can subscribe to a wide range of event types through Zoom webhooks. Some of the events you can subscribe to include:

  • Meeting-related events:

    • Meeting started
    • Meeting ended
    • Participant joined
    • Participant left
  • User-related events:

    • User created
    • User updated
    • User deleted
  • Recording-related events:

    • Recording completed
    • Recording deleted

Setting Up Webhooks

To use Zoom webhooks, you need to follow these steps:

  1. Configure an endpoint on your server to receive HTTP POST requests from Zoom.
  2. Set up a Webhook-only app in the Zoom App Marketplace.
  3. Specify the endpoint URL where notifications will be sent.
  4. Subscribe to the desired events through the Zoom App Marketplace.

Use Cases

Webhooks can be used for various purposes, such as:

  • Automating processes based on meeting events
  • Responding promptly to changes during meetings
  • Enhancing real-time communication and data handling

Best Practices

When working with Zoom webhooks:

  • Ensure your endpoint is secure and can handle the expected volume of notifications.
  • Implement proper error handling and logging for webhook events.
  • Consider implementing a retry mechanism for failed webhook deliveries.

Additional Considerations

  • Webhook events are sent as HTTP POST requests to your specified endpoint.
  • The payload of these requests contains detailed information about the event that occurred.
  • You may need to implement authentication mechanisms to ensure the webhooks are coming from Zoom.

By leveraging Zoom's webhook functionality, developers can create more responsive and real-time applications that integrate seamlessly with Zoom's platform.

Rate Limits and other limitations

Here are the key points about the API rate limits for the Zoom API:

General Rate Limits

  • Zoom has different rate limits for different API endpoints and account types.

  • The basic rate limit for most API endpoints is 10 requests per second.

  • Some resource-intensive endpoints have lower limits, like 12 requests per minute for certain dashboard/reporting APIs.

Specific Endpoint Limits

  • The Create Meeting API has a daily limit of 100 requests per day per user.

  • The Update Meeting API also has a limit of 100 requests per day per meeting.

Account Type Differences

  • Pro and Business accounts have higher rate limits than Basic accounts for some endpoints.

Upcoming Changes

  • Zoom announced they would be releasing new rate limits in March (though this announcement appears to be from a previous year).

  • The new limits were planned to be applied per account rather than per OAuth client.

Handling Rate Limits

  • When rate limits are exceeded, the API returns a 429 status code.

  • The error message for exceeding the per-second rate limit is: "You have reached the maximum per-second rate limit for this API. Try again later."

Best Practices

  • Developers should be mindful of these limits when designing their integrations.

  • For operations like bulk adding registrants, there is no specific bulk API endpoint, so developers need to work within the existing rate limits.

It's important to note that rate limits can change over time, so it's always best to refer to the most up-to-date documentation from Zoom for the latest information on API rate limits.

Latest API Version

The most recent version of the Zoom API is not explicitly stated in the provided search results. However, I can provide some relevant information about Zoom's API based on the available sources:

API Documentation

Zoom offers a REST API for developers to integrate Zoom functionality into their applications. The API documentation is available on the Zoom Developers website, which provides detailed information about various endpoints and functionalities.

API Updates and Announcements

Zoom regularly updates its API and platform. Developers can stay informed about the latest changes, new features, and deprecations by checking the Announcements page on the Zoom Developers website. This page likely contains information about the most recent API versions and updates.

API Versioning

While the exact version number is not provided in the search results, it's important to note that APIs often use versioning to maintain compatibility and introduce new features. Developers should refer to the official Zoom API documentation for the most up-to-date information on API versions and endpoints.

Best Practices

When working with the Zoom API, it's recommended to:

  • Regularly check the Announcements page for updates and changes.
  • Review the API documentation for the most current information on endpoints and functionalities.
  • Test your integrations thoroughly when new API versions are released.
  • Subscribe to Zoom's developer newsletter or follow their developer forum for timely updates.

To get the most accurate and up-to-date information about the current version of the Zoom API, it's best to consult the official Zoom Developers website or contact Zoom's developer support directly.

How to get a Zoom developer account and API Keys?

To get a developer account for Zoom and create an API integration, you need to follow these steps:

  1. Sign up for a Zoom Developer Account:

    • Go to the Zoom Developer Platform website https://developers.zoom.us/
    • Click on the "Sign Up Free" button in the top right corner.
    • If you already have a Zoom account, you can sign in with those credentials. Otherwise, create a new account.
  2. Create a new app:

    • Once logged in, navigate to the Marketplace menu and select "Develop".
    • Choose the type of app you want to create. For API integration, you'll likely want to select "JWT" or "OAuth" app type.
  3. Configure your app:

    • Fill in the required information for your app, such as the app name, description, and company name.
    • Choose the app type and the necessary permissions (scopes) your app will need to access Zoom's APIs.
  4. Obtain API credentials:

    • After creating your app, you'll receive API credentials, which typically include an API Key and API Secret.
    • For JWT apps, you'll also receive a JWT token.
    • For OAuth apps, you'll need to set up redirect URLs and obtain a Client ID and Client Secret.
  5. Set up authentication:

    • Depending on your app type, you'll need to implement either JWT or OAuth authentication in your application.
  6. Start using Zoom APIs:

    • With your credentials and authentication set up, you can now start making API calls to Zoom's endpoints.
    • Refer to Zoom's API documentation for specific endpoints and request formats.

What can you do with the Zoom API?

Based on the search results provided, I don't have specific information about the data models that can be interacted with using the Zoom API. However, I can provide some general information about interacting with Zoom's API based on the available context:

Key Points to Consider:

  • Zoom uses OAuth 2.0 for API authorization, requiring developers to create a Server-to-Server OAuth app in the Zoom App Marketplace.

  • The API allows access to various types of data related to Zoom meetings and recordings.

  • There are limitations on what can be accessed through the API, especially regarding transcripts and recordings.

Possible Data Models:

While I don't have a comprehensive list, based on the information provided, some data models that can likely be interacted with include:

  • Meetings

    • List meetings
    • Get meeting details
    • Possibly create or update meetings (not explicitly mentioned)
  • Recordings

    • Access cloud recordings
    • Get recording details
  • Transcripts

    • Retrieve audio transcripts for recorded meetings
    • Access closed captions
  • User Data

    • Retrieve information about the authenticated user

API Capabilities:

  • Fetching access tokens for authentication
  • Listing a user's meetings
  • Retrieving meeting details
  • Accessing audio transcripts and closed captions for recorded meetings

Limitations:

  • Transcripts are only available for meetings recorded using Zoom Cloud Recording
  • Only Pro, Business, or Enterprise tier accounts can access certain features
  • There's typically a delay in transcript availability after a meeting ends
  • Real-time transcription is not available through the standard API

Best Practices:

  • Use appropriate scopes when setting up your Zoom app to ensure access to required data
  • Handle API responses and errors properly in your code
  • Be aware of rate limits and other restrictions that may apply to API usage

It's important to note that this information is limited and may not cover all possible data models and interactions available through the Zoom API. For a comprehensive understanding, it would be best to refer to Zoom's official API documentation.