Skip to content

NodeJS library for accessing the Zoom API

Notifications You must be signed in to change notification settings

schoolhouse-world/zoomapi

 
 

Repository files navigation

zoomapi

NodeJS library for working with the Zoom API.

zoomapi provides server-side access to the Zoom APIs via JWT access tokens (deprecation scheduled for June 2023) or server-to-server OAuth. It's written completely in Typescript, and only has one dependency. Works on NodeJS version 8 and higher.

npm i @schoolhouse/zoomapi
# or
yarn add @schoolhouse/zoomapi

Usage

import zoomApi from '@schoolhouse/zoomapi';

// JWT app
const client = zoomApi({
  apiKey: process.NODE_ENV.ZoomApiKey,
  apiSecret: process.NODE_ENV.ZoomApiSecret,
  webhookSecretToken: process.NODE_ENV.webhookSecretToken
});
// or Server-to-Server OAuth app
const client = zoomApi({
  accountId: process.NODE_ENV.ZoomAccountId,
  oauthClientId: process.NODE_ENV.ZoomOAuthClientId,
  oauthClientSecret: process.NODE_ENV.ZoomOAuthClientSecret,
  webhookSecretToken: process.NODE_ENV.webhookSecretToken,
  /**
   * optional function called when access token is retrieved
   */
  onSetAccessToken: async (token) => {
    return await setToken(token);
  },
  /**
   * optional function to explicitly supply an access token,
   * instead of fetching a new one
   */
  onGetAccessToken: async () => {
    return await getToken();
  }
});

const users = await client.users.ListUsers();

API Progress

This library doesn't (yet) implement every API call. PRs are welcome and encouraged.

Tests

None yet.

Contributing

Pull requests are more than welcome! Please follow existing naming and style conventions, and correct any linting errors.

License

MIT

About

NodeJS library for accessing the Zoom API

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • TypeScript 100.0%