Skip to content

zoom#367

Merged
Selinali01 merged 1 commit into
mainfrom
zoom
Apr 27, 2026
Merged

zoom#367
Selinali01 merged 1 commit into
mainfrom
zoom

Conversation

@Selinali01
Copy link
Copy Markdown
Contributor

@Selinali01 Selinali01 commented Apr 27, 2026

Summary

Related Issues

Type of Change

  • Bug fix
  • New feature
  • Breaking change
  • Refactor
  • New Bubble Integration
  • Other (please describe):

Checklist

  • My code follows the code style of this project
  • I have added appropriate tests for my changes
  • I have run pnpm check and all tests pass
  • I have tested my changes locally
  • I have linked relevant issues

Screenshots (Required)

For New Bubble Integrations

📋 Integration Flow Tests: When creating a new bubble, you must write an integration flow test that exercises all operations end-to-end in realistic scenarios—including edge cases. This flow should be runnable in bubble studio and return structured results tracking each operation's success/failure with details. See packages/bubble-core/src/bubbles/service-bubble/google-sheets/google-sheets.integration.flow.ts for a complete reference implementation.

⚠️ If your integration requires API credits for testing, please reach out to the team for test credentials.

  • Integration flow test (.integration.flow.ts) covers all operations
  • Screenshots showing full test results in Bubble Studio attached above

Additional Context

Summary by CodeRabbit

  • New Features

    • Added Zoom integration supporting meeting creation, retrieval, and listing; cloud recording access; and meeting transcript retrieval.
    • Added 'zoom-recording-insights' capability.
  • Chores

    • Updated package versions to 0.1.319.

@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented Apr 27, 2026

Caution

Review failed

Pull request was closed or merged during review

📝 Walkthrough

Walkthrough

This PR introduces comprehensive Zoom integration support by implementing a new ZoomBubble service class with operations for meeting management, recording access, and transcript retrieval. It includes schema definitions, integration tests, factory registration, and credential configuration across multiple packages with synchronized version increments.

Changes

Cohort / File(s) Summary
Zoom Service Bubble Implementation
packages/bubble-core/src/bubbles/service-bubble/zoom/zoom.ts, packages/bubble-core/src/bubbles/service-bubble/zoom/zoom.schema.ts
Core Zoom integration with 447 lines implementing OAuth token handling, unified API request wrapper, and operation dispatch for meeting CRUD, recordings retrieval, transcript download, and user profile access. Comprehensive 391-line schema with discriminated unions for all supported Zoom operations and their results.
Zoom Bubble Exports & Tests
packages/bubble-core/src/bubbles/service-bubble/zoom/index.ts, packages/bubble-core/src/bubbles/service-bubble/zoom/zoom.integration.flow.ts
Barrel export re-exporting ZoomBubble, schemas, and types. Integration test flow with 232 lines executing sequential operations (user fetch, meeting creation, recording listing, transcript download) and collecting test results with operation outcomes and extracted details.
Bubble Factory & Core Exports
packages/bubble-core/src/bubble-factory.ts, packages/bubble-core/src/index.ts
Register ZoomBubble in factory defaults under 'zoom' key and add to code-generator bubble list. Export ZoomBubble, schemas, and parameter/result types from module index.
Type & Credential Definitions
packages/bubble-shared-schemas/src/types.ts, packages/bubble-shared-schemas/src/credential-schema.ts
Add ZOOM_CRED enum member and 'zoom' to BubbleName union. Define Zoom OAuth provider with credential type, default scopes, and scope descriptions; add bubble credential mapping.
Capability & Configuration Updates
packages/bubble-shared-schemas/src/capability-schema.ts, packages/bubble-shared-schemas/src/bubble-definition-schema.ts
Extend CapabilityId union with 'zoom-recording-insights'. Register CredentialType.ZOOM_CRED in credential configuration map.
UI Credential Mapping
apps/bubble-studio/src/pages/CredentialsPage.tsx
Extend typeToServiceMap to resolve ZOOM_CRED credential type to display the Zoom service label/logo.
Package Version Updates
packages/bubble-core/package.json, packages/bubble-runtime/package.json, packages/bubble-scope-manager/package.json, packages/bubble-shared-schemas/package.json, packages/create-bubblelab-app/package.json, packages/create-bubblelab-app/templates/basic/package.json, packages/create-bubblelab-app/templates/reddit-scraper/package.json
Synchronized version bumps from 0.1.318 to 0.1.319 across all workspace packages and template dependencies.

Sequence Diagram(s)

sequenceDiagram
    participant App as Bubble Studio/Application
    participant Bubble as ZoomBubble Service
    participant OAuth as OAuth Token Store
    participant API as Zoom REST API v2
    
    App->>Bubble: performAction(operation, params)
    Bubble->>OAuth: Extract credentials from ZOOM_CRED
    OAuth-->>Bubble: OAuth access token
    Bubble->>Bubble: Route by operation type
    
    alt Create/Get Meeting or List/Record Operations
        Bubble->>API: zoomRequest(method, endpoint, query/body)
        API-->>Bubble: JSON response
    else Transcript Download
        Bubble->>API: List recordings (find transcript file)
        API-->>Bubble: Recording files with download_url
        Bubble->>API: Fetch transcript via download_url
        API-->>Bubble: Transcript content
    end
    
    Bubble->>Bubble: Format result object
    Bubble-->>App: { success: boolean, operation, ...payload }
Loading

Estimated code review effort

🎯 4 (Complex) | ⏱️ ~50 minutes

Possibly related PRs

  • Discord #340 — Parallel implementation of new service-bubble with factory registration, credential-to-service mapping updates, and UI integration in CredentialsPage.
  • Linear #312 — Similar service-bubble integration pattern with bubble-factory registration, shared-schema credential/bubble type additions, and CredentialsPage mapping extension.
  • feat(sendsafely): add SendSafely bubble with encrypted file transfer … #308 — Adds new service credential and bubble with the same surfaces updated: factory registration, type definitions, and credential-to-service UI mapping.

Poem

🐰 Zoom bubbles bounce with meetings true,
Recording whispers captured too,
Transcripts flow through OAuth's grace,
Each operation finds its place,
A Rabbit hops through Zoom's bright face! 🎯

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 inconclusive)

Check name Status Explanation Resolution
Title check ❓ Inconclusive The title 'zoom' is vague and generic; it does not clearly convey the specific implementation details or main objectives of adding comprehensive Zoom integration support. Consider a more descriptive title like 'Add Zoom bubble integration with OAuth support and recording/meeting management' that better summarizes the substantial changes across schemas, bubbles, and service implementations.
✅ Passed checks (4 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch zoom

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@cloudflare-workers-and-pages
Copy link
Copy Markdown

Deploying bubblelab-documentation with  Cloudflare Pages  Cloudflare Pages

Latest commit: 18ad000
Status: ✅  Deploy successful!
Preview URL: https://8702aec3.bubblelab-documentation.pages.dev
Branch Preview URL: https://zoom.bubblelab-documentation.pages.dev

View logs

@Selinali01 Selinali01 merged commit f1026a7 into main Apr 27, 2026
6 of 7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant