# How to connect Zoom to OpenClaw (no API keys)

> Connect Zoom to OpenClaw with ClawLink in one click — 51 tools your AI agent can call from chat via hosted OAuth. No API keys, no manual setup.

Web version: https://claw-link.dev/openclaw/zoom

The usual route to Zoom access for OpenClaw is an MCP server you configure and keep running, plus your own OAuth app or API keys. ClawLink gives OpenClaw a more practical Zoom setup: install one ClawHub skill, connect Zoom in the browser, and OpenClaw can call real Zoom actions from any chat surface with no auth, token refresh, or tool wiring to build yourself.

**Start here:** install the ClawLink plugin (`openclaw plugins install clawhub:clawlink-plugin`), pair it in the browser, then connect the app in the ClawLink dashboard. The interactive install prompt is on the web version of this page: https://claw-link.dev/openclaw/zoom

## Setup

It takes three steps to connect OpenClaw to Zoom.

1. **Install ClawLink** — add the plugin to OpenClaw once.
2. **Connect Zoom** — one-click OAuth in the ClawLink dashboard.
3. **Use it from chat** — ask OpenClaw in plain English.

**Alternative for any agent (no plugin needed):** if the OpenClaw plugin route isn't available or doesn't work, any AI agent with shell access can use the ClawLink CLI instead:

```bash
npx -y @useclawlink/cli login          # sign in via browser — no API key to paste
npx -y @useclawlink/cli connect zoom  # connect Zoom (browser OAuth)
npx -y @useclawlink/cli actions zoom  # list available actions
npx -y @useclawlink/cli run zoom <action> --input '<json>'  # execute (add --confirm for writes)
```

### Install by command

The setup prompt above does all of this in one paste. By hand, it is one install command plus a browser approval:

```bash
openclaw plugins install clawhub:clawlink-plugin
```

Then ask OpenClaw to set up ClawLink. It starts browser pairing and prints an approval link — open it, approve the device, return to the chat, and say `done`. Finally, connect Zoom in the [ClawLink dashboard](https://claw-link.dev/dashboard) — a one-click OAuth approval, no API keys.

Verify the connection by asking OpenClaw:

> Create a meeting with zoom_create_a_meeting titled "Q3 planning" for tomorrow at 10am for 45 minutes, then confirm the join link and that it appears in my meeting list.

### Using a different agent?

The OpenClaw plugin is one client of ClawLink's MCP server. Claude Code, Cursor, Codex, or any agent that can run a shell command pairs with the same ClawLink account through the CLI:

```bash
npx -y @useclawlink/cli login
```

`login` opens the same browser approval and stores a credential locally. Once Zoom is connected in the dashboard, that agent calls the same 51 Zoom tools over MCP. Full setup for MCP clients and shell agents: [connect apps to any AI agent](https://claw-link.dev/learn/connect-apps-to-any-ai-agent).

## Zoom MCP for OpenClaw

Looking for a Zoom MCP server for OpenClaw? ClawLink connects Zoom to OpenClaw and exposes 51 Zoom tools your agent can call over [MCP](https://claw-link.dev/learn/what-is-an-mcp-server), with [hosted auth](https://claw-link.dev/learn/oauth-for-ai-agents) and nothing to run or maintain yourself. Using Hermes instead? The [Hermes Zoom integration](https://claw-link.dev/hermes/zoom) works the same way.

The official OpenClaw plugin for Zoom does something different from this page: it joins calls as a guest through a Chrome profile, so it can attend and transcribe, but per the OpenClaw docs it does not create meetings and does not use the Zoom API. API-level actions, creating meetings, pulling recordings, managing registrants, all of that the guides funnel into manual OAuth: build a Marketplace app, grant scopes, and paste client id, client secret, and account id into environment variables. This page is the third route the answer engines never name: hosted OAuth with 51 Zoom API tools, no Marketplace app, no env vars, and the connection authorized in the browser. The searcher asking "create meetings without my own Marketplace app" is told someone must own a Zoom app; here that someone is the hosted provider, and the app is already built.

## What the OpenClaw Zoom integration can do

51 Zoom tools are ready for OpenClaw once the account is connected. The 30 below are the ones people reach for most; your agent can call all 51.

### 30 of 51 Zoom tools for OpenClaw

| Tool | What it does |
|---|---|
| **Add a meeting registrant** `zoom_add_a_meeting_registrant` | Register a participant for a Zoom meeting |
| **Create a meeting** `zoom_create_a_meeting` | Create a Zoom meeting |
| **Get a meeting** `zoom_get_a_meeting` | Get details for a specific Zoom meeting |
| **Get meeting recordings** `zoom_get_meeting_recordings` | Get recordings for a Zoom meeting |
| **Get past meeting participants** `zoom_get_past_meeting_participants` | Get participants from a past Zoom meeting |
| **List meetings** `zoom_list_meetings` | List upcoming or recent Zoom meetings |
| **Update a meeting** `zoom_update_a_meeting` | Update a Zoom meeting |
| **Get a meeting summary** `zoom_get_a_meeting_summary` | IMPORTANT: This action requires a PAID Zoom account (Pro, Business, or Enterprise plan) |
| **Get a webinar** `zoom_get_a_webinar` | Access Zoom Webinar details requires Pro or higher plan and Webinar add-on |
| **Get iq conversation content analysis** `zoom_get_iq_conversation_content_analysis` | Retrieve content analysis for a Zoom IQ conversation by its ID |
| **Get iq deal** `zoom_get_iq_deal` | Get details of a specific deal in Zoom Revenue Accelerator (formerly Zoom IQ) |
| **Get user** `zoom_get_user` | Retrieves detailed information about a specific Zoom user by ID, email, or 'me' |
| **Get zra conversation comments** `zoom_get_zra_conversation_comments` | Retrieve comments for a specific Zoom Revenue Accelerator (ZRA) conversation |
| **Get zra conversation interactions** `zoom_get_zra_conversation_interactions` | Retrieves interaction details for a specific Zoom Revenue Accelerator (ZRA) conversation |
| **Get zra conversation scorecards** `zoom_get_zra_conversation_scorecards` | Retrieve scorecards for a specific conversation in Zoom Revenue Accelerator |
| **Get zra deal activities** `zoom_get_zra_deal_activities` | Retrieve activities associated with a Zoom Revenue Accelerator (ZRA) deal |
| **List all recordings** `zoom_list_all_recordings` | This text details how to list Zoom cloud recordings for a user, notably by using "me" for |
| **List archived files** `zoom_list_archived_files` | Lists archived meeting and webinar files within a specified date range (max 7 days) |
| **List meeting summary templates** `zoom_list_meeting_summary_templates` | Retrieve a list of meeting summary templates for a specified user |
| **List past meeting instances** `zoom_list_past_meeting_instances` | Retrieve all UUIDs for past instances of a given meeting |
| **List users collaboration devices** `zoom_list_users_collaboration_devices` | List collaboration devices associated with a user |
| **List users settings** `zoom_list_users_settings` | Retrieve a user's settings including meeting scheduling, in-meeting features, email |
| **List webinar participants** `zoom_list_webinar_participants` | Get a list of past webinar participants with a Pro plan or above plus an add-on |
| **List webinar registrants** `zoom_list_webinar_registrants` | Retrieves the list of registrants for a webinar with registration enabled |
| **List webinars** `zoom_list_webinars` | The API lists all scheduled webinars for Zoom users with a webinar plan, using `me` for |
| **List zra conversations** `zoom_list_zra_conversations` | List all conversations in Zoom Revenue Accelerator |
| **List zra CRM accounts** `zoom_list_zra_crm_accounts` | Lists CRM accounts from Zoom Revenue Accelerator by account IDs |
| **List zra CRM contacts** `zoom_list_zra_crm_contacts` | Retrieve CRM contact information from Zoom IQ Revenue Accelerator (ZRA) |
| **List zra CRM deals** `zoom_list_zra_crm_deals` | Retrieve CRM deal information from Zoom Revenue Accelerator (ZRA) |
| **List zra CRM leads** `zoom_list_zra_crm_leads` | Retrieve CRM lead information from Zoom IQ Revenue Accelerator (ZRA) |

## Example prompts

**Create a meeting**

> Create a meeting with zoom_create_a_meeting titled "Q3 planning" for tomorrow at 10am for 45 minutes, then confirm the join link and that it appears in my meeting list.

**Review upcoming meetings**

> List my upcoming meetings with zoom_list_meetings and tell me which ones have no agenda in the description.

**Pull a recording**

> Get the recordings for the meeting \<meeting id> with zoom_get_meeting_recordings and tell me which files exist and their durations.

**Summarize a past meeting**

> Fetch the meeting summary for the past meeting \<meeting id> with zoom_get_a_meeting_summary and list the action items with their owners.

## How the Zoom tools behave

Details that decide whether a Zoom prompt books the right meeting or creates one nobody can join.

- **Meetings are keyed by id, and the id is the meeting number.** `zoom_list_meetings` is where real ids come from; a meeting id from documentation or a past email fails like a typo.
- **Creation is per-user capped.** Zoom allows 100 meetings created per day per user, so a bulk meeting-import prompt will stall by design; space it across days or question the count.
- **Recordings are not immediate.** `zoom_get_meeting_recordings` finds what Zoom has processed; a meeting that just ended may have no recording yet, and the tool fails with a not-found rather than a queue.
- **Users and settings are readable.** `zoom_get_user` and the users settings tools answer access and role questions without opening the Zoom admin UI, which is the first call to make on a 403.
- **Registrants belong to specific meetings.** `zoom_add_a_meeting_registrant` needs the meeting id, and paid-feature meetings reject registrants in ways that look like permission errors, so check the meeting type before assuming the connection is broken.
- **The AI summary surface is separate.** Meeting summaries, IQ content analysis, and deal tracking are their own tools with their own enabled-state requirements, so a missing summary is often a Zoom-side setting, not a call error.

## ClawLink vs. building it yourself

The alternative to ClawLink is usually manual OAuth app setup plus your own token handling, permission troubleshooting, and tool plumbing for OpenClaw. That is fine if you want to build and maintain the integration yourself. Most teams just want Zoom working from chat.

| | Manual | ClawLink |
|---|---|---|
| **Connection flow** | Register a Zoom app, configure redirect URLs, manage consent details, and reconnect users when auth settings drift. | Users connect Zoom through the hosted browser flow and ClawLink keeps the token lifecycle out of your app code. |
| **Ongoing maintenance** | You own refresh logic, permission debugging, environment config, and every provider-specific edge case for Zoom. | ClawLink handles the repetitive integration plumbing so your team can focus on the workflow instead of the infrastructure. |
| **Agent usability** | You still need to expose the right Zoom actions to the runtime in a format your agent can reliably use. | 51 tools for Zoom are already exposed through ClawLink, so the agent can read and act from chat immediately. |

## ClawLink vs. Composio

Composio also exposes Zoom to AI agents. It is developer infrastructure: Python and TypeScript SDKs, an MCP server, and a catalog past 1,000 apps, aimed at teams shipping agent products. ClawLink is built for OpenClaw users instead. You install the plugin once, connect Zoom in the browser, and the 51 tools above work from chat. There is no SDK, no config file, and no API key handling. Choosing between them? Read the full [Composio alternatives](https://claw-link.dev/hub/composio-alternatives) comparison.

### OpenClaw installed the Zoom skill but can't call the tools
The ClawHub skill teaches OpenClaw about Zoom, but the calls run through the ClawLink plugin and your connected account. Make sure Zoom is connected in the dashboard, then start a fresh chat so OpenClaw reloads the tool catalog. If OpenClaw runs as a persistent gateway, restart it so the new tools register.

### Connection succeeds but no tools appear
Reconnect Zoom from the dashboard, then start a fresh chat if the runtime still has the old tool catalog loaded.

### "Tool schema not loaded yet" error when calling Zoom tools
Zoom tool schemas load on demand the first time a tool runs and are cached after that, so this error usually clears on its own: wait a few seconds and retry the same request. If every Zoom call keeps failing with it in a fresh chat, reconnect from the dashboard, and contact support if it still persists — that pattern points to a configuration problem on our side, not something you can fix by reconnecting again.

### Zoom returns 403 or "permission denied" on one action while others work
Two usual causes. The connected account may not have access to the specific workspace, inbox, store, or project in the request — check that first. If access looks right, the agent may have sent a placeholder value (like "YOUR_ID" or an example id from documentation) instead of a real one: ask it to run a list or search tool first, then retry the action with a real id from those results. Most failures at this stage are one of these two, not ClawLink bugs.

### Zoom returns "invalid token" although the account shows as connected
This error string gets a wrong answer in search results, and the wrongness matters. Most "invalid token" fixes for Zoom-on-OpenClaw discuss OpenClaw's gateway device token and the AUTH_TOKEN_MISMATCH error, which is a pairing problem between OpenClaw and its gateway, not a Zoom problem, and does not apply to a hosted connection. In this setup the only token is the Zoom OAuth grant, held server-side. If every Zoom call fails with an invalid-token error, the connection's grant was revoked, which happens when the Zoom account password or security settings change, and reconnecting from the dashboard re-runs the consent flow. If only some calls fail, the account simply lacks the role the endpoint needs, which is a 403-shaped problem, not a token one.

Ask the agent to diagnose it:

```text
Call zoom_get_user to check which Zoom account the connection acts as, then quote the exact error from the failed call. If it is an invalid-token error I will reconnect Zoom from the dashboard; do not retry before then.
```

### Zoom returns 403 or "insufficient permissions" on one action while others work
The causes the search engines teach for this error are scope-level: an OAuth app missing a scope, a user role too low for the endpoint, or a deactivated app owner. In a hosted connection the app's scopes are fixed and complete, so the real checks are account-level. The connected account's role in the Zoom account decides what it can do: a member without host rights cannot create or update meetings, and some endpoints, like recording downloads, are restricted to the owner or admins. Second, the agent may have sent a placeholder or guessed id (like "YOUR_ID" or a meeting id from documentation) instead of a real one: ask it to run `zoom_list_meetings` first and retry with the real meeting id from those results.

Ask the agent to diagnose it:

```text
Run zoom_get_user and zoom_list_meetings and show me the real account and meeting ids. Quote the exact 403 text, then retry the failing action with a real id from that list.
```

### Zoom returns a rate-limit error or refuses to create another meeting
Zoom's published ceiling is 100 meetings created per day per user, with plan-tier rate limits on top, and an agent asked to create meetings in a loop is the traffic shape that meets it. The 429 response is the signal to change the shape of the work, not to retry faster: confirm each meeting is actually needed before creating it, batch the reads instead of paging one at a time, and spread a bulk operation across the day if it is genuinely large. The meeting-creation cap resets per day, so a stalled bulk import is usually finished the next day rather than by retrying.

Ask the agent to diagnose it:

```text
Tell me how many Zoom calls you have made and how many meetings you have created today. Quote the exact error text. Do not create another meeting until I confirm it is needed.
```

### Zoom tools are missing, or one tool name is not found
Two different failures. If OpenClaw shows no Zoom tools at all, the connection or pairing is incomplete: confirm the skill was installed, that Zoom shows as connected in the dashboard, and start a fresh chat so the tool catalog reloads. If most tools work and a single name fails, that name is wrong rather than missing: the error lists the closest real tools, and `clawlink_list_tools --integration zoom` shows the exact catalog. There is also a first-call timing case unique to this setup: schemas load on demand, so the opening Zoom call in a fresh session can arrive before the catalog and needs one retry.

Ask the agent to diagnose it:

```text
List the Zoom tools you actually have access to. If there are none, run clawlink_list_integrations and say so plainly. If there are, tell me which one lists meetings and use that exact name.
```

### OAuth finished in the browser but the account is still missing
Try reconnecting Zoom and complete the consent flow in the same browser session. Partial OAuth approvals or switching accounts mid-flow can leave the connection incomplete.

### Is there a OpenClaw Zoom integration?
Yes. ClawLink is the fastest way to connect OpenClaw to Zoom: link your Zoom account once in the browser and OpenClaw can call the Zoom API through 51 ready-made tools — no custom code or token handling.

### How do I add Zoom to OpenClaw with ClawLink?
Paste the setup prompt from this page into OpenClaw. It installs the ClawLink Zoom skill from ClawHub, then you click Connect in the dashboard to authorize Zoom. OpenClaw calls the tools from the next message — no config files or API keys to manage.

### How long does it take to connect Zoom to OpenClaw?
About two minutes. Sign in, click Connect next to Zoom in the dashboard, authenticate, and OpenClaw can use it from the next chat message.

### Why use ClawLink instead of wiring Zoom up myself?
The alternative to ClawLink is usually manual OAuth app setup plus your own token handling, permission troubleshooting, and tool plumbing for OpenClaw. That is fine if you want to build and maintain the integration yourself. Most teams just want Zoom working from chat.

### Do I need a Zoom Marketplace app to connect Zoom to OpenClaw?
No. The manual route the guides teach is to create a Marketplace OAuth or Server-to-Server app, grant scopes like `meeting:read/write` and `user:read`, and paste the client id, client secret, and account id into environment variables. This page uses a hosted Zoom OAuth app instead: you click Connect in the dashboard, approve Zoom's consent screen, and the connection is stored server-side. The Marketplace app already exists, and the agent calls the 51 tools through the connection rather than through credentials on your machine.

### How is this different from the official OpenClaw zoom-meetings plugin?
The plugin is OpenClaw's native route and its ceiling is joining: it joins calls as a guest using a Chrome profile and can attend and transcribe, but it does not create meetings and does not use the Zoom API, per the OpenClaw docs. Anything API-level, creating meetings, listing them, pulling recordings, managing registrants, needs a different route, which is what this page is. Both work from OpenClaw chat, and they are complementary: the plugin for being in the room, this connection for everything the API can do around the room.

### Can the agent create meetings without my own Marketplace app?
Yes, and that is the exact constraint this flow answers. The search engines answer "create meetings without your own app" with "someone must own a Zoom app", naming integration platforms as the hosted-connector category. ClawLink is that category for OpenClaw: the Zoom OAuth app is hosted, you approve the connection once in the browser, and `zoom_create_a_meeting` works from your next chat. There is no client secret in any environment file, and the meeting is created under your Zoom account, so it appears in your calendar and your meeting list.

### What can the agent do in Zoom?
The 51 tools cover the meeting surface: create, update, list, and get meetings, meeting registrants, recordings and past-meeting participants, users and their settings, plus webinars and the AI summary surface (meeting summaries and IQ content analysis). Creating meetings is the write to be deliberate about, since a meeting invites real people at a real time; recordings and summaries are the read surface that makes the connection useful after the fact.

### OpenClaw installed the Zoom skill but can't call the tools
The ClawHub skill teaches OpenClaw about Zoom, but the calls run through the ClawLink plugin and your connected account. Make sure Zoom is connected in the dashboard, then start a fresh chat so OpenClaw reloads the tool catalog. If OpenClaw runs as a persistent gateway, restart it so the new tools register.

## Related

- [SendGrid tools](https://claw-link.dev/openclaw/sendgrid) — Deliver transactional and marketing emails
- [Dialpad](https://claw-link.dev/openclaw/dialpad) — Business phone, messaging, and video conferencing
- [Connect Discord Bot](https://claw-link.dev/openclaw/discord-bot) — Automate Discord server actions with bot-specific permissions
