Generated banner for Build Zoom Rest API App
Generated logo for Build Zoom Rest API App

Build Zoom Rest API App

OpenAIOfficialCreated by ZoomDistributed by OpenAI

  • Skill
  • Tool integration
  • Software development
  • MIT
  • Medium risk

From the author

Use when calling REST APIs.
— the description by Zoom

AutoGineer summary

Written by AutoGineer from the skill’s own files, not by the author

This skill provides a structured approach to interacting with the Zoom REST API. It offers guidance on selecting appropriate authentication flows, managing resources such as meetings and users, and implementing robust API interaction patterns like pagination and rate-limit handling. It includes reference documentation for various Zoom product areas, including account management and AI Companion services, to assist developers in building API-integrated applications.

What it does

  • Provides endpoint inventories for Zoom API product areas.
  • Outlines authentication requirements for user-level, account-level, and server-to-server workflows.
  • Defines patterns for implementing API wrappers with pagination and retry logic.
  • Offers guidance on webhook processing, including signature verification.
  • Assists in troubleshooting common API issues like scope mismatches and rate limits.

When to use it

  • When developing applications that need to programmatically manage Zoom meetings, users, or recordings.
  • When integrating Zoom account settings or dashboard metrics into custom software.
  • When setting up event-driven workflows using Zoom webhooks.
  • When debugging authentication or scope-related errors during Zoom API integration.

Advantages

  • Centralizes access to official Zoom API endpoint documentation.
  • Standardizes the implementation of API interaction patterns.
  • Clarifies the selection of correct authentication scopes for different API operations.
  • Provides a clear methodology for handling API rate limits and resource management.

Usage examples

“How do I list meeting participants using the Zoom API?”
The agent provides the correct endpoint path from the dashboard references and explains the necessary OAuth scopes and pagination requirements.
“What authentication should I use for an account-level Zoom integration?”
The agent guides you through the account-level OAuth flow requirements as defined in the authentication documentation.

Install

  1. Download the skill as a ZIP:

    https://mp-staging.autogineer.com/agent-skills/openai/build-zoom-rest-api-app/download
  2. Unzip it into the cross-client skills folder of your project:

    mkdir -p .agents/skills && unzip build-zoom-rest-api-app.zip -d .agents/skills

Documentation by Zoom

Build Zoom REST API App

Use this skill when the task needs deterministic Zoom API calls or resource management from application code.

Workflow

  1. Define the resource and actor: user, meeting, webinar, recording, docs, chat, phone, account, or admin-level workflow.

  2. Select the endpoint and required scopes from the reference files before coding.

  3. Confirm auth fit: user-level OAuth for user-owned resources, account-level OAuth for admin workflows, and only use server-to-server OAuth where the target API documents support for it.

  4. Implement narrow API wrappers with explicit pagination, retry, idempotency, and rate-limit handling.

  5. Treat webhook processing as a separate event-ingestion path with signature verification and replay protection.

  6. Debug by checking token audience, missing scopes, resource ownership, account settings, API enablement, and rate-limit headers.

References

Files

references/team-chat.md

Zoom Team Chat API

Authoritative endpoint inventory for Team Chat. This file mirrors the official Zoom API Hub OpenAPI document for this product area.

Canonical Source

Notes

  • Endpoint methods and paths below are generated from the official Zoom API Hub paths object.

  • Scope names are defined per operation and frequently use granular scope names. Check the API Hub operation page for the exact scopes before implementation.

  • Use this file for endpoint discovery and inventory. Use ../examples/ for orchestration patterns, not as the canonical source of path names.

Coverage

MetricValue
Endpoint operations107
Path templates69
Tags16

Tag Index

TagOperations
Chat Channel Mention Group7
Chat Channels16
Chat Channels (Account-level)16
Chat Emoji3
Chat Files4
Chat Messages15
Chat Migration7
Chat Reminder3
Chat Sessions2
Contacts3
IM Chat1
IM Groups8
Invitations1
Legal Hold6
Reports2
Shared Spaces13

Endpoints by Tag

Chat Channel Mention Group
MethodEndpointSummaryOperation ID
GET/chat/channels/{channelId}/mention_groupList channel mention groupsgetChannelMentionGroup
POST/chat/channels/{channelId}/mention_groupCreate a channel mention groupcreateChannelMentionGroup
DELETE/chat/channels/{channelId}/mention_group/{mentionGroupId}Delete a channel mention groupdeleteAChannelMentionGroup
PATCH/chat/channels/{channelId}/mention_group/{mentionGroupId}Update a channel mention group informationupdateChannelMentionGroup
DELETE/chat/channels/{channelId}/mention_group/{mentionGroupId}/membersRemove channel mention group membersremoveChannelMentionGroupMembers
GET/chat/channels/{channelId}/mention_group/{mentionGroupId}/membersList the members of a mention grouplistTheMembersOfMentionGroup
POST/chat/channels/{channelId}/mention_group/{mentionGroupId}/membersAdd channel members to a mention groupaddAChannelMembersToMentionGroup
Chat Channels
MethodEndpointSummaryOperation ID
GET/chat/activities/channelsList channel activity logslistAllChannelActivityLogs
PATCH/chat/channels/eventsPerform operations on channelsPerformOperationsOnChannels
DELETE/chat/channels/{channelId}Delete a channeldeleteUserLevelChannel
GET/chat/channels/{channelId}Get a channelgetUserLevelChannel
PATCH/chat/channels/{channelId}Update a channelupdateUserLevelChannel
DELETE/chat/channels/{channelId}/membersBatch remove members from a channelbatchRemoveChannelMembers
GET/chat/channels/{channelId}/membersList channel memberslistUserLevelChannelMembers
POST/chat/channels/{channelId}/membersInvite channel membersInviteUserLevelChannelMembers
GET/chat/channels/{channelId}/members/groupsList channel members (Groups)listChannelMembersGroups
POST/chat/channels/{channelId}/members/groupsInvite channel members (Groups)inviteChannelMembersGroups
DELETE/chat/channels/{channelId}/members/groups/{groupId}Remove a member (group)removeAMemberGroup
DELETE/chat/channels/{channelId}/members/meLeave a channelleaveChannel
POST/chat/channels/{channelId}/members/meJoin a channeljoinChannel
DELETE/chat/channels/{channelId}/members/{identifier}Remove a memberremoveAUserLevelChannelMember
GET/chat/users/{userId}/channelsList user's channelsgetChannels
POST/chat/users/{userId}/channelsCreate a channelcreateChannel
Chat Channels (Account-level)
MethodEndpointSummaryOperation ID
GET/chat/channelsList account's public channelsgetAccountChannels
POST/chat/channels/searchSearch user's or account's channelssearchChannels
GET/chat/channels/{channelId}/activitiesList channel activity logslistChannelActivityLogs
GET/chat/channels/{channelId}/retentionGet retention policy of a channelgetChannelRetention
PATCH/chat/channels/{channelId}/retentionUpdate retention policy of a channelupdateChannelRetention
DELETE/chat/users/{userId}/channelsBatch delete channelsbatchDeleteChannelsAccountLevel
DELETE/chat/users/{userId}/channels/{channelId}Delete a channeldeleteChannel
GET/chat/users/{userId}/channels/{channelId}Get a channelgetChannel
PATCH/chat/users/{userId}/channels/{channelId}Update a channelupdateChannel
DELETE/chat/users/{userId}/channels/{channelId}/adminsBatch demote channel administratorsbatchDemoteChannelAdministrators
GET/chat/users/{userId}/channels/{channelId}/adminsList channel administratorslistChannelAdministrators
POST/chat/users/{userId}/channels/{channelId}/adminsPromote channel members to administratorspromoteChannelMembersAsAdmin
DELETE/chat/users/{userId}/channels/{channelId}/membersBatch remove members from a user's channelbatchRemoveUserChannelMembers
GET/chat/users/{userId}/channels/{channelId}/membersList channel memberslistChannelMembers
POST/chat/users/{userId}/channels/{channelId}/membersInvite channel membersinviteChannelMembers
DELETE/chat/users/{userId}/channels/{channelId}/members/{identifier}Remove a memberremoveAChannelMember
Chat Emoji
MethodEndpointSummaryOperation ID
GET/chat/emojiList custom emojislistCustomEmojis
POST/chat/emoji/filesAdd a custom emojiaddACustomEmoji
DELETE/chat/emoji/{fileId}Delete a custom emojiDeleteCustomEmoji
Chat Files
MethodEndpointSummaryOperation ID
DELETE/chat/files/{fileId}Delete a chat filedeleteChatFile
GET/chat/files/{fileId}Get file infogetFileInfo
POST/chat/users/{userId}/filesUpload a chat fileuploadAChatFile
POST/chat/users/{userId}/messages/filesSend a chat filesendChatFile
Chat Messages
MethodEndpointSummaryOperation ID
PATCH/chat/channel/message/eventsPerform operations on the message of channelPerformMessageOfChannel
GET/chat/channels/{channelId}/pinnedList pinned history messages of channellistChannelPinnedMessages
GET/chat/forwarded_message/{forwardId}Get a forwarded messagegetForwardedMessage
GET/chat/messages/bookmarksList bookmarksfetchBookmarks
PATCH/chat/messages/bookmarksAdd or remove a bookmarkaddOrRemoveABookmark
GET/chat/messages/scheduleList scheduled messageslistScheduledMessages
DELETE/chat/messages/schedule/{draftId}Delete a scheduled messagedeleteScheduleMessage
GET/chat/users/{userId}/messagesList user's chat messagesgetChatMessages
POST/chat/users/{userId}/messagesSend a chat messagesendaChatMessage
DELETE/chat/users/{userId}/messages/{messageId}Delete a messagedeleteChatMessage
GET/chat/users/{userId}/messages/{messageId}Get a messagegetChatMessage
PUT/chat/users/{userId}/messages/{messageId}Update a messageeditMessage
PATCH/chat/users/{userId}/messages/{messageId}/emoji_reactionsReact to a chat messagereactMessage
PATCH/chat/users/{userId}/messages/{messageId}/statusMark message read or unreadmarkMessage
GET/chat/users/{userId}/messages/{messageId}/threadRetrieve a threadretrieveThread
Chat Migration
MethodEndpointSummaryOperation ID
POST/chat/migration/channels/{channelId}/membersMigrate channel membersMigrateChannelMembers
POST/chat/migration/emoji_reactionsMigrate chat message reactionsMigrateChatMessageReactions
GET/chat/migration/mappings/channelsGet migrated Zoom channel IDsgetMigrationChannelsMapping
GET/chat/migration/mappings/usersGet migrated Zoom user IDsgetMigrationUsersMapping
POST/chat/migration/messagesMigrate chat messagesMigrateChatMessages
POST/chat/migration/users/{identifier}/channelsMigrate a chat channelMigrateAChatChannel
POST/chat/migration/users/{identifier}/eventsMigrate 1:1 conversation or channel operationsMigrate1:1ConversationOrChannelOperations
Chat Reminder
MethodEndpointSummaryOperation ID
DELETE/chat/messages/{messageId}/reminderDelete a reminder for a messagedeleteReminderForMessage
POST/chat/messages/{messageId}/reminderCreate a reminder messagecreateReminderForMessage
GET/chat/reminderList reminderslistReminders
Chat Sessions
MethodEndpointSummaryOperation ID
PATCH/chat/users/{userId}/eventsStar or unstar a channel or contact userstarUnstarChannelContact
GET/chat/users/{userId}/sessionsList a user's chat sessionsgetChatSessions
Contacts
MethodEndpointSummaryOperation ID
GET/chat/users/me/contactsList user's contactsgetUserContacts
GET/chat/users/me/contacts/{identifier}Get user's contact detailsgetUserContact
GET/contactsSearch company contactssearchCompanyContacts
IM Chat
MethodEndpointSummaryOperation ID
POST/im/users/me/chat/messagesSend IM messagessendimmessages
IM Groups
MethodEndpointSummaryOperation ID
GET/im/groupsList IM directory groupsimGroups
POST/im/groupsCreate an IM directory groupimGroupCreate
DELETE/im/groups/{groupId}Delete an IM directory groupimGroupDelete
GET/im/groups/{groupId}Retrieve an IM directory groupimGroup
PATCH/im/groups/{groupId}Update an IM directory groupimGroupUpdate
GET/im/groups/{groupId}/membersList IM directory group membersimGroupMembers
POST/im/groups/{groupId}/membersAdd IM directory group membersimGroupMembersCreate
DELETE/im/groups/{groupId}/members/{memberId}Delete IM directory group memberimGroupMembersDelete
Invitations
MethodEndpointSummaryOperation ID
POST/chat/users/{userId}/invitationsSend new contact invitationsendNewContactInvitation
MethodEndpointSummaryOperation ID
GET/chat/legalhold/mattersList legal hold matterslistLegalHoldMatters
POST/chat/legalhold/mattersAdd a legal hold matteraddLegalHoldMatter
DELETE/chat/legalhold/matters/{matterId}Delete legal hold mattersdeleteLegalHoldMatters
PATCH/chat/legalhold/matters/{matterId}Update legal hold matterupdateLegalHoldMatter
GET/chat/legalhold/matters/{matterId}/filesList legal hold files by given matterlistLegalHoldFiles
GET/chat/legalhold/matters/{matterId}/files/downloadDownload legal hold files for given matterdownloadLegalHoldFiles
Reports
MethodEndpointSummaryOperation ID
GET/report/chat/sessionsGet chat sessions reportsreportChatSessions
GET/report/chat/sessions/{sessionId}Get chat message reportsreportChatMessages
Shared Spaces
MethodEndpointSummaryOperation ID
GET/chat/spacesList shared spaceslistSharedSpaces
POST/chat/spacesCreate a shared spacecreateSpace
DELETE/chat/spaces/{spaceId}Delete a shared spacedeleteSpace
GET/chat/spaces/{spaceId}Get a shared spacegetASharedSpace
PATCH/chat/spaces/{spaceId}Update shared space settingsupdateSharedSpaceSettings
DELETE/chat/spaces/{spaceId}/adminsDemote shared space administrators to membersdemoteSpaceAdmins
POST/chat/spaces/{spaceId}/adminsPromote shared space members to administratorspromoteSpaceMembers
GET/chat/spaces/{spaceId}/channelsList shared space channelslistSharedSpaceChannels
PATCH/chat/spaces/{spaceId}/channelsMove shared space channelsupdateSharedSpaceChannels
DELETE/chat/spaces/{spaceId}/membersRemove members from a shared spacedeleteSpaceMembers
GET/chat/spaces/{spaceId}/membersList shared space memberslistSharedSpaceMembers
POST/chat/spaces/{spaceId}/membersAdd members to a shared spaceaddSpaceMembers
PATCH/chat/spaces/{spaceId}/ownerTransfer shared space ownershiptransferSpaceOwner

Requirements and compatibility

Written for: OpenAI Codex

Works with: Claude Code, Claude apps, OpenAI Codex, GitHub Copilot, Cursor, Gemini CLI, Kiro, OpenCode, Goose, Amp, Roo Code, JetBrains Junie, Factory Droid, Devin (ex-Windsurf), Mistral Vibe, OpenHands, Letta

“Works with” means the tool reads the open Agent Skills format; a skill written for one tool may use features others lack.

Security

What our scanner noticed· Medium risk

  • Possible data-exfiltration endpoints
  • Instructions that use the network

A static scan is not a guarantee. Skills are third-party content: review a skill before you let an agent use it.

Attribution and licence

Created by
Zoom
Publisher
OpenAI (Official)
Distributed by
OpenAI
Source
openai/plugins · plugins/zoom/skills/rest-api · commit d420d13
Licence
MIT License (redistribution allowed)
  • LICENSE (added by AutoGineer from plugins/zoom/LICENSE)
  • ATTRIBUTION.md (written by AutoGineer)
Synced

AutoGineer is not affiliated with or endorsed by Zoom or OpenAI.

Download ZIP

The ZIP holds the skill’s files, its licence files and an ATTRIBUTION.md. Download build-zoom-rest-api-app.zip