@pipedream/zoom 0.4.0 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (32) hide show
  1. package/README.md +21 -64
  2. package/actions/add-meeting-registrant/add-meeting-registrant.mjs +1 -1
  3. package/actions/add-webinar-registrant/add-webinar-registrant.mjs +1 -1
  4. package/actions/create-meeting/create-meeting.mjs +1 -1
  5. package/actions/create-user/create-user.mjs +1 -1
  6. package/actions/delete-user/delete-user.mjs +1 -1
  7. package/actions/get-meeting-details/get-meeting-details.mjs +1 -1
  8. package/actions/get-webinar-details/get-webinar-details.mjs +1 -1
  9. package/actions/list-channels/list-channels.mjs +1 -1
  10. package/actions/list-past-meeting-participants/list-past-meeting-participants.mjs +1 -1
  11. package/actions/list-past-webinar-qa/list-past-webinar-qa.mjs +1 -1
  12. package/actions/list-user-call-logs/list-user-call-logs.mjs +31 -0
  13. package/actions/list-webinar-participants-report/list-webinar-participants-report.mjs +2 -2
  14. package/actions/send-chat-message/send-chat-message.mjs +1 -1
  15. package/actions/update-meeting/update-meeting.mjs +1 -1
  16. package/actions/update-webinar/update-webinar.mjs +1 -1
  17. package/actions/view-user/view-user.mjs +1 -1
  18. package/package.json +1 -1
  19. package/sources/custom-event/custom-event.mjs +1 -1
  20. package/sources/meeting-created/meeting-created.mjs +1 -1
  21. package/sources/meeting-deleted/meeting-deleted.mjs +1 -1
  22. package/sources/meeting-ended/meeting-ended.mjs +1 -1
  23. package/sources/meeting-started/meeting-started.mjs +1 -1
  24. package/sources/meeting-updated/meeting-updated.mjs +1 -1
  25. package/sources/phone-event/phone-event.mjs +1 -1
  26. package/sources/recording-completed/recording-completed.mjs +1 -1
  27. package/sources/webinar-created/webinar-created.mjs +1 -1
  28. package/sources/webinar-deleted/webinar-deleted.mjs +1 -1
  29. package/sources/webinar-ended/webinar-ended.mjs +1 -1
  30. package/sources/webinar-started/webinar-started.mjs +1 -1
  31. package/sources/webinar-updated/webinar-updated.mjs +1 -1
  32. package/zoom.app.mjs +39 -0
package/README.md CHANGED
@@ -1,79 +1,36 @@
1
- # Zoom API Integrations
1
+ # Overview
2
+ The Zoom API lets you tap into a rich set of functionalities to enhance the video conferencing experience within your own app or workflow. With the Zoom API on Pipedream, you can automatically create meetings, manage users, send meeting notifications, and more, orchestrating these actions within a broader automation. This allows for seamless integration with other services, enabling both data collection and action triggers based on Zoom events.
2
3
 
3
- ### Integrate Zoom and thousands of applications with Pipedream. Free for developers.
4
+ **Pipedream [workflows](/workflows/) allow you to run any Node.js code that connects to the Zoom API**. Just [create a new workflow](https://pipedream.com/new), then add prebuilt Zoom [actions](/components#actions) (create a meeting, send a chat message, etc.) or [write your own code](/code/). These workflows can be triggered by HTTP requests, timers, email, or on any app-based event (new tweets, a Github PR, Zoom events, etc).
4
5
 
5
- ---
6
+ # Getting Started
6
7
 
7
- Pipedream is a serverless integration and compute platform. We provide a free, hosted platform that makes it easy to connect apps and develop, execute and maintain event-driven workflows.
8
+ 1. First, sign up for Pipedream at [https://pipedream.com](https://pipedream.com).
9
+ 2. Visit [https://pipedream.com/accounts](https://pipedream.com/accounts).
10
+ 3. Click the button labeled **Click Here to Connect an App**.
11
+ 4. Search for "Zoom" and select either **Zoom** or **Zoom Admin** ([see the differences below](#zoom-vs-zoom-admin-app)):
8
12
 
9
- **Key Features**:
13
+ This will open up a new window prompting you to authorize Pipedream's access to your Zoom account. Once you authorize access, you should see your Zoom account listed among your apps.
10
14
 
11
- - [Zoom API Event Sources](#github-api-event-sources) - Open source [components](https://github.com/PipedreamHQ/pipedream/tree/master/components) that emit events from Zoom
12
- - [Workflows](#workflows) - A sequence of linear steps - just Node.js code - triggered by a Zoom event
13
- - Serverless - No server or cloud resources to manage
14
- - [Free](#pricing) - No fees for individual developers (see [limits](https://docs.pipedream.com/limits/))
15
+ 1. [Create a new workflow](https://pipedream.com/new), [add a new step](/workflows/steps/), search for "Zoom" or "Zoom Admin". Once you've selected either app, you can choose to either "Run Node.js code" or select one of the prebuilt actions for performing common API operations.
16
+ 2. At this stage, you'll be asked to link the Zoom account you connected above, authorizing the request to the Zoom API with your credentials.
15
17
 
16
- <a href="https://pipedream.com/sources/new?app=zoom"><img src="https://i.ibb.co/m0bBsSL/deploy-clean.png" height="35"></a>
18
+ ## Zoom vs Zoom Admin app
17
19
 
18
- ## Zoom API Event Sources
20
+ Zoom users can be classified into two groups: non-admins and admins. Admins have account-level permissions that users do not, and Zoom has corresponding admin-level scopes that aren't relevant for normal users. Therefore, Pipedream exposes two apps — **Zoom** and **Zoom Admin** — to serve the two groups.
19
21
 
20
- - [Custom Events](https://pipedream.com/sources/new?app=zoom) - Build your own event source using one or multiple events ([code](https://github.com/PipedreamHQ/pipedream/blob/master/components/zoom/custom-event.js))
21
- - [Meeting Created](https://pipedream.com/sources/new?app=zoom) - Emits an event each time a meeting is created where you're the host ([code](https://github.com/PipedreamHQ/pipedream/blob/master/components/zoom/meeting-created.js))
22
- - [Meeting Deleted](https://pipedream.com/sources/new?app=zoom) - Emits an event each time a meeting is deleted where you're the host ([code](https://github.com/PipedreamHQ/pipedream/blob/master/components/zoom/meeting-deleted.js))
23
- - [Meeting Ended](https://pipedream.com/sources/new?app=zoom) - Emits an event each time a meeting ends where you're the host ([code](https://github.com/PipedreamHQ/pipedream/blob/master/components/zoom/meeting-ended.js))
24
- - [Meeting Started](https://pipedream.com/sources/new?app=zoom) - Emits an event each time a meeting starts where you're the host ([code](https://github.com/PipedreamHQ/pipedream/blob/master/components/zoom/meeting-started.js))
25
- - [Meeting Updated](https://pipedream.com/sources/new?app=zoom) - Emits an event each time a meeting is updated where you're the host ([code](https://github.com/PipedreamHQ/pipedream/blob/master/components/zoom/meeting-updated.js))
26
- - [Meeting Recording Completed](https://pipedream.com/sources?action=create&key=zoom-recording-completed&utm_source=github.com&utm_medium=referral&utm_campaign=zoom) - Emits an event each time a new recording completes for a meeting or webinar where you're the host ([code](https://github.com/PipedreamHQ/pipedream/blob/master/components/zoom/recording-completed.js))
27
- - [Webinar Created](https://pipedream.com/sources/new?app=zoom) - Emits an event each time a webinar is created where you're the host ([code](https://github.com/PipedreamHQ/pipedream/blob/master/components/zoom/webinar-created.js))
28
- - [Webinar Deleted](https://pipedream.com/sources/new?app=zoom) - Emits an event each time a webinar is deleted where you're the host ([code](https://github.com/PipedreamHQ/pipedream/blob/master/components/zoom/webinar-deleted.js))
29
- - [Webinar Ended](https://pipedream.com/sources/new?app=zoom) - Emits an event each time a webinar ends where you're the host ([code](https://github.com/PipedreamHQ/pipedream/blob/master/components/zoom/webinar-ended.js))
30
- - [Webinar Started](https://pipedream.com/sources/new?app=zoom) - Emits an event each time a webinar starts where you're the host ([code](https://github.com/PipedreamHQ/pipedream/blob/master/components/zoom/webinar-started.js))
31
- - [Webinar Updated](https://pipedream.com/sources/new?app=zoom) - Emits an event each time a webinar is updated where you're the host ([code](https://github.com/PipedreamHQ/pipedream/blob/master/components/zoom/webinar-updated.js))
22
+ In the Zoom Marketplace, these apps are named [Pipedream](https://marketplace.zoom.us/apps/jGaV-kRrT3igAYnn-J5v2g), and [Pipedream for Zoom Admins](https://marketplace.zoom.us/apps/tZvUsiucR96SqtvfBsemXg), respectively.
32
23
 
33
- Event sources can also be deployed via the [Pipedream CLI](https://docs.pipedream.com/cli/reference/). Once installed, you can deploy an event source by running:
24
+ Non-admins have [permissions](https://marketplace.zoom.us/docs/guides/authorization/permissions#user-managed-scopes) to manage standard Zoom resources in their account: meetings, webinars, recordings, and more. **If you're a non-admin, you'll want to use the Zoom app**.
34
25
 
35
- ```bash
36
- pd deploy # prompts you to select a component and pass required options
37
- ```
26
+ Zoom admins have [permissions](https://marketplace.zoom.us/docs/guides/authorization/permissions#account-level-scopes) to manage account-level resources, like users and reports. They can also manage webinars and meetings across their organization. **If you're an admin and need to manage these resources via API, you'll want to use the Zoom Admin app**.
38
27
 
39
- ## Workflows
28
+ The [Zoom API docs on permissions](https://marketplace.zoom.us/docs/guides/authorization/permissions) provide detailed information on these permissions and their associated OAuth scopes.
40
29
 
41
- Workflows are a sequence of linear [steps](https://docs.pipedream.com/workflows/steps) - just Node.js code - triggered by an event (via event source, HTTP endpoint, or timer). Workflows make it easy to transform data and integrate with 300+ APIs from various apps and services.
30
+ # Example Use Cases
42
31
 
43
- - Trigger your workflow on any [Zoom event](https://pipedream.com/sources/new?app=github), a different event (e.g. [HTTP requests](https://docs.pipedream.com/workflows/steps/triggers/#http) or a [schedule](https://docs.pipedream.com/workflows/steps/triggers/#cron-scheduler)).
44
- - Add steps to run [Node.js code](https://docs.pipedream.com/workflows/steps/code/) (using virtually any npm package) and [pre-built actions](https://docs.pipedream.com/workflows/steps/actions/).
45
- - Steps are executed in the order they appear in your workflow.
46
- - Data is shared between steps via [step exports](https://docs.pipedream.com/workflows/steps/#step-exports).
32
+ - **Automated Meeting Scheduling and Notifications**: With Pipedream, you can create a workflow that listens for upcoming calendar events in Google Calendar. Once it detects a new event labeled "Zoom Meeting," it can trigger the Zoom API to create a meeting and then automatically send custom email notifications with the meeting details to all the attendees using SendGrid.
47
33
 
48
- Workflow code is [public by default](https://docs.pipedream.com/public-workflows/) so the community can discover and [copy them](https://docs.pipedream.com/workflows/copy/). Your workflow execution and event data is private.
34
+ - **Zoom Webinar Attendee Management**: Build a workflow where new sign-ups from an event management platform like Eventbrite trigger the addition of these attendees to a Zoom webinar. Post-webinar, send a follow-up email via Mailgun with a link to the webinar recording, which you can upload to a cloud storage platform like Dropbox.
49
35
 
50
- You can copy [this example workflow](https://pipedream.com/@tod/use-http-requests-to-trigger-a-workflow-p_6lCy5y/readme) to get started, or review some [community-developed workflows](https://pipedream.com/explore) to see what others are building.
51
-
52
- **Example Zoom Workflows**
53
-
54
- - [Save Zoom recordings to Amazon S3, then delete Zoom recording](https://pipedream.com/@dylburger/save-zoom-recordings-to-amazon-s3-p_PACKJG/readme)
55
-
56
- For a deeper introduction to Pipedream and event sources, see the [root `README` in this repo](/README.md), the [component API](/COMPONENT-API.md), or the [docs](https://docs.pipedream.com/apps/zoom/).
57
-
58
- ## Other Popular API Integrations
59
-
60
- - [Airtable](https://github.com/PipedreamHQ/pipedream/tree/master/components/airtable) ([deploy](https://pipedream.com/sources/new?app=airtable))
61
- - [AWS](https://github.com/PipedreamHQ/pipedream/tree/master/components/aws) ([deploy](https://pipedream.com/sources/new?app=aws))
62
- - [Dropbox](https://github.com/PipedreamHQ/pipedream/tree/master/components/dropbox) ([deploy](https://pipedream.com/sources/new?app=dropbox))
63
- - [Github](https://github.com/PipedreamHQ/pipedream/tree/master/components/github) ([deploy](https://pipedream.com/sources/new?app=github))
64
- - [Google Calendar](https://github.com/PipedreamHQ/pipedream/tree/master/components/google-calendar) ([deploy](https://pipedream.com/sources/new?app=google-calendar))
65
- - [Google Drive](https://github.com/PipedreamHQ/pipedream/tree/master/components/google-drive) ([deploy](https://pipedream.com/sources/new?app=google-drive))
66
- - [RSS](https://github.com/PipedreamHQ/pipedream/tree/master/components/rss) ([deploy](https://pipedream.com/sources/new?app=rss))
67
- - [Twitter](https://github.com/PipedreamHQ/pipedream/tree/master/components/twitter) ([deploy](https://pipedream.com/sources/new?app=twitter))
68
-
69
- ## Pricing
70
-
71
- Pipedream is currently free, subject to the [limits noted below](https://docs.pipedream.com/limits/). Paid tiers for higher volumes are coming soon.
72
-
73
- If you exceed any of these limits, please [reach out](https://docs.pipedream.com/support/).
74
-
75
- ## Found a Bug? Have a Feature to suggest?
76
-
77
- Before adding an issue, please search the [existing issues](https://github.com/PipedreamHQ/pipedream/issues) or [reach out to our team](https://docs.pipedream.com/support/) to see if a similar request already exists.
78
-
79
- If an issue exists, please [add a reaction](https://help.github.com/en/github/collaborating-with-issues-and-pull-requests/about-conversations-on-github) or comment on your specific use case.
36
+ - **Meeting Analytics and Reporting**: Combine Zoom's meeting ended webhook with Pipedream's capabilities to create a workflow that captures meeting details upon conclusion. With this data, you can send a summary email to the host, update a Google Sheet with attendance information, and even push the data to a BI tool like Tableau for more in-depth analysis.
@@ -4,7 +4,7 @@ export default {
4
4
  key: "zoom-add-meeting-registrant",
5
5
  name: "Add Meeting Registrant",
6
6
  description: "Registers a participant for a meeting. [See the docs here](https://marketplace.zoom.us/docs/api-reference/zoom-api/methods/#operation/meetingRegistrantCreate)",
7
- version: "0.3.0",
7
+ version: "0.3.1",
8
8
  type: "action",
9
9
  props: {
10
10
  app,
@@ -4,7 +4,7 @@ export default {
4
4
  key: "zoom-add-webinar-registrant",
5
5
  name: "Add Webinar Registrant",
6
6
  description: "Registers a participant for a webinar. [See the docs here](https://marketplace.zoom.us/docs/api-reference/zoom-api/webinars/webinarregistrantcreate).",
7
- version: "0.3.0",
7
+ version: "0.3.1",
8
8
  type: "action",
9
9
  props: {
10
10
  app,
@@ -5,7 +5,7 @@ export default {
5
5
  key: "zoom-create-meeting",
6
6
  name: "Create Meeting",
7
7
  description: "Creates a meeting for a user. A maximum of 100 meetings can be created for a user in a day.",
8
- version: "0.1.1",
8
+ version: "0.1.2",
9
9
  type: "action",
10
10
  props: {
11
11
  zoom: {
@@ -5,7 +5,7 @@ export default {
5
5
  key: "zoom-create-user",
6
6
  name: "Create User",
7
7
  description: "Creates a new user in your account.",
8
- version: "0.2.1",
8
+ version: "0.2.2",
9
9
  type: "action",
10
10
  props: {
11
11
  zoom: {
@@ -5,7 +5,7 @@ export default {
5
5
  key: "zoom-delete-user",
6
6
  name: "Delete User",
7
7
  description: "Disassociates (unlinks) a user from the associated account or permanently deletes a user.",
8
- version: "0.2.1",
8
+ version: "0.2.2",
9
9
  type: "action",
10
10
  props: {
11
11
  zoom: {
@@ -5,7 +5,7 @@ export default {
5
5
  key: "zoom-get-meeting-details",
6
6
  name: "Get Meeting Details",
7
7
  description: "Retrieves the details of a meeting.",
8
- version: "0.3.1",
8
+ version: "0.3.2",
9
9
  type: "action",
10
10
  props: {
11
11
  zoom: {
@@ -4,7 +4,7 @@ export default {
4
4
  key: "zoom-get-webinar-details",
5
5
  name: "Get Webinar Details",
6
6
  description: "Gets details of a scheduled webinar. [See the docs here](https://marketplace.zoom.us/docs/api-reference/zoom-api/methods/#operation/webinar).",
7
- version: "0.3.0",
7
+ version: "0.3.1",
8
8
  type: "action",
9
9
  props: {
10
10
  app,
@@ -5,7 +5,7 @@ export default {
5
5
  key: "zoom-list-channels",
6
6
  name: "List Channels",
7
7
  description: "List a user's chat channels.",
8
- version: "0.1.1",
8
+ version: "0.1.2",
9
9
  type: "action",
10
10
  props: {
11
11
  zoom: {
@@ -4,7 +4,7 @@ export default {
4
4
  key: "zoom-list-past-meeting-participants",
5
5
  name: "List Past Meeting Participants",
6
6
  description: "Retrieve information on participants from a past meeting. [See the docs here](https://marketplace.zoom.us/docs/api-reference/zoom-api/methods/#operation/pastMeetingParticipants).",
7
- version: "0.2.0",
7
+ version: "0.2.1",
8
8
  type: "action",
9
9
  props: {
10
10
  app,
@@ -5,7 +5,7 @@ export default {
5
5
  key: "zoom-list-past-webinar-qa",
6
6
  name: "List Past Webinar Q&A",
7
7
  description: "The feature for Webinars allows attendees to ask questions during the Webinar and for the panelists, co-hosts and host to answer their questions. Use this API to list Q&A of a specific Webinar.",
8
- version: "0.1.1",
8
+ version: "0.1.2",
9
9
  type: "action",
10
10
  props: {
11
11
  zoom: {
@@ -0,0 +1,31 @@
1
+ import zoom from "../../zoom.app.mjs";
2
+
3
+ export default {
4
+ name: "List User's Call Logs",
5
+ description: "Gets a user's Zoom phone call logs. [See the documentation](https://developers.zoom.us/docs/zoom-phone/apis/#operation/phoneUserCallLogs)",
6
+ key: "zoom-list-user-call-logs",
7
+ version: "0.0.1",
8
+ type: "action",
9
+ props: {
10
+ zoom,
11
+ userId: {
12
+ propDefinition: [
13
+ zoom,
14
+ "userId",
15
+ ],
16
+ },
17
+ },
18
+ async run ({ $ }) {
19
+ const data = await this.zoom.getResourcesStream({
20
+ resourceFn: this.zoom.listCallLogs,
21
+ resourceFnArgs: {
22
+ userId: this.userId,
23
+ },
24
+ resourceName: "call_logs",
25
+ });
26
+
27
+ $.export("$summary", `Successfully fetched ${data.length} call log(s)`);
28
+
29
+ return data;
30
+ },
31
+ };
@@ -1,11 +1,11 @@
1
- import app from "../../zoom.app.mjs";
2
1
  import utils from "../../common/utils.mjs";
2
+ import app from "../../zoom.app.mjs";
3
3
 
4
4
  export default {
5
5
  key: "zoom-list-webinar-participants-report",
6
6
  name: "List Webinar Participants Report",
7
7
  description: "Retrieves detailed report on each webinar attendee. You can get webinar participant reports for the last 6 months. [See the docs here](https://marketplace.zoom.us/docs/api-reference/zoom-api/methods/#operation/reportWebinarParticipants).",
8
- version: "0.0.1",
8
+ version: "0.0.2",
9
9
  type: "action",
10
10
  props: {
11
11
  app,
@@ -5,7 +5,7 @@ export default {
5
5
  key: "zoom-send-chat-message",
6
6
  name: "Send Chat Message",
7
7
  description: "Send chat messages on Zoom to either an individual user who is in your contact list or to a of which you are a member.",
8
- version: "0.1.1",
8
+ version: "0.1.2",
9
9
  type: "action",
10
10
  props: {
11
11
  zoom: {
@@ -5,7 +5,7 @@ export default {
5
5
  key: "zoom-update-meeting",
6
6
  name: "Update Meeting",
7
7
  description: "Updates an existing Zoom meeting",
8
- version: "0.1.1",
8
+ version: "0.1.2",
9
9
  type: "action",
10
10
  props: {
11
11
  zoom: {
@@ -5,7 +5,7 @@ export default {
5
5
  key: "zoom-update-webinar",
6
6
  name: "Update Webinar",
7
7
  description: "Update a webinar's topic, start time, or other settings",
8
- version: "0.1.1",
8
+ version: "0.1.2",
9
9
  type: "action",
10
10
  props: {
11
11
  zoom: {
@@ -5,7 +5,7 @@ export default {
5
5
  key: "zoom-view-user",
6
6
  name: "View User",
7
7
  description: "View your user information",
8
- version: "0.1.1",
8
+ version: "0.1.2",
9
9
  type: "action",
10
10
  props: {
11
11
  zoom: {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pipedream/zoom",
3
- "version": "0.4.0",
3
+ "version": "0.5.0",
4
4
  "description": "Pipedream Zoom Components",
5
5
  "main": "zoom.app.mjs",
6
6
  "keywords": [
@@ -6,7 +6,7 @@ export default {
6
6
  key: "zoom-custom-event",
7
7
  name: "Custom Events (Instant)",
8
8
  description: "Emit new events tied to your Zoom user or resources you own",
9
- version: "0.1.0",
9
+ version: "0.1.1",
10
10
  type: "source",
11
11
  dedupe: "unique",
12
12
  props: {
@@ -6,7 +6,7 @@ export default {
6
6
  key: "zoom-meeting-created",
7
7
  name: "Meeting Created (Instant)",
8
8
  description: "Emit new event each time a meeting is created where you're the host",
9
- version: "0.1.0",
9
+ version: "0.1.1",
10
10
  type: "source",
11
11
  dedupe: "unique",
12
12
  props: {
@@ -6,7 +6,7 @@ export default {
6
6
  key: "zoom-meeting-deleted",
7
7
  name: "Meeting Deleted (Instant)",
8
8
  description: "Emit new event each time a meeting is deleted where you're the host",
9
- version: "0.1.0",
9
+ version: "0.1.1",
10
10
  type: "source",
11
11
  dedupe: "unique",
12
12
  props: {
@@ -6,7 +6,7 @@ export default {
6
6
  key: "zoom-meeting-ended",
7
7
  name: "Meeting Ended (Instant)",
8
8
  description: "Emit new event each time a meeting ends where you're the host",
9
- version: "0.1.0",
9
+ version: "0.1.1",
10
10
  type: "source",
11
11
  dedupe: "unique",
12
12
  props: {
@@ -6,7 +6,7 @@ export default {
6
6
  key: "zoom-meeting-started",
7
7
  name: "Meeting Started (Instant)",
8
8
  description: "Emit new event each time a meeting starts where you're the host",
9
- version: "0.1.0",
9
+ version: "0.1.2",
10
10
  type: "source",
11
11
  dedupe: "unique",
12
12
  props: {
@@ -6,7 +6,7 @@ export default {
6
6
  key: "zoom-meeting-updated",
7
7
  name: "Meeting Updated (Instant)",
8
8
  description: "Emit new event each time a meeting is updated where you're the host",
9
- version: "0.1.0",
9
+ version: "0.1.1",
10
10
  type: "source",
11
11
  dedupe: "unique",
12
12
  props: {
@@ -6,7 +6,7 @@ export default {
6
6
  key: "zoom-phone-event",
7
7
  name: "Zoom Phone Events (Instant)",
8
8
  description: "Emit new Zoom Phone event tied to your Zoom user or resources you own",
9
- version: "0.1.0",
9
+ version: "0.1.1",
10
10
  type: "source",
11
11
  props: {
12
12
  ...common.props,
@@ -6,7 +6,7 @@ export default {
6
6
  key: "zoom-recording-completed",
7
7
  name: "Recording Completed (Instant)",
8
8
  description: "Emit new event each time a new recording completes for a meeting or webinar where you're the host",
9
- version: "0.1.0",
9
+ version: "0.1.1",
10
10
  type: "source",
11
11
  dedupe: "unique",
12
12
  props: {
@@ -6,7 +6,7 @@ export default {
6
6
  key: "zoom-webinar-created",
7
7
  name: "Webinar Created (Instant)",
8
8
  description: "Emit new event each time a webinar is created where you're the host",
9
- version: "0.1.0",
9
+ version: "0.1.1",
10
10
  type: "source",
11
11
  dedupe: "unique",
12
12
  props: {
@@ -6,7 +6,7 @@ export default {
6
6
  key: "zoom-webinar-deleted",
7
7
  name: "Webinar Deleted (Instant)",
8
8
  description: "Emit new event each time a webinar is deleted where you're the host",
9
- version: "0.1.0",
9
+ version: "0.1.1",
10
10
  type: "source",
11
11
  dedupe: "unique",
12
12
  props: {
@@ -6,7 +6,7 @@ export default {
6
6
  key: "zoom-webinar-ended",
7
7
  name: "Webinar Ended (Instant)",
8
8
  description: "Emit new event each time a webinar ends where you're the host",
9
- version: "0.1.0",
9
+ version: "0.1.1",
10
10
  type: "source",
11
11
  dedupe: "unique",
12
12
  props: {
@@ -6,7 +6,7 @@ export default {
6
6
  key: "zoom-webinar-started",
7
7
  name: "Webinar Started (Instant)",
8
8
  description: "Emit new event each time a webinar starts where you're the host",
9
- version: "0.1.0",
9
+ version: "0.1.1",
10
10
  type: "source",
11
11
  dedupe: "unique",
12
12
  props: {
@@ -6,7 +6,7 @@ export default {
6
6
  key: "zoom-webinar-updated",
7
7
  name: "Webinar Updated (Instant)",
8
8
  description: "Emit new event each time a webinar is updated where you're the host",
9
- version: "0.1.0",
9
+ version: "0.1.1",
10
10
  type: "source",
11
11
  dedupe: "unique",
12
12
  props: {
package/zoom.app.mjs CHANGED
@@ -54,6 +54,31 @@ export default {
54
54
  },
55
55
  optional: true,
56
56
  },
57
+ userId: {
58
+ type: "string",
59
+ label: "User Id",
60
+ description: "The user ID or email address of the user.",
61
+ async options({ prevContext }) {
62
+ const { nextPageToken } = prevContext;
63
+ const response = await this.listUsers({
64
+ params: {
65
+ next_page_token: nextPageToken,
66
+ },
67
+ });
68
+
69
+ return {
70
+ options: response.users.map(({
71
+ name, email, id: value,
72
+ }) => ({
73
+ label: `${name} - ${email}`,
74
+ value,
75
+ })),
76
+ context: {
77
+ nextPageToken: response.next_page_token,
78
+ },
79
+ };
80
+ },
81
+ },
57
82
  includeAudioRecordings: {
58
83
  type: "boolean",
59
84
  label: "Include Audio Recordings",
@@ -251,6 +276,20 @@ export default {
251
276
  ...args,
252
277
  });
253
278
  },
279
+ listUsers(opts = {}) {
280
+ return this._makeRequest({
281
+ path: "/phone/users",
282
+ ...opts,
283
+ });
284
+ },
285
+ listCallLogs({
286
+ userId, ...args
287
+ }) {
288
+ return this._makeRequest({
289
+ path: `/phone/users/${userId}/call_logs`,
290
+ ...args,
291
+ });
292
+ },
254
293
  async *getResourcesStream({
255
294
  resourceFn,
256
295
  resourceFnArgs,