UNPKG

zaccl

Version:

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

107 lines (106 loc) 5.13 kB
/** * Category of endpoints for Zoom cloud recordings * @author Gabe Abrams * @author Aryan Pandey * @namespace api.cloudRecording */ import EndpointCategory from '../shared/interfaces/EndpointCategory'; import ZoomMeetingRecordings from '../types/ZoomMeetingRecordings'; import ZoomRecordingInAccount from '../types/ZoomRecordingInAccount'; declare class ECatCloudRecording extends EndpointCategory { /** * List recordings in the account (Medium) * @author Gabe Abrams * @instance * @memberof api.cloudRecording * @method listAccountRecordings * @param opts object containing all arguments * @param opts.fromYear the start of the date range to list recordings for (e.g. 2026) * @param opts.fromMonth the month of the date range to list recordings for (1-12) * @param [opts.fromDay] the day of the month of the date range to list recordings for (1-31, defaults to 1) * @param [opts.toYear] the end of the date range to list recordings for (e.g. 2026, defaults to 1 month later) * @param [opts.toMonth] the month of the end of the date range to list recordings for (1-12, defaults to 1 month later) * @param [opts.toDay] the day of the month of the end of the date range to list recordings for (1-31, defaults to 1 month later) * @param [opts.accountId] the account ID of the account of interest (defaults to the account * associated with the current access) * @param [opts.onNewPage] callback function that is called when a new page of results is received. * The function is passed the new page of results as an argument. * @param [opts.minMsBetweenPageRequests] minimum time (in ms) to wait between paginated requests, * for custom throttle control * @returns the list of recordings in the account */ listAccountRecordings(opts: { fromYear: number; fromMonth: number; fromDay?: number; toYear?: number; toMonth?: number; toDay?: number; accountId?: string; onNewPage?: (recordings: ZoomRecordingInAccount[]) => void; minMsBetweenPageRequests?: number; }): Promise<ZoomRecordingInAccount[]>; /** * Recover recordings for a meeting (Light) * @author Gabe Abrams * @instance * @memberof api.cloudRecording * @method recoverMeetingRecordings * @param opts object containing all arguments * @param opts.meetingId the Zoom meeting ID or UUID */ recoverMeetingRecordings(opts: { meetingId: string | number; }): Promise<void>; /** * Get all recordings of a meeting (Light) * @author Aryan Pandey * @instance * @memberof api.cloudRecording * @method listMeetingRecordings * @param opts object containing all arguments * @param opts.meetingId the Zoom meeting ID or UUID * @param opts.includeDownloadAccessToken if true, the response will include a download_access_token * that can be used to download the recording files * @param opts.attemptRecoverOnNotFound if true, when Zoom returns a "not found" error, * attempt to recover the recording and then fetch the recording info again * @returns list of Zoom meeting recording objects {@link https://marketplace.zoom.us/docs/api-reference/zoom-api/cloud-recording/recordingget#responses} */ listMeetingRecordings(opts: { meetingId: string | number; includeDownloadAccessToken?: boolean; attemptRecoverOnNotFound?: boolean; }): Promise<ZoomMeetingRecordings>; /** * List all cloud recordings of a user (Medium) * @author Aryan Pandey * @instance * @memberof api.cloudRecording * @method listUserRecordings * @param opts object containing all arguments * @param opts.userId the user ID or email address of the user * @param [opts.searchTrash=false] set to true to retrieve * meeting recordings from the trash. * @param [opts.startDate=1 month before today] * string accepted by JS Date constructor or instance of Date object. * Date needs to be within past 6 months. Time data (hours and seconds) * is discarded * @param [opts.endDate] string accepted by JS Date * constructor or instance of Date object. * Date needs to be within past 6 months. Time data (hours and seconds) * is discarded * @param [opts.onNewPage] callback function that is called when a new page of results is received. * @param [opts.minMsBetweenPageRequests] minimum time (in ms) to wait between paginated requests, * for custom throttle control * @returns List of Zoom Recordings {@link https://marketplace.zoom.us/docs/api-reference/zoom-api/cloud-recording/recordingslist#responses} */ listUserRecordings(opts: { userId: string; searchTrash?: boolean; startDate?: (string | Date); endDate?: (string | Date); onNewPage?: (recordings: ZoomMeetingRecordings[]) => void; minMsBetweenPageRequests?: number; }): Promise<ZoomMeetingRecordings[]>; } export default ECatCloudRecording;