Webhook Participant notifications and Join before host

Simple webhook question. There is a event called meeting.participant_joined

This is called on joining a meeting in progress. Perfect. That’s what I need to know. There’s also a meeting.participant_jbh_joined This event I really don’t care about.

My question is, do I need to pay attention to the meeting.participant_jbh_joined to get all the participants when the meeting starts? Or will there be meeting.participant_joined for all the early joiners when the meeting actually starts? Or will the meeting start early on the first participant join if the user enabled the join before host?

Similar question for meeting.participant_jbh_waiting. I assume that if they’re waiting for the host, that there will be a meeting.participant_joined message sent on meeting start.


The JBH stands for “Joined Before Host”.
This event is triggered when a meeting participant joins the meeting BEFORE the host joins the meeting.

It is primarily used by developers building apps to measure employee effectiveness on meetings for particular team members, such as Sales (since it is typically frowned upon for Account Executives to arrive after their meeting participants, especially if they are late according to the meetings “start” time.

If I was building an app where this distinction is important to operation, then I would subscribe to both, just to be certain.

Just test it out, and see what happens, I’ve not tested the JBH events yet, and I would like to know what you learn.

Thanks. Looks like the meeting is “created” when you click the buttons in the UI with the early join option, and you get the normal join event’s when people join.

I had assumed we have the non-scheduling plan, since I didn’t notice the “schedule meetings” option. I always went over to “host a meeting” and didn’t even notice the schedule option. :slight_smile:

The other findings are… If no join before host is set, then the meeting is created when the host joins, and you get all the joins right after

1 Like

@robert.macaulay thanks for sharing your findings sir!
I’m making note of these for myself. :slight_smile:

Zoom isn’t a scheduling/booking product, our focus is on business collaboration.
That’s why you can’t find a “schedule meetings”. Now, but you can Create a Meeting that is scheduled for a certain date in the future (using the start_time property on the new meeting’s configuration/settings argument supplied in your REST request, it just means that we’re not the calendaring voice of authority. The strart_time property just represents when the meeting is configured to begin, but the dominant use case is for businesses to connect their booking/calendaring/scheduling systems up to Zoom and those systems are the voice of authority for scheduling (changes made in those systems should update the Zoom start_time for the respective meeting).

When you create a meeting using the API, you can set type: 2 which is a “scheduled meeting” type.
You can also set the start_time property to a specific date/time.