Zoom API Meeting join_before_host parameter not retaining true value - always returns false
Description:
I am experiencing an issue where participants are unable to join Zoom meetings before the host. Despite explicitly setting "join_before_host": true
in the request payload, the response data consistently returns "join_before_host": false.
On the other hand, the "waiting_room": false
parameter functions correctly, as expected, and is accurately reflected in the response data.
Could you please investigate this issue and provide guidance on resolving it?
Error:
The full error message or issue you are running into, where applicable.
How To Reproduce:
- Zoom Request Payload
const createZoomMeeting = async (props: IZoomMeetingProps) => €
const { topic, start_time, agenda, password, duration, host_email } = props;
const token = await generateZoomToken;
const headers = { headers: { Authorization: "Bearer ${token), ‘Content-Type’: "application/json } }
const meetingData = {
host _email, topic, type: 1,
start_time,
timezone: ‘UTC’ ,
agenda,
duration,
password,
settings: (
host_video: true,
participant_video: true,
cn_meeting: false,
in meeting: false,
join_before_host: true,
joh_time: 5,
mute_upon_entry: true,
watermark: false,
use_pmi: false,
approval_type: 2,
audio: "both’, auto recording: ‘cloud’, enforce_login: false,
enforce_login_domains: “',
alternative_host_update_polls: false,
close_registration: false,
show_share_button: true,
allow multiple_devices: true,
registrants_confirmation_email: true,
waiting_room: false,
request_permission_to_unmute_participants: false,
global_dial in_countries: [‘US’],
registrants_email_notification: true,
meeting authentication: false,
encryption_type: 'enhanced _encryption”,
approved_or_denied _countries_or_regions: { enable: false },
breakout_room: { enable: false },
internal meeting: false,
continuous_meeting_chat: {
enable: true,
auto_add_invited_external_users: false,
auto_add _meeting_participants: false,
- Response
DB connected successfully!
~createZoomMeeting ~ response? .data: {
uuid: XXXX ,
id: 82830849251,
host_id: XXXXX ,
host_email: ‘XXXXXX@XXXX.ai’ ,
topic: ‘XXX : Interview Invitation’ ,
type: 1 ,
status: ’ waiting’,
timezone: ‘UTC’ ,
agenda: ‘XXXX : Interview Invitation’,
created_at: ‘2025-02-19T17:29:39Z’ ,
start_url: ‘xxxxx’ ,
join_url: ‘xxxxxx’,
password: ‘XXXX’
h323_password: *xxxxxx’,
pstn_password: ‘xxxxx’’ ,
encrypted_password: ‘xxxxx’,
settings: {
host_video: true,
participant_video: true,
cn_meeting: false,
in_meeting: false,
join_before_host: false,
jbh_time: 5,
mute_upon_entry: true,
watermark: false,
use_pmi: false,
approval_type: 2,
audio: ‘both’ auto_recording: ‘cloud’,
enforce_login: false,
enforce_login_domains: ‘’,
alternative_hosts: ‘’,
alternative_host_update_polls: false,
close_registration: false,
show share_button: false,
allow_multiple_devices: false,
- Error:
join_before_host: false, ← Always returned as false.
Would appreciate any insights or potential solutions! Thanks in advance.