Zoom API Integration

Pro v1.0.0

Manage Zoom meetings, users, recordings, and webinars programmatically via the Zoom REST API

Requires Claude Code CLI

This skill integrates with Zoom through Claude Code. Install Claude Code and add this skill to use it.

Available Actions

List Meetings

Retrieve all scheduled meetings for a specific user

Parameters

Name Type Required Description
user_id string Required User ID or email address. Use 'me' for authenticated user

Returns

object List of meetings with details including ID, topic, start time, and join URL

Try saying...

  • "Show me all upcoming Zoom meetings"
  • "List my scheduled Zoom meetings"
  • "What Zoom meetings do I have?"

Create Meeting

Schedule a new Zoom meeting

Parameters

Name Type Required Description
user_id string Required User ID or email. Use 'me' for authenticated user
topic string Required Meeting title/topic
duration integer Optional Meeting duration in minutes

Returns

object Created meeting details including meeting ID, start URL, join URL, and password

Try saying...

  • "Create a Zoom meeting called 'Project Review'"
  • "Schedule a 30 minute Zoom meeting for the team"
  • "Set up a new Zoom meeting"

Get Meeting Details

Retrieve detailed information about a specific meeting

Parameters

Name Type Required Description
meeting_id string Required The meeting ID or UUID

Returns

object Full meeting details including settings, participants, and URLs

Try saying...

  • "Get details for Zoom meeting 123456789"
  • "Show me information about meeting ID 123456789"
  • "What are the details of this Zoom meeting?"

Delete Meeting

Cancel and delete a scheduled meeting

Parameters

Name Type Required Description
meeting_id string Required The meeting ID to delete

Returns

string Confirmation message

Try saying...

  • "Delete Zoom meeting 123456789"
  • "Cancel meeting ID 123456789"
  • "Remove this Zoom meeting"

List Recordings

Get all cloud recordings for a user

Parameters

Name Type Required Description
user_id string Required User ID or email. Use 'me' for authenticated user

Returns

object List of recordings with download URLs and metadata

Try saying...

  • "Show all Zoom recordings"
  • "List my recorded Zoom meetings"
  • "What recordings do I have?"

List Users

Get all users in the Zoom account (requires admin privileges)

Returns

object List of users with email, name, and status

Try saying...

  • "List all Zoom users"
  • "Show me all users in my Zoom account"
  • "Who are the Zoom users?"

Getting Started

OAuth 2.0 Moderate Setup
  1. 1 Go to Zoom App Marketplace: https://marketplace.zoom.us/develop/create
  2. 2 Click 'Create' and select 'Server-to-Server OAuth'
  3. 3 Fill in app details (name, company, developer contact)
  4. 4 Copy your Account ID, Client ID, and Client Secret
  5. 5 Add required scopes: meeting:write:admin, meeting:read:admin, user:read:admin, recording:read:admin
  6. 6 Activate your app
  7. 7 Add credentials to shell config: echo 'export ZOOM_ACCOUNT_ID="YOUR_ID"' >> ~/.zshrc
  8. 8 Add Client ID: echo 'export ZOOM_CLIENT_ID="YOUR_ID"' >> ~/.zshrc
  9. 9 Add Client Secret: echo 'export ZOOM_CLIENT_SECRET="YOUR_SECRET"' >> ~/.zshrc
  10. 10 Restart terminal or run: source ~/.zshrc

Verify Setup

source ~/.config/claude-skills/zoom-api/.venv/bin/activate && python /workspace/webserver/lib/smartvox/skill_hub/skills/zoom-api/scripts/client.py list-users

Success: Returns JSON with users list

Security & Access

Access Scope

Full access to meetings, users, recordings, and webinars based on configured OAuth scopes. Can create, read, update, and delete resources in your Zoom account.

  • Server-to-Server OAuth apps have account-level access - be careful with permissions
  • Only grant the minimum scopes needed for your use case
  • Client Secret provides full API access - keep it secure and never commit to version control
  • Access tokens are cached in memory for 55 minutes for performance
  • Anyone with your credentials can manage your Zoom account via the API

Limitations

  • Cannot access in-meeting controls (mute participants, current speaker, etc.)
  • Some endpoints require admin-level privileges
  • Access tokens expire after 1 hour (automatically refreshed by client)
  • Rate limits vary based on account subscription level

Get This Skill

Requires Pro subscription ($9/month)

Quick Reference

Type
REST API
Auth
OAuth 2.0
Setup
Moderate Setup
Tools Required
Bash
Python Dependencies
requests>=2.28.0

Have Feedback?

Help us improve this skill by sharing your ideas and suggestions.

Request Improvements