UNPKG

zaccl

Version:

The Zoom App Complete Connection Library, a project that handles everything required to build a zoom-integrated app.

137 lines (90 loc) 5.73 kB
<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <title>Home - Documentation</title> <script src="scripts/prettify/prettify.js"></script> <script src="scripts/prettify/lang-css.js"></script> <!--[if lt IE 9]> <script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script> <![endif]--> <link type="text/css" rel="stylesheet" href="styles/prettify.css"> <link type="text/css" rel="stylesheet" href="styles/jsdoc.css"> <script src="scripts/nav.js" defer></script> <meta name="viewport" content="width=device-width, initial-scale=1.0"> </head> <body> <input type="checkbox" id="nav-trigger" class="nav-trigger" /> <label for="nav-trigger" class="navicon-button x"> <div class="navicon"></div> </label> <label for="nav-trigger" class="overlay"></label> <nav style="border-right: 2px solid #ccc; padding-bottom: 25px;" > <h2><a style="font-size: 30px;" href="index.html">ZACCL API</a></h2><h3>Endpoint Functions</h3><ul><li><a href="api.cloudRecording.html">api.cloudRecording</a><ul class='methods'><li data-type='method'><a href="api.cloudRecording.html#listMeetingRecordings">listMeetingRecordings</a></li><li data-type='method'><a href="api.cloudRecording.html#listUserRecordings">listUserRecordings</a></li></ul></li><li><a href="api.meeting.html">api.meeting</a><ul class='methods'><li data-type='method'><a href="api.meeting.html#addAltHost">addAltHost</a></li><li data-type='method'><a href="api.meeting.html#create">create</a></li><li data-type='method'><a href="api.meeting.html#delete">delete</a></li><li data-type='method'><a href="api.meeting.html#get">get</a></li><li data-type='method'><a href="api.meeting.html#getPastMeetingDetails">getPastMeetingDetails</a></li><li data-type='method'><a href="api.meeting.html#getPollInfo">getPollInfo</a></li><li data-type='method'><a href="api.meeting.html#listPastInstances">listPastInstances</a></li><li data-type='method'><a href="api.meeting.html#listPastPollOccurrences">listPastPollOccurrences</a></li><li data-type='method'><a href="api.meeting.html#update">update</a></li></ul></li><li><a href="api.user.html">api.user</a><ul class='methods'><li data-type='method'><a href="api.user.html#activate">activate</a></li><li data-type='method'><a href="api.user.html#addWebinarLicense">addWebinarLicense</a></li><li data-type='method'><a href="api.user.html#get">get</a></li><li data-type='method'><a href="api.user.html#getZAKToken">getZAKToken</a></li><li data-type='method'><a href="api.user.html#promoteToLicensed">promoteToLicensed</a></li></ul></li><li><a href="api.webinar.html">api.webinar</a><ul class='methods'><li data-type='method'><a href="api.webinar.html#addPanelist">addPanelist</a></li><li data-type='method'><a href="api.webinar.html#create">create</a></li><li data-type='method'><a href="api.webinar.html#get">get</a></li><li data-type='method'><a href="api.webinar.html#listPanelists">listPanelists</a></li></ul></li></ul> </nav> <div id="main"> <section class="package"> <h3> </h3> </section> <section class="readme usertext"> <article><h1>The Zoom API, but simpler and more powerful</h1> <p>This project is designed <em>by</em> educators <em>for</em> educators.</p> <h1 style="display: flex; align-items: center;"> <div style="flex-grow: 1; height: 1px; background: #ccc; margin-right: 10px;"> </div> <div> Quickstart </div> <div style="flex-grow: 1; height: 1px; background: #ccc; margin-left: 10px;"> </div> </h1> <h2>1. Create an &quot;api&quot; instance</h2> <p>Independently of the type of credentials you're using, you should include a Zoom hostname as env <code>ZOOM_HOST</code> or within the initialization function:</p> <pre class="prettyprint source lang-ts"><code>import initZoomAPI from 'zaccl'; const api = initZoomAPI({ zoomHost: 'harvard.zoom.us', ... }); </code></pre> <p>If using a valid Zoom token, either include it in env as <code>ZOOM_TOKEN</code> or include it when initializing:</p> <pre class="prettyprint source lang-ts"><code>import initZoomAPI from 'zaccl'; const api = initZoomAPI({ token: '&lt;tokenHere>', }); </code></pre> <p>If using a JWT token, either include the key and secret as env variables <code>ZOOM_KEY</code> and <code>ZOOM_SECRET</code> or include them when initializing:</p> <pre class="prettyprint source lang-ts"><code>import initZoomAPI from 'zaccl'; const api = initZoomAPI({ key: '&lt;keyHere>', secret: '&lt;secretHere>', }); </code></pre> <p>If using server-to-server OAuth, either include the clientId, clientSecret, and accountId as env variables <code>ZOOM_CLIENT_ID</code>, <code>ZOOM_CLIENT_SECRET</code>, and <code>ZOOM_ACCOUNT_ID</code> or include them when initializing:</p> <pre class="prettyprint source lang-ts"><code>import initZoomAPI from 'zaccl'; const api = initZoomAPI({ zoomHost: 'harvard.zoom.us', accountId: '&lt;accountId>', clientId: '&lt;clientId>', clientSecret: '&lt;clientSecret>', }); </code></pre> <h2>2. Call an endpoint function</h2> <p>All endpoint functions are asynchronous, so we recommend using async/await syntax:</p> <pre class="prettyprint source lang-ts"><code>const submissions = await api.meeting.create({ userId: 'someone@example.edu', meetingObj: { ... }, }); </code></pre></article> </section> </div> <br class="clear"> <footer> We use <a href="https://github.com/jsdoc3/jsdoc">JSDoc</a> and the <a href="https://github.com/clenemt/docdash">docdash</a> theme to generate our docs. </footer> <script>prettyPrint();</script> <script src="scripts/polyfill.js"></script> <script src="scripts/linenumber.js"></script> </body> </html>