Zoom Integration for Runbooks
Create incident bridge meetings from runbooks.
Harness AI SRE integrates with Zoom through a connector-based approach, enabling automated meeting management for incident response.
Overview
Zoom integration enables your runbooks to:
Create incident bridges automatically
Schedule follow-up meetings
Manage participant access
Share meeting recordings
Track attendance
Connector requirements
When you need the Zoom connector
The Zoom connector is required for programmatic meeting creation, creating meetings via runbook actions with the ability to:
Create new meetings on demand
Set meeting names, duration, and descriptions
Programmatically invite participants
Configure meeting settings (waiting room, passcode, auto-recording, etc.)
When you do not need the Zoom connector
You do not need a connector if you only want to:
Join existing Zoom meetings using static bridge links
Use pre-configured, recurring meeting rooms
Manually create meetings through the Zoom web interface
If your incident response workflow uses static meeting bridges that responders join manually, the Zoom connector is not required.
Set up the integration
Prerequisites
Zoom admin access
Harness Project Admin role
Appropriate Zoom API permissions
Setup steps
Connect the Zoom integration with these steps:
Go to Project Settings, then Third Party Integrations (AI SRE).

Third-Party Integrations for AI SRE Select Zoom from the available integrations.
Configure authentication. Go to Authentication methods to review the options.
Grant required API permissions (see below).
Test the connection.
Authentication methods
Zoom integrations in Harness AI SRE support two authentication methods: Server-to-Server OAuth and API Key/Secret (Account ID and Secret). The authentication method you choose affects how the AI Scribe Agent joins incident meetings.
Server-to-Server OAuth (recommended)
OAuth authentication enables the AI Scribe Agent to join Zoom meetings automatically without waiting room delays.
Capabilities:
Automatic meeting join: Generates ZAK (Zoom Access Key) tokens that allow the bot to bypass waiting rooms
No manual admission required: The bot joins immediately when the meeting starts
Full programmatic access: Create, configure, and manage meetings via runbook actions
Silent operation: No error alerts related to meeting access
Use OAuth when:
You want the AI Scribe Agent to join incident war rooms automatically
You need reliable meeting transcription without manual intervention
You are using runbook actions to create meetings programmatically
Setup:
In the Zoom integration configuration, select OAuth.
Click Sign in with Zoom and authorize access.
Grant the required API scopes listed below.
Test the connection.
API Key/Secret authentication
API Key authentication (Account ID and Secret) provides basic meeting management capabilities but limits automatic meeting participation.
Limitations:
No ZAK token support: Cannot generate tokens that bypass waiting rooms
Waiting room requirement: The bot joins as a standard participant and requires manual admission
Manual intervention needed: Someone on the call must admit the bot from the waiting room
Alert messages: Generates error messages in Slack when attempting to request ZAK tokens
Behavior with API Key authentication:
When the AI Scribe Agent attempts to join a meeting with API Key authentication:
Bot attempts to join meeting using ZAK token, and the request fails (ZAK not supported with API Key auth).
Bot falls back to standard join, and lands in the waiting room.
Error alert appears in Slack: "ZAK token generation not supported".
A meeting participant must manually admit the bot.
If no one admits the bot, it misses the meeting entirely and no transcript is captured.
Use API Key when:
You only need to create meetings programmatically (not join them for transcription)
Your team is comfortable manually admitting the bot to meetings
OAuth setup is not feasible for your organization
MISSING MEETING TRANSCRIPTS
If using API Key authentication, the AI Scribe Agent will miss meetings where no participant admits it from the waiting room. This results in incomplete incident documentation. For reliable transcription, use Server-to-Server OAuth.
Switch from API Key to OAuth
If you are currently using API Key authentication and experiencing issues with bot admission or seeing ZAK token error alerts:
Go to Project Settings, then Third Party Integrations (AI SRE), then Zoom.
Remove the existing API Key configuration.
Select OAuth and follow the setup instructions above.
Test by creating a meeting via runbook and verifying the bot joins automatically.
Alternatively, if OAuth is not feasible, you can suppress the ZAK token error alerts in your Slack notification settings.
Required permissions
The Zoom integration requires specific API scopes depending on the actions your runbooks will perform. Below are the required scopes organized by functionality:
Basic meeting management
meeting:write: Create, update, and delete meetingsmeeting:read: Read meeting details and settingsuser:read: Read user information for meeting hosts and participants
Advanced meeting actions
meeting:write:admin: Required for ending meetings and advanced meeting controlmeeting:update:admin: Modify meeting settings for meetings you do not hostmeeting:read:admin: Access detailed meeting information across the organization
Recording management
recording:read: Access meeting recordingsrecording:write: Manage recording settings and permissionscloud_recording:read: Read cloud recording detailscloud_recording:write: Manage cloud recordings
Participant and user management
user:read: Read basic user informationuser:write: Manage user settings (for participant management)group:read: Read group information for bulk participant management
Webinar support (if applicable)
webinar:write: Create and manage webinarswebinar:read: Read webinar information
Scope requirements by action
Create Meeting
meeting:write, user:read
Basic meeting creation
End Meeting
meeting:write:admin
Critical for meeting termination
Update Meeting Settings
meeting:write, meeting:update:admin
Admin scope needed for meetings you do not host
Manage Participants
meeting:write, user:read, user:write
For adding/removing participants
Access Recordings
recording:read, cloud_recording:read
For post-meeting analysis
Schedule Recurring Meetings
meeting:write, user:read
For incident follow-ups
Troubleshoot permissions
If you encounter permission errors:
"Insufficient privileges" error: Add
meeting:write:adminscope"Cannot end meeting" error: Ensure
meeting:write:adminis granted"Recording access denied": Add
recording:readandcloud_recording:readscopes"User not found" errors: Verify
user:readscope is active
Go to the official Zoom API documentation to review detailed information about Zoom API scopes.
Use the Zoom connector
Create a Zoom meeting runbook
Create a new runbook or edit an existing one.
Add a new Action.
From the Action Picker, select Create Zoom Meeting.
No additional configuration is required. The default Zoom connector is used.
Execute the runbook
Open an existing incident or create a new one.
Go to the Runbooks tab.
Click Execute a Runbook.
Select your runbook with the Zoom meeting action.
Click the Run icon to execute.
View the results in the incident timeline.
Disable the connector
Remove from Zoom Marketplace
Go to the Zoom Marketplace.
Go to Manage, then Installed Apps.
Locate the Harness app.
Click Remove or Uninstall.
Confirm the removal.
Verify in Harness:
Go to Project Settings, then Third Party Integrations (AI SRE).
Confirm the Zoom connector is no longer listed.
Check that related secrets have been automatically removed.
Use Zoom actions in runbooks
Zoom actions are configured through the runbook action form in the UI:
In your runbook, click New Step, then Action.

New Step Menu In the Select Action dialog, go to the Communication category.
Select the Zoom action you need from the available options.

Select Action Dialog Configure the action through a form-based interface. The specific fields depend on the action type you select.
Create Zoom meeting action
Creates a new Zoom meeting for incident coordination.
Form fields:
Topic: Meeting title
Example:
{{Activity.title}} - Incident Bridge
Agenda: Meeting description (optional)
Duration: Meeting duration in minutes
Start Time: When to start the meeting (for scheduled meetings)
Settings:
Join before host
Waiting room enabled/disabled
Auto-recording (cloud or local)
Available Mustache variables:
{{Activity.title}}: AI SRE incident title{{Activity.id}}: AI SRE incident ID{{Activity.severity}}: AI SRE incident severity{{Activity.summary}}: AI SRE incident summaryAny custom incident fields configured in your incident template
Best practices
Meeting setup
Use consistent naming
Enable auto-recording
Configure waiting rooms appropriately
Set proper security settings
Participant management
Control host privileges
Manage waiting room
Set up co-hosts
Configure breakout rooms
Recording management
Set retention policies
Configure sharing settings
Manage access controls
Archive important meetings
Common use cases
Incident response
Create immediate bridge
Add response team
Enable recording
Share meeting link
Troubleshooting
Next steps
Slack Integration: Configure Slack notifications.
Microsoft Teams Integration: Configure Microsoft Teams notifications.
Runbooks Overview: Return to the runbooks overview.
Last updated
Was this helpful?