openapi: 3.0.1 info: title: 'Zoom webinar/' 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 externalDocs: description: Zoom REST API Documentation url: https://zoom.github.io/api servers: - url: https://api.zoom.us/v1 security: - api_key: [] - api_secret: [] tags: - name: Webinar 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-18T09:41:39.000Z' leave_time: '2015-09-18T09:42:12.000Z' 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-22T07:09:49.000Z' /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-25T12:00:00.000Z' /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-25T12:00:00.000Z' /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-25T12:00:00.000Z' host_id: unique_id topic: Topic for this meeting type: 5 start_time: '2012-11-25T12:00:00.000Z' 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-01T02:51:00.000Z' 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-25T12:00:00.000Z' host_id: unique_id topic: Topic for this meeting type: 5 start_time: '2012-11-25T12:00:00.000Z' 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-25T12:00:00.000Z' host_id: unique_id topic: Topic for this Webinar type: 5 start_time: '2012-11-25T12:00:00.000Z' 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-09T07:15:48.000Z' 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-09T07:15:48.000Z' 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-21T04:00:00.000Z' 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-18T02:11:40.000Z' /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-18T01:45:26.000Z' /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-23T03:03:48.000Z' 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-29T01:26:43.000Z' /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-25T12:00:00.000Z' /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-23T03:03:48.000Z' components: schemas: {}