Automatically generate unique, scheduled Zoom meetings for every 1:1 consultation booked on your ProfileBundle storefront, deliver instant join links to clients, and verify live call attendance.
OAuth 2.0 User-Managed AppAES-256-GCM Encrypted TokensLast Updated: October 14, 2026
The ProfileBundle Zoom Integration connects your Zoom account to your ProfileBundle creator dashboard so that every confirmed 1:1 consultation booking (paid or free) automatically creates a dedicated, scheduled Zoom meeting on your Zoom account and emails the join link and calendar invite to both you and your client.
Prerequisites
An active ProfileBundle Creator account (sign up free).
A Zoom Basic (Free) or Zoom Pro / Licensed account.
Zoom Basic accounts support automated 1:1 sessions up to 30 minutes. Zoom Pro / Licensed accounts automatically unlock durations up to 120 minutes (2 hours).
Permissions (OAuth Scopes)
user:read:user — Reads your Zoom user ID, email address, and license tier (Basic vs. Licensed) to display your connection status.
meeting:write:meeting — Creates a scheduled Zoom meeting (POST /v2/users/me/meetings) when a client books a 1:1 consultation with you.
2. Adding the App (Setup & Authorization)
You can connect your Zoom account either directly from your ProfileBundle Creator Dashboard or from the Zoom App Marketplace.
Method A: Connect from ProfileBundle (Recommended)
In the left sidebar, click 1:1 Bookings (https://profilebundle.com/consultations), or open the Product Editor (/add-product?type=consultation) and select Zoom under Meeting Platform.
Locate the Zoom Meetings integration card at the top of the page and click the "Connect Zoom" button.
You will be redirected to Zoom’s official OAuth 2.0 authorization screen (zoom.us/oauth/authorize). Sign in to your Zoom account if prompted.
Review the requested permissions (Create a meeting for a user and View a user) and click Allow.
Zoom will redirect you back to https://profilebundle.com/consultations?zoom=connected. You will see a green "Zoom connected" confirmation badge displaying your connected Zoom email address and account tier (Basic or Licensed).
Method B: Install from the Zoom App Marketplace
Make sure you are signed in to your ProfileBundle Creator account in the same browser.
On the ProfileBundle listing in the Zoom App Marketplace, click Add and approve the OAuth consent prompt.
You will be redirected to https://profilebundle.com/consultations where ProfileBundle automatically exchanges the one-time authorization code and links your Zoom account to your logged-in creator profile.
3. Using the App (Creating & Managing 1:1 Zoom Consultations)
Step 1: Publish a 1:1 Zoom Consultation Product
Go to 1:1 Bookings → click + New 1:1 Session (or go to Digital Products → Add Product → 1:1 Consultation).
Enter your session title, description, cover image, and price (set price to ₹0 for a free discovery session or any paid amount).
Under 1:1 Calendar & Slot Settings:
Select 🌐 Zoom as the Meeting Platform.
Choose your Call / Meeting Duration (15 or 30 mins for Zoom Basic; up to 120 mins for Zoom Licensed).
Optionally paste a Backup Zoom link (used only if the Zoom API is temporarily unreachable).
Configure your Weekly Availability Schedule (days and start/end windows in IST), minimum advance notice, and buffer time between calls.
Click Publish Product to get your public booking link (e.g., https://profilebundle.com/<username>/dp/<slug>).
Step 2: How Automatic Zoom Meeting Creation Works When a Client Books
Your client opens your public consultation page, picks an available date and time slot on the interactive calendar, enters their name, email, and phone number, and completes checkout.
Immediately upon confirmation, ProfileBundle calls POST https://api.zoom.us/v2/users/me/meetings using your encrypted OAuth token to create a unique, scheduled Zoom meeting (with Waiting Room enabled and video turned on for host and participant).
Instant Delivery to Both Sides:
The Client sees the Join Video Call button on their confirmation screen and receives an email containing the Zoom join URL, an .ics calendar invite, and a 1-click Add to Google Calendar link.
The Creator (Host) receives a booking confirmation email and can view/launch the session anytime under Dashboard → 1:1 Bookings.
Attendance Verification: Signed Zoom webhook events (meeting.started, meeting.ended, meeting.participant_joined, meeting.participant_left) automatically record call attendance and overlap duration on the booking record.
Troubleshooting & Common Questions
"Zoom connection expired — please reconnect Zoom": If you changed your Zoom password or revoked access, go to Dashboard → 1:1 Bookings and click Connect Zoom again to refresh your OAuth credentials.
What happens if Zoom's API is temporarily unreachable during a booking? ProfileBundle never blocks a client's confirmed booking. If Zoom cannot be reached, ProfileBundle automatically assigns your configured Backup Link (or a private browser video room) and shows a notice on your Zoom card so you can update the link if needed.
Why are my session durations capped at 30 minutes? Zoom Basic (Free) accounts have a 40-minute meeting limit, so ProfileBundle caps Zoom Basic sessions at 30 minutes. Upgrading to Zoom Pro/Licensed and reconnecting Zoom automatically unlocks 45, 60, 90, and 120-minute durations.
4. Removing the App (Disconnect, Deauthorization & Data Impact)
You can disconnect and remove the ProfileBundle Zoom integration at any time from either ProfileBundle or your Zoom App Marketplace account.
Option 1: Disconnect from ProfileBundle
Log in to your ProfileBundle Creator Dashboard and open 1:1 Bookings (/consultations).
In the Zoom connected card at the top, click the Disconnect button.
ProfileBundle immediately calls Zoom’s POST /oauth/revoke endpoint to revoke the token on Zoom's servers and deletes your encrypted OAuth access and refresh tokens from ProfileBundle's database.
Zoom sends a signed app_deauthorized webhook to ProfileBundle, which immediately purges your stored Zoom OAuth tokens and marks the integration as disconnected.
User Impact & Data Deletion Notes
Immediate Token Deletion: Disconnecting from ProfileBundle or removing the app in Zoom immediately deletes your encrypted Zoom OAuth access and refresh tokens from our database.
Existing Scheduled Meetings: Any Zoom meetings that were already created for upcoming bookings remain in your Zoom account so your existing clients’ join links continue to work unless you cancel them in Zoom.
Future Bookings: Your published 1:1 Consultation products remain active; future bookings automatically use your configured Backup Meeting Link (or a fallback browser video room) until you reconnect Zoom.