UNPKG

zaccl

Version:

The Zoom App Complete Connection Library, a project that handles everything required to build a zoom-integrated app.

166 lines (165 loc) 6.29 kB
/** * Category of endpoints for Zoom meetings * @author Gabe Abrams * @author Aryan Pandey * @namespace api.meeting */ import EndpointCategory from '../shared/interfaces/EndpointCategory'; import ZoomMeeting from '../types/ZoomMeeting'; import PollOccurrence from '../types/ZoomPollOccurrence'; import PollInfo from '../types/ZoomPollInfo'; import ZoomMeetingDetails from '../types/ZoomMeetingDetails'; import ZoomMeetingIdAndStartTime from '../types/ZoomMeetingIdAndStartTime'; declare class ECatMeeting extends EndpointCategory { /** * Get info on a meeting * @author Gabe Abrams * @author Aryan Pandey * @instance * @memberof api.meeting * @method get * @param opts object containing all arguments * @param opts.meetingId the Zoom ID of the meeting * @param [opts.occurrenceId] ID for the meeting occurrence * @param [opts.showAllOccurrences=false] if truthy, * retrieves all past occurrences * @returns Zoom meeting object {@link https://marketplace.zoom.us/docs/api-reference/zoom-api/meetings/meeting#responses} */ get(opts: { meetingId: number; occurrenceId?: string; showAllOccurrences?: boolean; }): Promise<ZoomMeeting>; /** * Create a new meeting * @author Gabe Abrams * @author Aryan Pandey * @instance * @memberof api.meeting * @method create * @param opts object containing all arguments * @param opts.userId the user ID or email address of the user * @param opts.meetingObj Zoom meeting object with meeting details {@link https://marketplace.zoom.us/docs/api-reference/zoom-api/meetings/meetingcreate#request-body}} * @returns Zoom meeting object {@link https://marketplace.zoom.us/docs/api-reference/zoom-api/meetings/meetingcreate#request-body}} */ create(opts: { userId: string; meetingObj: ZoomMeeting; }): Promise<ZoomMeeting>; /** * Update a meeting * @author Gabe Abrams * @author Aryan Pandey * @instance * @memberof api.meeting * @method update * @param opts object containing all arguments * @param opts.meetingId the Zoom ID of the meeting * @param opts.meetingObj Zoom meeting object with updated details {@link https://marketplace.zoom.us/docs/api-reference/zoom-api/meetings/meetingupdate#request-body} * @param [opts.occurrenceId] ID for the meeting occurrence * @returns Zoom meeting object {@link https://marketplace.zoom.us/docs/api-reference/zoom-api/meetings/meetingcreate#request-body}} */ update(opts: { meetingId: number; meetingObj: ZoomMeeting; occurrenceId?: string; }): Promise<ZoomMeeting>; /** * Delete a meeting * @author Gabe Abrams * @author Aryan Pandey * @instance * @memberof api.meeting * @method delete * @param opts object containing all arguments * @param opts.meetingId the Zoom ID of the meeting * @param [opts.occurrenceId] ID for the meeting occurrence * @param [opts.notifyHosts=false] if truthy, * sends cancellation email to hosts * @returns Zoom meeting object {@link https://marketplace.zoom.us/docs/api-reference/zoom-api/meetings/meetingcreate#request-body}} */ delete(opts: { meetingId: number; occurrenceId?: string; notifyHosts?: boolean; }): Promise<ZoomMeeting>; /** * Get a list of ended meeting instances * @author Gabe Abrams * @author Aryan Pandey * @instance * @memberof api.meeting * @method listPastInstances * @param opts object containing all arguments * @param opts.meetingId the Zoom ID of the meeting * @returns list of ended meeting instances {@link https://marketplace.zoom.us/docs/api-reference/zoom-api/meetings/pastmeetings#responses} */ listPastInstances(opts: { meetingId: number; }): Promise<ZoomMeetingIdAndStartTime[]>; /** * Get details of a past meeting instance * @author Yuen Ler Chow * @instance * @memberof api.meeting * @method getPastMeetingDetails * @param uuid the Zoom UUID of the meeting * @returns details of a past meeting instance */ getPastMeetingDetails(opts: { uuid: string; }): Promise<ZoomMeetingDetails>; /** * List past poll occurrences * @author Yuen Ler Chow * @instance * @memberof api.meeting * @method listPastPollOccurrences * @param opts.uuid the Zoom UUID of the meeting * @returns list of past poll occurrences */ listPastPollOccurrences(opts: { uuid: string; }): Promise<PollOccurrence[]>; /** * Get poll info * @author Yuen Ler Chow * @instance * @memberof api.meeting * @method getPollInfo * @param opts object containing all arguments * @param opts.meetingId the Zoom ID of the meeting * @param opts.pollId the id of the poll * @returns object with all info about the poll */ getPollInfo(opts: { meetingId: number; pollId: string; }): Promise<PollInfo>; /** * Add one alt-host if not already in the list. If another user in the alt-host * list has been deactivated, all alt-hosts are removed and the requested * user is added as the only alt-host. This is because Zoom doesn't give us * enough information to determine which user is deactivated, and thus, * the only way to resolve the issue is to remove all previously existing * alt-hosts. * @author Gabe Abrams * @author Aryan Pandey * @instance * @memberof api.meeting * @method addAltHost * @param opts object containing all arguments * @param opts.meetingId the id for the meeting to add hosts to * @param opts.altHost the email or id of the alt host to * be added * @param [opts.meetingObj] Zoom meeting object that needs to be * updated. Meeting ID is not used to fetch meeting if this object is passed * @returns updated meeting object after adding alternative host */ addAltHost(opts: { meetingId: number; altHost: string; meetingObj?: ZoomMeeting; }): Promise<ZoomMeeting>; } export default ECatMeeting;