Integration reference
Zoom Trigger and Action reference
Start Workflows from Zoom meeting, participant, and recording events, then schedule meetings and manage registrants.
Authentication
Connect each customer's Zoom account through OAuth. FastHook encrypts the access and refresh tokens and renews access automatically.
- Trigger account type:
oauth2; reconnect byoauth. - Action connection type:
oauth2; available modes: Connected Zoom account.
Create or reuse the account from a Trigger or Action dialog, or manage it under Settings → Connected accounts. See Authentication and permissions for scopes and access diagnostics, or Connected accounts for reuse, reconnect, revocation, and credential rotation.
Scopes and permissions
Base Trigger authorization requests: user:read:user, meeting:read:list_meetings, meeting:read:meeting, meeting:write:meeting, meeting:write:registrant, meeting:read:list_registrants, meeting:read:participant, cloud_recording:read:recording.
Operation-specific requirements appear in the tables below. Custom event selections can add scopes dynamically, so the current Trigger or Action dialog remains authoritative for the exact consent request.
Use Zoom as a Trigger
The current provider manifest contains 10 available Trigger definitions. Representative definitions include:
- Meeting Created
- Meeting Started
- Participant Joined
- Recording Completed
View all 10 available Trigger definitions
| Trigger | Manifest key | Delivery | Additional scopes |
|---|---|---|---|
| Meeting Created | zoom.meeting_created.instant | instant | None declared |
| Meeting Updated | zoom.meeting_updated.instant | instant | None declared |
| Meeting Deleted | zoom.meeting_deleted.instant | instant | None declared |
| Meeting Started | zoom.meeting_started.instant | instant | None declared |
| Meeting Ended | zoom.meeting_ended.instant | instant | None declared |
| Meeting Participant Joined | zoom.meeting_participant_joined.instant | instant | None declared |
| Meeting Participant Left | zoom.meeting_participant_left.instant | instant | None declared |
| Recording Completed | zoom.recording_completed.instant | instant | None declared |
| Any Zoom Events | zoom.any_event.instant | instant | None declared |
| Custom Zoom Events | zoom.custom_webhook_events.instant | instant | None declared |
Choose the narrowest event definition that fits the Workflow. Configure provider-specific resource and event filters in the Source dialog before adding broader Workflow Filters.
Use Zoom Actions
The current Action manifest contains 8 operations. Representative Actions include:
- Create Meeting
- List Meetings
- Update Meeting
- Add Meeting Registrant
View all 8 available Action definitions
| Action | Manifest key | Access and auth | Manifest rate limit |
|---|---|---|---|
| Create Meeting | zoom.create_meeting | None declared FastHook-managed account | 1/second |
| List Meetings | zoom.list_meetings | None declared FastHook-managed account | 1/second |
| Get Meeting | zoom.get_meeting | None declared FastHook-managed account | 1/second |
| Update Meeting | zoom.update_meeting | None declared FastHook-managed account | 1/second |
| Delete Meeting | zoom.delete_meeting | None declared FastHook-managed account | 1/second |
| Add Meeting Registrant | zoom.add_meeting_registrant | None declared FastHook-managed account | 1/second |
| List Meeting Registrants | zoom.list_meeting_registrants | None declared FastHook-managed account | 1/second |
| Custom API Request | zoom.custom_api_request | None declared FastHook-managed account | 1/second |
The Action editor reads its required permissions, fields, remote resource pickers, output schema, and rate limit from the provider manifest. Available fields can change with the selected operation and authentication mode.
Build a Workflow
- Create a Source using a Zoom Trigger definition.
- Create a Workflow with that Source as its Trigger.
- Add the required Zoom Action and select the connected account.
- Map Trigger or earlier-Step data into the Action fields with the field picker.
- Add a Filter, Paths, Delay, or Transformation when the route needs it.
- Activate the Workflow, produce a controlled event, and verify the run in Audit and in Zoom.
Troubleshooting Zoom
- The account is missing or cannot be selected
- Confirm the active FastHook team, provider, account status, and authentication mode. A disabled or revoked account cannot execute an Action.
- A resource picker is empty
- Verify that the connected provider identity can access the resource itself. OAuth consent does not add workspace, repository, channel, drive, project, base, or record permissions.
- The editor asks for additional scopes
- Reconnect the same account from the affected Trigger or Action so FastHook can request its current manifest scopes. Then reopen the editor and select the resource again.
- An active Workflow returns 401, 403, or a permission error
- Compare the selected operation’s access requirements below with the account recorded in Audit. Check provider-side membership and object access before repeating the Action.
- The provider returns 429 or a temporary 5xx
- Inspect the Step attempt and retryability in Audit. FastHook can retry temporary failures, but provider quotas and idempotency rules still apply.
Provider-specific checks
- Choose the connected Zoom user for each Source. FastHook manages the matching Zoom event subscription and removes it when the Source is no longer active.
- FastHook verifies Zoom's timestamped HMAC signature and a subscription-specific secret header before accepting a webhook, then deduplicates deliveries by Zoom request ID.
- Meeting and registration features depend on the connected user's Zoom plan and account settings.
- Custom API Request is restricted to the Zoom API host and cannot override the Authorization header.
- Action schemas are extracted from Zoom's official API Hub OpenAPI document. Webhook schemas preserve additional event-specific fields from Zoom.