openapi: 3.0.1 info: title: Zoom / Account Webinar API description: Needs description. contact: name: Zoom Developers url: https://zoom.us/developer email: developer@zoom.us license: name: MIT url: https://opensource.org/licenses/MIT version: 1.0.0 servers: - url: https://api.zoom.us/v1 security: - api_key: [] - api_secret: [] tags: - name: Webinar description: Webinar operations paths: /webinar/attendees/list: post: tags: - Webinar description: 'Get ended webinar attendees ' operationId: webinarAttendeesList requestBody: content: application/x-www-form-urlencoded: schema: required: - host_id - id type: object properties: id: type: string description: Webinar ID. host_id: type: string description: Webinar host user ID. Can be any user who enabled webinar under this account. uuid: type: string description: Webinar uuid. It can be fetched by /v1/webinar/uuid/list. required: true responses: '200': description: Success content: application/json: example: attendees: - first_name: Zoomie last_name: Userton email: email_address join_time: 2015-09-18 09:41:39+00:00 leave_time: 2015-09-18 09:42:12+00:00 time_in_session: '8' attended: 'Yes' custom_questions: ssssss: ' sssss' which one do you like?: sss questions: country: US address: 1234 Some Street city: Zoomville /webinar/create: post: tags: - Webinar description: 'Create a webinar on Zoom, return the created webinar start and join URL. ' operationId: webinarCreate requestBody: content: application/x-www-form-urlencoded: schema: required: - host_id - topic - type type: object properties: host_id: type: string description: Webinar host user ID. Can be any user under this account. Cannot be updated after creation. topic: type: string description: Webinar topic. Max of 300 characters. type: type: string description: 5 webinar, 6 recurrence webinar, 9 recurring webinar(With Fixed Time) default: '5' start_time: type: string description: Webinar start time in ISO datetime format. For scheduled webinar only. Should be UTC time, such as 2012-11-25T12:00:00Z. duration: type: string description: Webinar duration (minutes). For scheduled webinar only. timezone: type: string description: Timezone to format start_time, like "America/Los_Angeles". For scheduled Webinar only. For this parameter value please refer to the id value in timezone list JSON file. password: type: string description: 'Webinar password. Password may only contain the following characters: [a-z A-Z 0-9 @ - _' default: ' 10 characters' recurrence: type: string description: 'Recurrence Webinar Settings. For recurring webinar with fixed time only.

"type": Recurrence Webinar Type. 1 means Daily, 2 means Weekly, 3 means Monthly.
"repeat_interval": Recurrence Webinar Repeat Interval. Defaults to 1. For a Daily Webinar, max of 90. For a Weekly Webinar, max of 12. For a Monthly Webinar, max of 3.
"weekly_days": Recurrence Webinar Occurs on week days, multiple value separated by comma. 1 means Sunday, 2 means Monday, 3 means Tuesday, 4 means Wednesday, 5 means Thursday, 6 means Friday, 7 means Saturday.
"monthly_day": Recurrence Webinar Occurs on a month day. The value range is from 1 to 31.
"monthly_week": Recurrence Webinar Occurs on the week of a month. -1 means Last week, 1 means First week, 2 means Second week, 3 means Third week, 4 means Fourth week.
"monthly_week_day": Recurrence Webinar Occurs on the week day of a month. A single value: 1 means Sunday, 2 means Monday, 3 means Tuesday, 4 means Wednesday, 5 means Thursday, 6 means Friday, 7 means Saturday.
"end_times": Recurrence Webinar End occurrences times. Defaults to 1. Max of 50.
"end_date_time": Recurrence Webinar End Date. Should be UTC time, such as 2012-11-25T12:00:00Z.' approval_type: type: string description: Approval type. 0 means Automatically Approve. 1 means Manually Approve. 2 means No Registration Required. default: '2' registration_type: type: string description: Registration type. 1 means Attendees register once and can attend any of the occurrences, 2 means Attendees need to register for each occurrence to attend, 3 means Attendees register once and can choose one or more occurrences to attend. For recurring meeting with fixed time only. default: '1' agenda: type: string description: Webinar description. option_audio: type: string description: Webinar audio options. Can be "both", "telephony", "voip". default: both option_host_video: type: boolean description: Start video when host join Webinar. default: true option_panelist_video: type: boolean description: Start video when panelist join Webinar. default: true option_practice_session: type: boolean description: Enable Practice Session. default: false option_enforce_login: type: boolean description: Only signed-in users can join this Webinar. default: false option_enforce_login_domains: type: string description: Only signed-in users with specified domains can join Webinar. option_alternative_hosts: type: string description: Alternative hosts. option_alternative_host_ids: type: string description: Alternative hosts IDs. option_auto_record_type: type: string description: Automatically record type. Can be "local", "cloud" or "none". default: local panelists: type: string description: 'Webinar Panelists, should be JSON format: [{"name":"xxx","email":"test1@zoom.us"}, {"name":"xxx","email":"test2@zoom.us"}].' language: type: string description: Language setting of email to panelists. This value should be "en-US", "en", "zh-CN", "zh", "en-ES", "es", "fr-FR" or "fr". required: true responses: '200': description: Success content: application/json: example: uuid: unique_id id: '123456789' host_id: unique_id topic: create webinar via rest api agenda: '' status: 0 option_start_type: video option_audio: both option_enforce_login: false 'option_enforce_login_domains ': '' option_alternative_hosts: '' type: 5 start_time: ' 2015-02-08T12:50:30Z' duration: 0 timezone: America/Los_Angeles start_url: https://zoom.us/s/123456789?zak=xxxxxx join_url: https://zoom.us/j/123456789 registration_url: '' created_at: 2015-01-22 07:09:49+00:00 /webinar/delete: post: tags: - Webinar description: 'Delete a webinar on Zoom, return the deleted webinar ID. ' operationId: webinarDelete requestBody: content: application/x-www-form-urlencoded: schema: required: - host_id - id type: object properties: id: type: string description: Webinar ID. host_id: type: string description: webinar host user ID. Can be any user who enabled webinar under this account. occurrence_id: type: string description: Occurrence ID, could get this value from Webinar Get API. required: true responses: '200': description: Success content: application/json: example: id: '123456789' deleted_at: 2012-11-25 12:00:00+00:00 /webinar/end: post: tags: - Webinar description: 'End a Webinar on Zoom, return the deleted Webinar ID ' operationId: webinarEnd requestBody: content: application/x-www-form-urlencoded: schema: required: - host_id - id type: object properties: id: type: string description: Webinar ID. host_id: type: string description: Webinar host user ID. Can be any user who enabled webinar under this account. required: true responses: '200': description: Success content: application/json: example: id: '123456789' ended_at: 2012-11-25 12:00:00+00:00 /webinar/get: post: tags: - Webinar description: 'Get a Webinar on Zoom via Webinar ID, return the Webinar info ' operationId: webinarGet requestBody: content: application/x-www-form-urlencoded: schema: required: - host_id - id type: object properties: id: type: string description: Webinar ID. host_id: type: string description: Webinar host user ID. Can be any user who enabled webinar under this account. required: true responses: '200': description: Success content: application/json: example: uuid: unique_id id: '123456789' start_url: https://zoom.us/s/123456789?zak=xxxxxx join_url: https://zoom.us/j/123456789 registration_url: '' created_at: 2012-11-25 12:00:00+00:00 host_id: unique_id topic: Topic for this meeting type: 5 start_time: 2012-11-25 12:00:00+00:00 duration: 30 timezone: America/Los_Angeles agenda: '' option_start_type: video option_audio: both option_enforce_login: false 'option_enforce_login_domains ': '' option_alternative_hosts: '' status: 0 occurrences: - occurrence_id: '1483210260000' start_time: 2017-01-01 02:51:00+00:00 duration: 60 /webinar/list: post: tags: - Webinar description: 'List all registrationless Webinars on Zoom ' operationId: webinarList requestBody: content: application/x-www-form-urlencoded: schema: required: - host_id type: object properties: host_id: type: string description: Webinar host user ID. Can be any user who enabled webinar under this account. page_size: type: string description: The amount of records returns within a single API call. Defaults to 30. Max of 300 meetings. default: '30' page_number: type: string description: Current page number of returned records. Default to 1. default: '1' required: true responses: '200': description: Success content: application/json: example: page_count: 5 total_records: 235 page_number: 1 page_size: 50 webinars: - uuid: unique_id id: '123456789' start_url: https://zoom.us/s/123456789?zak=xxxxxx join_url: https://zoom.us/j/123456789 created_at: 2012-11-25 12:00:00+00:00 host_id: unique_id topic: Topic for this meeting type: 5 start_time: 2012-11-25 12:00:00+00:00 duration: 30 timezone: America/Los_Angeles agenda: '' option_start_type: video option_audio: both option_enforce_login: false 'option_enforce_login_domains ': '' option_alternative_hosts: '' status: 0 /webinar/list/registration: post: tags: - Webinar description: 'List all the upcoming registration-based Webinars on Zoom ' operationId: webinarListRegistration requestBody: content: application/x-www-form-urlencoded: schema: required: - host_id type: object properties: host_id: type: string description: Webinar host user ID. Can be any user who enabled webinar under this account. page_size: type: string description: The amount of records returns within a single API call. Defaults to 30. Max of 300 meetings. default: '30' page_number: type: string description: Current page number of returned records. Default to 1. default: '1' required: true responses: '200': description: Success content: application/json: example: page_count: 5 total_records: 235 page_number: 1 page_size: 50 webinars: - uuid: unique_id id: '123456789' start_url: https://zoom.us/s/123456789?zak=xxxxxx join_url: https://zoom.us/j/123456789 created_at: 2012-11-25 12:00:00+00:00 host_id: unique_id topic: Topic for this Webinar type: 5 start_time: 2012-11-25 12:00:00+00:00 duration: 30 timezone: America/Los_Angeles agenda: '' option_start_type: video option_audio: both status: 0 /webinar/panelists: post: tags: - Webinar description: 'Get all the Webinar Panelists on Zoom ' operationId: webinarPanelists requestBody: content: application/x-www-form-urlencoded: schema: required: - host_id - id type: object properties: id: type: string description: Webinar ID. host_id: type: string description: Webinar host user ID. Can be any user who enabled webinar under this account. required: true responses: '200': description: Success content: application/json: example: total_records: 1 panelists: - name: Zoomie Userton email: email_address join_url: https://www.zoom.us/w/552681828?tk=TMnju_IjiU7Fx3eSkrajn2irvyMBNQ4XCW6cutSPntg.DQEAAAAAIPFBZBYwbzhKUUlXVVN3bW9Ed05QUmdvU2hBAA /webinar/polls: post: tags: - Webinar description: 'Get Ended Webinar Polls ' operationId: webinarPolls requestBody: content: application/x-www-form-urlencoded: schema: required: - host_id - id type: object properties: id: type: string description: Webinar ID. host_id: type: string description: Webinar host user ID. Can be any user who enabled webinar under this account. uuid: type: string description: Webinar uuid. It can be fetched by /v1/webinar/uuid/list. required: true responses: '200': description: Success content: application/json: example: id: '123456789' uuid: unique_id start_time: 2017-02-09 07:15:48+00:00 questions: - name: Zoomie Userton email: email_address question_details: - question: question? answer: answer /webinar/questions: post: tags: - Webinar description: 'Get Ended Webinar Q&A ' operationId: webinarQuestions requestBody: content: application/x-www-form-urlencoded: schema: required: - host_id - id type: object properties: id: type: string description: Webinar ID. host_id: type: string description: Webinar host user ID. Can be any user who enabled webinar under this account. uuid: type: string description: Webinar uuid. It can be fetched by /v1/webinar/uuid/list. required: true responses: '200': description: Success content: application/json: example: id: '123456789' uuid: unique_id start_time: 2017-02-09 07:15:48+00:00 questions: - name: Zoomie Userton email: email_address question_details: - question: question? answer: answer /webinar/register: post: tags: - Webinar description: 'Register for a webinar ' operationId: webinarRegister requestBody: content: application/x-www-form-urlencoded: schema: required: - email - first_name - id - last_name type: object properties: id: type: string description: Webinar ID. email: type: string description: A valid email address. first_name: type: string description: User’s first name. last_name: type: string description: User’s last name. address: type: string description: Address. city: type: string description: City. country: type: string description: Country. For this parameter value please refer to the id value in country list JSON file zip: type: string description: Zip/Postal Code. state: type: string description: State/Province. phone: type: string description: Phone. industry: type: string description: Industry. org: type: string description: Organization. job_title: type: string description: Job Title. purchasing_time_frame: type: string description: Purchasing Time Frame, should be "Within a month", "1-3 months", "4-6 months", "More than 6 months", "No timeframe". role_in_purchase_process: type: string description: Role in Purchase Process, should be "Decision Maker", "Evaluator/Recommender", "Influencer", "Not involved". no_of_employees: type: string description: Number of Employees, should be "1-20", "21-50", "51-100", "101-250", "251-500", "501-1,000", "1,001-5,000", "5,001-10,000", "More than 10,000". comments: type: string description: Questions & Comments. custom_questions: type: string description: 'Custom Questions, should be JSON format: [{"title":"field_name1","value":"xxx"},{"title":"field_name2","value":"xxx"}].' language: type: string description: Language setting of email. This value should be "en-US", "en", "zh-CN", "zh", "en-ES", "es", "fr-FR" or "fr". occurrence_ids: type: string description: Occurrence IDs, could get this value from Webinar Get API. required: true responses: '200': description: Success content: application/json: example: registrant_id: unique_id id: '123456789' topic: webinar registration start_time: 2016-02-21 04:00:00+00:00 join_url: https://www.zoom.us/w/123456789?tk=2DsQiu6nZVsZVATrPLvXgqPvw8mmKyxgAGaDMizLv34.DQEAAAAAM9AWXhZ2Nm5vRjIyMlRoUzE3ZktWM3l4cHVRAA /webinar/registrants/approve: post: tags: - Webinar description: 'Approve pending registrants on Zoom Webinar. ' operationId: webinarRegistrantsApprove requestBody: content: application/x-www-form-urlencoded: schema: required: - host_id - id - registrant_ids type: object properties: id: type: string description: Webinar ID. host_id: type: string description: Webinar host user ID. Can be any user who enabled webinar under this account. registrant_ids: type: string description: Pending approval registrant ids. required: true responses: '200': description: Success content: application/json: example: id: '421431292' updated_at: 2016-08-18 02:11:40+00:00 /webinar/registrants/list: post: tags: - Webinar description: 'List webinar registrants on Zoom, include pending approval registrants and approved registrants. ' operationId: webinarRegistrantsList requestBody: content: application/x-www-form-urlencoded: schema: required: - host_id - id type: object properties: id: type: string description: Webinar ID. host_id: type: string description: Webinar host user ID. Can be any user who enabled webinar under this account. type: type: string description: 0 means pending approval registrants, 1 means approved registrants. default: '0' page_size: type: string description: The amount of records returns within a single API call. Defaults to 30. default: '30' page_number: type: string description: Current page number of returned records. Default to 1. default: '1' required: true responses: '200': description: Success content: application/json: example: page_count: 1 page_number: 1 page_size: 30 total_records: 1 type: 0 users: - id: unique_id first_name: Zoomie last_name: Userton email: email_address registration_time: 2016-08-18 01:45:26+00:00 /webinar/registration: post: tags: - Webinar description: 'Gather Webinar registrants info ' operationId: webinarRegistration requestBody: content: application/x-www-form-urlencoded: schema: required: - host_id - id type: object properties: id: type: string description: Webinar ID. host_id: type: string description: Webinar host user ID. Can be any user who enabled webinar under this account. occurrence_id: type: string description: Occurrence ID, could get this value from Webinar Get API. page_size: type: string description: The amount of records returns within a single API call. Defaults to 30. default: '30' page_number: type: string description: Current page number of returned records. Default to 1. default: '1' required: true responses: '200': description: Success content: application/json: example: page_count: 1 page_number: 1 page_size: 30 total_records: 1 attendees: - id: unique_id first_name: Zoomie last_name: Userton create_time: 2015-08-23 03:03:48+00:00 approval: approved email: email_address registration_url: https://api.zoom.us/w/206388466?tk=n8-qbK4ocC73mPjIRlheMksYPxeWAhnktoUZq_xAqg8.DQEAAAAADE088hZKTXcxTllpelFjZXNfNDg0NlNKQ3lRAA /webinar/registration/cancel: post: tags: - Webinar description: 'Cancel Webinar Registration ' operationId: webinarRegistrationCancel requestBody: content: application/x-www-form-urlencoded: schema: required: - host_id - id - registrant_ids type: object properties: id: type: string description: Webinar ID. host_id: type: string description: Webinar host user ID. Can be any user who enabled webinar under this account. occurrence_id: type: string description: Occurrence ID, could get this value from Webinar Get API. registrant_ids: type: string description: Webinar registrant IDs, separated by comma. Max of 15 registrants. required: true responses: '200': description: Success content: application/json: example: id: '844495467' updated_at: 2016-11-29 01:26:43+00:00 /webinar/update: post: tags: - Webinar description: 'Update Webinar info on Zoom via Webinar ID ' operationId: webinarUpdate requestBody: content: application/x-www-form-urlencoded: schema: required: - host_id - id type: object properties: id: type: string description: Webinar ID. host_id: type: string description: Webinar host user ID. Can be any user under this account. Cannot be updated after creation. topic: type: string description: Webinar topic. Max of 300 characters. type: type: string description: 5 webinar, 6 recurrence webinar, 9 recurring webinar(With Fixed Time) default: '5' start_time: type: string description: Webinar start time in ISO datetime format. For scheduled webinar only. Should be UTC time, such as 2012-11-25T12:00:00Z. duration: type: string description: Webinar duration (minutes). For scheduled webinar only. timezone: type: string description: Timezone to format start_time, like "America/Los_Angeles". For scheduled Webinar only. For this parameter value please refer to the id value in timezone list JSON file. password: type: string description: 'Webinar password. Password may only contain the following characters: [a-z A-Z 0-9 @ - _' default: ' 10 characters' recurrence: type: string description: 'Recurrence Webinar Settings. For recurring webinar with fixed time only.

"type": Recurrence Webinar Type. 1 means Daily, 2 means Weekly, 3 means Monthly.
"repeat_interval": Recurrence Webinar Repeat Interval. Defaults to 1. For a Daily Webinar, max of 90. For a Weekly Webinar, max of 12. For a Monthly Webinar, max of 3.
"weekly_days": Recurrence Webinar Occurs on week days, multiple value separated by comma. 1 means Sunday, 2 means Monday, 3 means Tuesday, 4 means Wednesday, 5 means Thursday, 6 means Friday, 7 means Saturday.
"monthly_day": Recurrence Webinar Occurs on a month day. The value range is from 1 to 31.
"monthly_week": Recurrence Webinar Occurs on the week of a month. -1 means Last week, 1 means First week, 2 means Second week, 3 means Third week, 4 means Fourth week.
"monthly_week_day": Recurrence Webinar Occurs on the week day of a month. A single value: 1 means Sunday, 2 means Monday, 3 means Tuesday, 4 means Wednesday, 5 means Thursday, 6 means Friday, 7 means Saturday.
"end_times": Recurrence Webinar End occurrences times. Defaults to 1. Max of 50.
"end_date_time": Recurrence Webinar End Date. Should be UTC time, such as 2012-11-25T12:00:00Z.' approval_type: type: string description: Approval type. 0 means Automatically Approve. 1 means Manually Approve. 2 means No Registration Required. default: '2' registration_type: type: string description: Registration type. 1 means Attendees register once and can attend any of the occurrences, 2 means Attendees need to register for each occurrence to attend, 3 means Attendees register once and can choose one or more occurrences to attend. For recurring meeting with fixed time only. default: '1' agenda: type: string description: Webinar description. option_audio: type: string description: Webinar audio options. Can be "both", "telephony", "voip". default: both option_host_video: type: boolean description: Start video when host join Webinar. default: true option_panelist_video: type: boolean description: Start video when panelist join Webinar. default: true option_practice_session: type: string description: Enable Practice Session. option_enforce_login: type: boolean description: Only signed-in users can join this Webinar. default: false option_enforce_login_domains: type: string description: Only signed-in users with specified domains can join Webinar. option_alternative_hosts: type: string description: Alternative hosts. option_alternative_host_ids: type: string description: Alternative hosts IDs. option_auto_record_type: type: string description: Automatically record type. Can be "local", "cloud" or "none". default: local panelists: type: string description: 'Webinar Panelists, should be JSON format: [{"name":"xxx","email":"test1@zoom.us"}, {"name":"xxx","email":"test2@zoom.us"}].' language: type: string description: Language setting of email to panelists. This value should be "en-US", "en", "zh-CN", "zh", "en-ES", "es", "fr-FR" or "fr". required: true responses: '200': description: Success content: application/json: example: id: '123456789' updated_at: 2012-11-25 12:00:00+00:00 /webinar/uuid/list: post: tags: - Webinar description: 'Get ended webinar UUID. ' operationId: webinarUuidList requestBody: content: application/x-www-form-urlencoded: schema: required: - host_id - id type: object properties: id: type: string description: Webinar ID. host_id: type: string description: Webinar host user ID. Can be any user who enabled webinar under this account. required: true responses: '200': description: Success content: application/json: example: webinars: - uuid: unique_id start_time: 2015-08-23 03:03:48+00:00 externalDocs: description: Zoom REST API Documentation url: https://zoom.github.io/api