OAuth Readiness
Video meetings·zoom.us·generated live by the agent, 2026-10-30

Zoom

Zoom uses standard OAuth 2.0 through a 'General app' you create by hand in the Zoom App Marketplace, and you can connect your own account in about 30 minutes. Before other clinics' Zoom accounts can connect, the app must be published (publicly or unlisted) and pass Zoom's App Review, which has a functional stage and then a security stage. Zoom gives no fixed timeline, and forum reports say the security stage alone can take a month or more, so plan for several weeks.

Difficulty
moderate
First token
30 min
Real users
2-8 weeks
Cost
free (no fee found)

Review: Zoom Marketplace App Review (functional, then security) before users outside your account can install.

Timing: Depends mostly on how long the security review takes (forum reports range from days to over a month) and on how many resubmission rounds about the domain, scopes, documentation or test plan you need; recording, transcript or health-data scopes may add scrutiny.

Cost: No review fee was found in the research. This is unconfirmed. API rate limits depend on each clinic's Zoom plan.

Verdict evidence sourceds4s9s5s10s11

Before you start

Iskaria readiness: 9 of 12 profile items in place
edit profile
  • for buildZoom account with access to marketplace.zoom.us (developer)sourceds3
  • for buildRedirect URL https://app.iskaria.com/api/oauth/zoom/callback, also added to the OAuth Allow List✓ Iskaria has itsourceds3
  • for buildLocalhost redirect http://localhost:3000/api/oauth/zoom/callback for development (may not be accepted)✓ Iskaria has itinferred
  • for launchVerified domain for app submission (iskaria.com)✓ Iskaria has itsourceds6
  • for launchPrivacy policy URL✓ Iskaria has itinferred
  • for launchTerms of use URL✓ Iskaria has itinferred
  • for launchSupport URL and contact email✓ Iskaria has itinferred
  • for buildDeveloper contact email✓ Iskaria has itinferred
  • for launchApp name and description✓ Iskaria has itinferred
  • for launchApp logo exported as a PNG (MISSING: no 512px PNG has been exported yet)✓ Iskaria has itinferred
  • for launchTest credentials (a Zoom test account plus an Iskaria test login) for reviewerssourceds6
  • for launchLegal entity name for the Marketplace developer or company profile (MISSING)✗ missing in profileinferred
  • for launchDemo video (MISSING; may be requested)✗ missing in profileinferred
  • for launchShared support mailbox instead of a personal address (MISSING)✗ missing in profileinferred
Test mode:availablesourceds7s2

Development credentials work only for users in your own Zoom account. Outside users need approval through 'Request to Share', and shared authorization URLs expire and must be renewed. No numeric user cap was found.

Who does what

Agentcan do for you
  • Implement the OAuth code flow with PKCE, token refresh and revocation
  • Draft scope justifications, the Technical Design section, documentation and the test plan
  • Draft listing texts and a demo script
Youmust take over
  • Log in to the Marketplace and create the app
  • Accept Zoom's terms
  • Verify the domain in Zoom
  • Provide reviewer test credentials
  • Click Submit for review and respond to reviewers
  • Export the logo and set up a shared support mailbox

Steps

Buildcreate the app and credentials
  1. 1Sign in to the Zoom App MarketplaceYou5 minsourceds3

    Log in at marketplace.zoom.us with the Iskaria Zoom account and accept the developer terms if prompted.

    https://marketplace.zoom.us/
  2. 2Create a General appYou5 minsourceds3s2

    Go to Develop → Build App → General app → Create. On Basic Info, choose Admin-managed so a clinic's account admin installs the app for the whole account.

    https://marketplace.zoom.us/
    App nameIskaria
    How is the app managed?Admin-managed recommended for clinic accounts
  3. 3Set the redirect URL and Allow List, then store the credentialsAgent drafts, you submit10 minsourceds3s18

    Set the OAuth redirect URL to https://app.iskaria.com/api/oauth/zoom/callback and add it to the OAuth Allow List (try the localhost URL for development). Copy the development client ID and secret into the server-side secret store. The token endpoint uses client_secret_basic, so the secret must never reach the browser.

    OAuth redirect URL["https://app.iskaria.com/api/oauth/{provider}/callback","http://localhost:3000/api/oauth/{provider}/callback"]
    OAuth Allow List["https://app.iskaria.com/api/oauth/{provider}/callback","http://localhost:3000/api/oauth/{provider}/callback"]
  4. 4Select granular scopes and draft justificationsAgent drafts, you submit20 mininferreds14

    Add granular scopes (user:read:user, meeting:read:list_meetings, meeting:read:meeting, meeting:write:meeting). Leave out recording and transcript scopes unless they are truly needed. Draft a short justification for each scope.

  5. 5Implement the authorization code flow with PKCEAgent2 htesteds18

    Authorize at https://zoom.us/oauth/authorize and exchange the code at https://zoom.us/oauth/token using S256 PKCE and HTTP Basic client authentication. Store refresh tokens encrypted per tenant and replace them on every refresh. Use https://zoom.us/oauth/revoke when a clinic disconnects.

Testworks for you and test users
  1. 6Test with your own account and, optionally, share with a pilot clinicYou30 minsourceds7

    Connect your own Zoom account using the development credentials. To let a pilot clinic connect before launch, use Request to Share and renew the shared URL when it expires.

Launchreview and approval for real users
  1. 7Prepare the listing, Technical Design section and test planAgent drafts, you submit3 hsourceds5s6s17

    Fill in all required fields and complete the mandatory Technical Design section. Prepare documentation, a test plan and reviewer test credentials. Verify iskaria.com in Zoom, and export the logo.

    Privacy policy URLhttps://iskaria.com/privacy
    Terms of use URLhttps://iskaria.com/terms
    Support URLhttps://iskaria.com/support
    Support emailibrahim@iskaria.com
    Short/long descriptionIskaria is a multi-clinic operations console with an AI assistant. Clinic staff connect their business accounts so the assistant can answer patient messages, track leads and report on marketing performance.
    Logo{"square512Png":null,"note":"Systems Mark logo exists as a design canvas; no exported 512px PNG yet"}needs export
    Domain verificationapp.iskaria.com
  2. 8Submit for review (published or unlisted)You15 minsourceds6s11

    Submit the app. Zoom runs a functional review first, then a security review. Answer reviewer questions promptly and resubmit if asked.

  3. 9Switch to production credentials after publishingAgent15 minsourceds2

    Once the app is published, deploy the production client ID and secret, which are separate from the development pair.

Scopes an agent typically needs

ScopeUsed forReview tierEvidence
user:read:userIdentify the connected Zoom userbasicinferred
meeting:read:list_meetingsList the clinic's meetings for the assistantbasicinferred
meeting:read:meetingRead details of a single meetingbasicinferred
meeting:write:meetingCreate telehealth or consultation links when booking
Per-user daily cap of 400 meeting create/update calls
basicinferreds13
cloud_recording:read:list_recording_filesOptional: access recordings and transcripts
Likely extra security-review scrutiny, especially with patient data
sensitiveinferred

What can slow you down or block approval

slows you downSecurity review can stall for weekssourceds10s11s12

After passing functional review, developers report waiting a month or more for the security review. Zoom staff will not commit to a timeline.

Workaround: Submit early, request minimal scopes, and have the Technical Design section and test plan complete before submitting.

can block launchHealth data and recordingsinferred

Clinic and patient context, combined with recording or transcript scopes, may trigger HIPAA or BAA questions. Iskaria has no SOC 2 or ISO 27001.

Workaround: Leave out recording and transcript scopes for v1, and document the per-tenant encryption.

slows you downMissing listing assetsinferred

There is no exported logo PNG, no demo video, no legal entity name and no shared support mailbox.

Workaround: Export the 512px logo, set up support@iskaria.com, and record a demo.

infoNo dynamic client registrationtesteds18

The probe found no registration_endpoint, so an agent cannot register a client itself. The app must be created by hand in the Marketplace.

slows you downAdding scopes later means re-reviewsourceds8

Adding scopes to a published app requires resubmission, and existing users must reauthorize.

Workaround: Decide on the full scope set before the first submission.

infoServer-to-Server OAuth is not an optionsourceds16

Server-to-Server OAuth works only within your own account, and JWT apps are deprecated. Use a General app with the authorization code flow.

What we checked

ClaimHowResult
Review is needed before users outside your account can installSearch snippets of the official blog and distribute docsconfirmed
Development apps are limited to your own account unless approved through Request to Share
No numeric user cap was found.
Search snippets of the sharing-private-and-beta-apps page and blogconfirmed
Review wait time
Anecdotal only; Zoom staff say it depends.
Three forum threadsunverified
Granular scopes are mandatory for new apps
Zoom's own page was not fetched.
Third-party recall.ai docsconfirmed
Endpoints, PKCE support and no dynamic client registrationProbed .well-known metadata on 2026-10-30confirmed
Still uncertain
  • Full official pages were not fetched; 'sourced' claims rest on search snippets.
  • Exact required submission fields (demo video, screenshots).
  • How long Request to Share authorization URLs stay valid, and whether there is a user cap.
  • Whether localhost redirect URLs are allowed in development.
  • Token lifetimes (about 1 hour for access tokens and about 90 days for rotating refresh tokens is unverified).
  • Which specific scopes trigger extra security review.
  • Review fee, business verification and legal-entity requirements are not confirmed.
  • Whether HIPAA or BAA questions arise for clinic use.
  • Review times are anecdotal only; forum reports range from about 1 day to over a month.
  • Discovery metadata advertises client_credentials, jwt-bearer and device_code grants; their applicability to General apps is unverified.

Sources

  1. s1
    OAuth 2.0 – Zoom Developer Docs · official-docs · accessed 2026-10-30
    “Zoom supports industry-standard OAuth 2.0 (rfc6749 ) flows to handle authorization and access tokens.”
  2. s2
    Create an OAuth app · official-docs · accessed 2026-10-30
    “App credentials for development differ from app credentials for production”
  3. s3
    Select general app features · official-docs · accessed 2026-10-30
    “OAuth redirect URL (required): Enter your development redirect URL”
  4. s4
    App distribution · official-docs · accessed 2026-10-30
    “These apps are intended for internal use and don't require the standard Marketplace review.”
  5. s5
    App Review Process · official-docs · accessed 2026-10-30
    “all developers must complete the Technical Design section of the build flow.”
  6. s6
    Submit apps for review · official-docs · accessed 2026-10-30
    “provide test credentials that allow Zoom reviewers to fully experience your integration.”
  7. s7
    Sharing Private and Beta Apps · official-docs · accessed 2026-10-30
    “To share the authorization URL with users outside of your developer account, select Request to Share.”
  8. s8
    Updating an App · official-docs · accessed 2026-10-30
    “manage scope changes, handle user reauthorization”
  9. s9
    How to limit who can install my Marketplace App · official-docs · accessed 2026-10-30
    “you will need to publish it to the Zoom App Marketplace.”
  10. s10
    Zoom App Marketplace Review Process · community · accessed 2026-10-30
  11. s11
    Security Review · community · accessed 2026-10-30
    “passed functional testing and was now awaiting a security review”
  12. s12
    Zoom App Security Review · community · accessed 2026-10-30
  13. s13
    About the Latest Rate Limits · community · accessed 2026-10-30
    “You have exceeded the daily rate limit (400) of Meeting Create/Update API requests permitted for this particular user.”
  14. s14
    Zoom OAuth Setup (granular scopes) · community · accessed 2026-10-30
    “any newly created apps will use these new granular scopes.”
  15. s15
    zoom-oauth-app · community · accessed 2026-10-30
    “rotate a Zoom client secret”
  16. s16
    Zoom Migration Guide · community · accessed 2026-10-30
    “As of September 8, 2023, Zoom has deprecated JWT authentication”
  17. s17
    What I Prepared Before Publishing a Zoom Marketplace App · community · accessed 2026-10-30
    “Most of the review rounds covered the things around the code: the domain, the scopes, the documentation, and the test plan.”
  18. s18
    Probe of Zoom OAuth discovery metadata · our-test · accessed 2026-10-30
    “authorization_endpoint https://zoom.us/oauth/authorize; token_endpoint https://zoom.us/oauth/token; PKCE S256; client_secret_basic; no registration_endpoint”
Something wrong or outdated? Re-run the agent for Zoom