Using Meeting SDK Web 6.1.0. role: 1 + a valid host ZAK reliably starts a meeting when the joining account is the same account that owns the Marketplace app (developer’s own account). The identical code, same app, same signature-generation logic, fails every time when the ZAK belongs to a different (external) Zoom Business-tier account that has authorized the app.
Symptom: onMeetingStatus goes 1 → 1 → 3 with no error code and no error ever reaching join()'s own error callback (confirmed via unconditional logging inside that callback — it simply never fires, success or failure).
What’s been ruled out:
- ZAK identity/freshness — confirmed via decoded JWT claims matching the meeting’s actual
host_idevery time; tested via bothGET /v2/users/me/zakandGET /v2/users/{userId}/token?type=zak - Signature correctness — confirmed
role: 1is present in the decoded JWT server-side on every attempt - Meeting state — fails identically whether the meeting is already running or has never been started
- Registration requirement — fails identically on registration-required and non-registration meetings (registration turned out to be a red herring)
- Who’s joining — fails identically for the account owner and for an account Admin using their own ZAK
- OAuth scopes — tested with
user:read:zak,user:read:token, and variousmeeting:*scopes added and confirmed present in the issued token - App registration type — fails identically under both admin-managed and user-managed app registrations
- SDK’s own internal state — confirmed via
JSON.stringify(ZoomMtg): identical between successful/failed sessions exceptcurrentMeetingInfo.status(joinedvsinit) — no other divergence
Question: Is a role: 1 start via the Meeting SDK simply not supported for accounts other than the app’s own developer/owner account? If so, this seems like a significant, undocumented restriction — any app that needs to programmatically start a meeting on behalf of an external, authorized user would hit this. If it is supported, what are we missing? FWIW, two dev support tickets have been closed on grounds that this is a “configuration” issue, without any specific pointers, so any clues are more than welcome. Also, the app works fine for everyone for role:0 (even when authenticated as meeting host), but only as long as the meeting doesn’t require pre-registration (in which case we’d need to register the host as a participant, which of course isn’t possible).