Zoom
Service domainVIDEO CONFERENCING
Arcade Optimized
Arcade.dev LLM tools for Zoom
6tools
Zoom toolkit for Arcade provides LLM tools to interact with a user's Zoom account — retrieving meeting metadata, recordings, transcripts, summaries, and identity over an authenticated OAuth connection.
Capabilities
- Meeting discovery: Search across scheduled, recorded, and ad-hoc recurring meetings by phrase, date range, or meeting ID; handles pagination, ambiguous results, and calendar coverage limits (upcoming window up to 90 days, invited-only coverage up to 24 h).
- Meeting content retrieval: Read AI Companion meeting summaries and transcripts (from cloud recordings or AI Companion, whichever is available); distinguishes "no content" from "meeting not found" and enforces occurrence-level precision for recurring series.
- Recording access: Fetch share links, passcodes, and per-file play/download URLs for past cloud recordings; safely reports meetings with no recording rather than raising.
- Invitation notes: Retrieve Zoom's ready-to-paste invitation text for a meeting; distinguishes ad-hoc/instant meetings (no invitation) from unknown meeting IDs.
- Identity resolution: Identify the authenticated Zoom user to ground possessive references (e.g., "my meetings") before acting on them.
OAuth
This toolkit uses OAuth 2.0 via the Zoom provider. See the Arcade Zoom auth provider docs for configuration details.
Available tools(6)
6 of 6 tools
Operations
Behavior
| Tool name | Description | Secrets | |
|---|---|---|---|
Retrieve the invitation note for a specific Zoom meeting.
The note is Zoom's own wording and is ready to paste into a message. A meeting
Zoom holds no invitation for -- one started instantly or ad hoc, which is
typically the meeting that just ended -- is reported as a normal result
carrying the reason, so it is not mistaken for a meeting that never happened.
An identifier matching no meeting at all still raises. | |||
Get a past Zoom meeting's cloud recording as links that can be forwarded.
Use this when someone missed a meeting and wants to watch it, rather than
reading its transcript: it returns the share link and passcode to send them,
alongside the per-file play and download urls. A meeting with no recording is
reported as a normal result carrying the reason, while an identifier matching no
meeting raises. An occurrence uuid is answered about that occurrence and no
other, so an identifier that leaves the occurrence open is refused rather than
answered with whichever run happened most recently. | |||
Read the AI Companion meeting summary of a past Zoom meeting.
A meeting with no summary is reported as a normal result carrying the reason,
so the caller can say so plainly, or reach for the meeting's transcript or its
attendance, instead of treating it as a failure. An identifier matching no
meeting raises instead, so "no summary" is never claimed about a meeting that
does not exist. An occurrence uuid is answered about that occurrence and no
other, so an identifier that leaves the occurrence open is refused rather than
answered with whichever run happened most recently. | |||
Read the transcript of a past Zoom meeting.
The transcript comes from the meeting's cloud recording when one exists, and
otherwise from the AI Companion transcript Zoom keeps when the account's meeting
transcript setting is on, with or without a meeting summary, so a meeting that
was never cloud-recorded is still readable; source says which was read. That
makes it worth calling for any past meeting the user asks about, whether or not a
listing showed a recording for it. A meeting with no transcript to read is
reported as a normal result carrying the reason, so the caller can say so
plainly, or reach for the meeting's summary or its attendance, instead of
treating it as a failure. An identifier matching no meeting raises instead, so
"never recorded" is never claimed about a meeting that does not exist. An
occurrence uuid is answered about that occurrence and no other, so an identifier
that leaves the occurrence open is refused rather than answered with whichever
run happened most recently. | |||
Find the Zoom meetings a user means, from a phrase, a period, or a meeting id.
Use this single call for every "which meeting" question rather than listing
history and matching topics yourself. It reads all three of the records Zoom
splits a meeting across -- meetings scheduled ahead of time, meetings it knows
only through their cloud recording, and the runs of meetings that recur with no
fixed time -- so a standing 1:1 is as findable as a scheduled one.
For what is on the user's calendar or whether they are free, set when to
UPCOMING: the window is the next 24 hours by default, or any window up to 90
days ahead. Zoom lists meetings the user is merely invited to only 24 hours
ahead, so a window past that reports invited_coverage_end, and fixed-time
recurring series are named in recurring_series; an empty stretch past that
boundary, or beside a named series, is not a free calendar. Only the signed-in
user's own meetings can be read: Zoom does not let this connection read another
user's calendar.
A call started ad hoc or from a personal meeting room is listed only when it was
cloud-recorded, because Zoom keeps no listing of the others; for one of those,
ask the user for the meeting id or join link, which the transcript and summary
tools take directly. A row's has_transcript speaks for its cloud recording alone: a meeting
with no recording, or a recording with no transcript file, can still have an AI
Companion transcript, so a transcript request keeps only_recorded false and asks
the transcript tool rather than that flag.
Every candidate strong enough to act on is reported rather than one being picked
silently, so an ambiguous or weak phrase can be taken back to the user, and a
period in which nothing ran is an empty listing rather than a failure.
Give a phrase to rank the account's meetings against it, a meeting_id to list one
meeting's past runs, or neither to list the whole period. Results are paginated:
while next_cursor is non-empty it is passed back verbatim to reach the rest. A
period too wide for one call is covered from its newest end, and next_to_date is
then the to_date to call again with to reach the older part. | |||
Identify the Zoom user the connection is authenticated as.
Call this to ground a possessive reference like "my meetings" before acting
on it. |
Last updated on