POST /users/{userId}/webinars

Zoom users with a Webinar Plan have access to creating and managing Webinars. Webinar allows a host to broadcast a Zoom meeting to up to 10,000 attendees.
Use this API to schedule a Webinar for a user (host).

Scopes: webinar:write:admin webinar:write

Rate Limit Label: Light
Prerequisites:

Servers

Path parameters

Name Type Required Description
userId String Yes

The user ID or email address of the user. For user-level apps, pass me as the value for userId.

Request headers

Name Type Required Description
Content-Type String Yes The media type of the request body.

Default value: "application/json"

Request body fields

Name Type Required Description
agenda String No

Webinar description.

timezone String No

Time zone to format start_time. For example, "America/Los_Angeles". For scheduled meetings only. Please reference our timezone list for supported time zones and their formats.

topic String No

Webinar topic.

tracking_fields[] Array No

Tracking fields

tracking_fields[].field String Yes

Tracking fields type

tracking_fields[].value String No

Tracking fields value

start_time String No

Webinar start time. We support two formats for start_time - local time and GMT.

To set time as GMT the format should be yyyy-MM-ddTHH:mm:ssZ.

To set time using a specific timezone, use yyyy-MM-ddTHH:mm:ss format and specify the timezone ID in the timezone field OR leave it blank and the timezone set on your Zoom account will be used. You can also set the time as UTC as the timezone field.

The start_time should only be used for scheduled and / or recurring webinars with fixed time.

recurrence Object No

Recurrence object. Use this object only for a webinar of type 9 i.e., a recurring webinar with fixed time.

recurrence.weekly_days String No

Use this field only if you're scheduling a recurring webinar of type 2 to state which day(s) of the week the webinar should repeat.
The value for this field could be a number between 1 to 7 in string format. For instance, if the Webinar should recur on Sunday, provide "1" as the value of this field.

Note: If you would like the webinar to occur on multiple days of a week, you should provide comma separated values for this field. For instance, if the Webinar should recur on Sundays and Tuesdays provide "1,3" as the value of this field.


1 - Sunday.
2 - Monday.
3 - Tuesday.
4 - Wednesday.
5 - Thursday.
6 - Friday.
7 - Saturday.

recurrence.end_date_time String No

Select a date when the webinar will recur before it is canceled. Should be in UTC time, such as 2017-11-25T12:00:00Z. (Cannot be used with "end_times".)

recurrence.end_times Integer No

Select how many times the webinar will recur before it is canceled. (Cannot be used with "end_date_time".)

Default value: 1

recurrence.type Integer Yes

Recurrence webinar types:
1 - Daily.
2 - Weekly.
3 - Monthly.

Valid values:

  • 1
  • 2
  • 3
recurrence.repeat_interval Integer No

Define the interval at which the webinar should recur. For instance, if you would like to schedule a Webinar that recurs every two months, you must set the value of this field as 2 and the value of the type parameter as 3.

For a daily webinar, the maximum interval you can set is 90 days. For a weekly webinar, the maximum interval that you can set is 12 weeks. For a monthly webinar, the maximum interval that you can set is 3 months.

recurrence.monthly_day Integer No

Use this field only if you're scheduling a recurring webinar of type 3 to state which day in a month, the webinar should recur. The value range is from 1 to 31.

For instance, if you would like the webinar to recur on 23rd of each month, provide 23 as the value of this field and 1 as the value of the repeat_interval field. Instead, if you would like the webinar to recur once every three months, on 23rd of the month, change the value of the repeat_interval field to 3.

recurrence.monthly_week Integer No

Use this field only if you're scheduling a recurring webinar of type 3 to state the week of the month when the webinar should recur. If you use this field, you must also use the monthly_week_day field to state the day of the week when the webinar should recur.
-1 - Last week of the month.
1 - First week of the month.
2 - Second week of the month.
3 - Third week of the month.
4 - Fourth week of the month.

Valid values:

  • 1
  • 2
  • 3
  • -1
  • 4
recurrence.monthly_week_day Integer No

Use this field only if you're scheduling a recurring webinar of type 3 to state a specific day in a week when the monthly webinar should recur. To use this field, you must also use the monthly_week field.
1 - Sunday.
2 - Monday.
3 - Tuesday.
4 - Wednesday.
5 - Thursday.
6 - Friday.
7 - Saturday.

Valid values:

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
password String No

Webinar passcode. Passcode may only contain the following characters: [a-z A-Z 0-9 @ - _ * !]. Max of 10 characters.

If "Require a passcode when scheduling new meetings" setting has been enabled and locked for the user, the passcode field will be autogenerated for the Webinar in the response even if it is not provided in the API request.

Note: If the account owner or the admin has configured minimum passcode requirement settings, the passcode value provided here must meet those requirements.

If the requirements are enabled, you can view those requirements by calling Get Account Settings API.

type Integer No

Webinar Types:
5 - Webinar.
6 - Recurring webinar with no fixed time.
9 - Recurring webinar with a fixed time.

Valid values:

  • 5
  • 6
  • 9

Default value: 5

settings Object No

Create Webinar settings.

settings.contact_email String No

Contact email for registration

settings.registrants_restrict_number Integer No

Restrict number of registrants for a webinar. By default, it is set to 0. A 0 value means that the restriction option is disabled. Provide a number higher than 0 to restrict the webinar registrants by the that number.

Default value: 0

settings.panelists_invitation_email_notification Boolean No
  • true: Send invitation email to panelists.

  • false: Do not send invitation email to panelists.

settings.alternative_hosts String No

Alternative host emails or IDs. Multiple values separated by comma.

settings.audio String No

Determine how participants can join the audio portion of the meeting.

Valid values:

  • "both"
  • "voip"
  • "telephony"

Default value: "both"

settings.practice_session Boolean No

Enable practice session.

Default value: false

settings.email_language String No

Set the email language to one of the following: en-US,de-DE,es-ES,fr-FR,jp-JP,pt-PT,ru-RU,zh-CN, zh-TW, ko-KO, it-IT, vi-VN.

settings.authentication_option String No

Specify the authentication type for users to join a Webinar withmeeting_authentication setting set to true. The value of this field can be retrieved from the id field within authentication_options array in the response of Get User Settings API.

settings.authentication_domains String No

Meeting authentication domains. This option, allows you to specify the rule so that Zoom users, whose email address contains a certain domain, can join the Webinar. You can either provide multiple domains, using a comma in between and/or use a wildcard for listing domains.

settings.follow_up_attendees_email_notification Object No

Send follow-up email to attendees.

settings.follow_up_attendees_email_notification.type Integer No

0 - No plan.
1 - Send 1 day after the scheduled end date.
2 - Send 2 days after the scheduled end date.
3 - Send 3 days after the scheduled end date.
4 - Send 4 days after the scheduled end date.
5 - Send 5 days after the scheduled end date.
6 - Send 6 days after the scheduled end date.
7 - Send 7 days after the scheduled end date.

Valid values:

  • 0
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
settings.follow_up_attendees_email_notification.enable Boolean No
  • true: Send follow-up email to attendees.

  • false: Do not send follow-up email to attendees.

settings.post_webinar_survey Boolean No

Zoom will open a survey page in attendees' browsers after leaving the webinar

settings.global_dial_in_countries[] Array No

List of global dial-in countries

settings.host_video Boolean No

Start video when host joins webinar.

settings.show_share_button Boolean No

Show social share buttons on the registration page.

settings.close_registration Boolean No

Close registration after event date.

settings.enforce_login_domains String No

Only signed-in users with specified domains can join meetings.

This field is deprecated and will not be supported in future.

Instead of this field, use the "authentication_domains" field for this Webinar.

settings.contact_name String No

Contact name for registration

settings.hd_video Boolean No

Default to HD video.

Default value: false

settings.auto_recording String No

Automatic recording:
local - Record on local.
cloud - Record on cloud.
none - Disabled.

Valid values:

  • "local"
  • "cloud"
  • "none"

Default value: "none"

settings.panelists_video Boolean No

Start video when panelists join webinar.

settings.registrants_email_notification Boolean No

Send email notifications to registrants about approval, cancellation, denial of the registration. The value of this field must be set to true in order to use the registrants_confirmation_email field.

settings.meeting_authentication Boolean No

Only authenticated users can join meeting if the value of this field is set to true.

settings.follow_up_absentees_email_notification Object No

Send follow-up email to absentees.

settings.follow_up_absentees_email_notification.type Integer No

0 - No plan.
1 - Send 1 days after the scheduled end date.
2 - Send 2 days after the scheduled end date.
3 - Send 3 days after the scheduled end date.
4 - Send 4 days after the scheduled end date.
5 - Send 5 days after the scheduled end date.
6 - Send 6 days after the scheduled end date.
7 - Send 7 days after the scheduled end date.

Valid values:

  • 0
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
settings.follow_up_absentees_email_notification.enable Boolean No
  • true: Send follow-up email to absentees.

  • false: Do not send follow-up email to absentees.

settings.enforce_login Boolean No

Only signed-in users can join this meeting.

This field is deprecated and will not be supported in future.

Instead of this field, use the "meeting_authentication", "authentication_option" and/or "authentication_domains" fields to establish the authentication mechanism for this Webinar.

settings.on_demand Boolean No

Make the webinar on-demand

Default value: false

settings.survey_url String No

Survey url for post webinar survey

settings.attendees_and_panelists_reminder_email_notification Object No

Send reminder email to attendees and panelists.

settings.attendees_and_panelists_reminder_email_notification.type Integer No

0 - No plan.
1 - Send 1 hour before webinar.
2 - Send 1 day before webinar.
3 - Send 1 hour and 1 day before webinar.
4 - Send 1 week before webinar.
5 - Send 1 hour and 1 week before webinar.
6 - Send 1 day and 1 week before webinar.
7 - Send 1 hour, 1 day and 1 week before webinar.

Valid values:

  • 0
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
settings.attendees_and_panelists_reminder_email_notification.enable Boolean No
  • true: Send reminder email to attendees and panelists.

  • false: Do not send reminder email to attendees and panelists.

settings.question_and_answer Object No

Q&A for webinar.

settings.question_and_answer.allow_anonymous_questions Boolean No
  • true: Allow participants to send questions without providing their name to the host, co-host, and panelists..

  • false: Do not allow anonymous questions.

settings.question_and_answer.answer_questions String No

Indicate whether you want attendees to be able to view answered questions only or view all questions.

  • only: Attendees are able to view answered questions only.

  • all: Attendees are able to view all questions submitted in the Q&A.

Valid values:

  • "only"
  • "all"
settings.question_and_answer.attendees_can_upvote Boolean No
  • true: Attendees can click the thumbs up button to bring popular questions to the top of the Q&A window.

  • false: Attendees can not click the thumbs up butoon on questions.

settings.question_and_answer.enable Boolean No
  • true: Enable Q&A for webinar.

  • false: Disable Q&A for webinar.

settings.question_and_answer.attendees_can_comment Boolean No
  • true: Attendees can answer questions or leave a comment in the question thread.

  • false: Attendees can not answer questions or leave a comment in the question thread

settings.allow_multiple_devices Boolean No

Allow attendees to join from multiple devices.

settings.approval_type Integer No

The default value is 2. To enable registration required, set the approval type to 0 or 1. Values include:

0 - Automatically approve.
1 - Manually approve.
2 - No registration required.

Valid values:

  • 0
  • 1
  • 2

Default value: 2

settings.registration_type Integer No

Registration types. Only used for recurring webinars with a fixed time.
1 - Attendees register once and can attend any of the webinar sessions.
2 - Attendees need to register for each session in order to attend.
3 - Attendees register once and can choose one or more sessions to attend.

Valid values:

  • 1
  • 2
  • 3

Default value: 1

duration Integer No

Webinar duration (minutes). Used for scheduled webinars only.

How to start integrating

  1. Add HTTP Task to your workflow definition.
  2. Search for the API you want to integrate with and click on the name.
    • This loads the API reference documentation and prepares the Http request settings.
  3. Click Test request to test run your request to the API and see the API's response.