Theta Lake's Zoom eComms Archive integration module works directly with Zoom's meeting and webinar archiving solution to deliver selective content archiving options for any content types or modes used in Zoom Meetings.
You can create a Zoom eComms Archive Server Authentication integration to archive content directly from one server to another using your organization’s archive using Zoom’s Archive Server Auth application.
Theta Lake supports three types of in-meeting chats for Zoom eComms Archive:
- Public — Includes all participants
- Private — Includes two participants,
- Sub-group — Includes multiple participants
Both the private and sub-group chats are grouped into threaded conversations that are nested in the meeting conversation (public chat). Messages appear in the order they were sent, are marked by the start and end of each conversation, and includes of list of all participants for each chat type.
|
The Zoom eComms Archive Server Authentication integration is a special-case integration that’s designed for server-to-server communication between Zoom eComms Archive and specific Theta Lake environments. To determine if this integration is appropriate for your environment, contact your Theta Lake representative. If this is not your use case, you can instead add a standard Zoom eComms Archive integration. |
Prerequisites
Before you add a Zoom eComms Archive Server Authentication integration to your Theta Lake Workspace, you must request Zoom support to enable the archiving feature in your Zoom account. For more information about Zoom archiving, see Archiving indicators in the Zoom Support portal.
Contact Zoom Support to enable the following settings in your account.
- Zoom Meeting and Webinar Archiving
- (Optional) Capture breakout rooms
- (Optional) Capture external participant audio (follow the user)
After you submit your request, contact Theta Lake Support and your Zoom account representative with information about your request.
You must enable the Archive meetings/webinars feature in your Zoom administration portal.
You must also create a Zoom Server to Server OAuth app for your organization. When you create the app, make sure that you enable the following scopes in the app. The app must include all of the required scopes, and the scopes for any of the optional features that you enable for the integration.
In the following list, features that are optional are configured by you. If the feature is enabled after you add the integration to your Theta Lake Workspace, you must add the required scopes for that feature, reauthorize the integration, and accept the new set of permissions.
| Feature | Optional | Required Scope |
|---|---|---|
| Participant information | No |
user:read:user:admin user:read:list_users:admin webinar:read:list_panelists:admin meeting:read:list_past_participants:admin webinar:read:list_past_participants:admin report:read:list_meeting_participants:admin report:read:list_webinar_participants:admin meeting:read:past_meeting:admin |
|
Additional metadata captured for the optional archiving feature. Optional metadata is only captured for Zoom accounts with a Business or higher plan. For more information, see Meeting Participants. |
No |
dashboard:read:list_meeting_participants:admin dashboard:read:list_webinar_participants:admin |
| Access to the Zoom Archiving API endpoints required for processing | No | archiving:read:list_archived_files:admin |
| Groups | No | group:read:list_groups:admin |
| Update an archived file's auto-delete status | No | archiving:update:archived_file_auto_delete_status:admin |
| Include Polls | Yes |
meeting:read:list_polls:admin webinar:read:list_polls:admin meeting:read:list_poll_results:admin webinar:read:list_past_polls:admin |
| Include Q&A | Yes |
meeting:read:past_qa:admin webinar:read:past_qa:admin |
| Include AI Companion Summary | Yes |
meeting:read:list_summaries:admin meeting:read:summary:admin |
| Include Survey | Yes |
meeting:read:survey:admin webinar:read:survey:admin report:read:meeting_survey:admin report:read:webinar_survey:admin |
|
Because third-party applications can change without notice, Theta Lake doesn’t write complete instructions for third-party tools, such as Zoom. We recommend that you follow the instructions provided by the third-party tool to complete the necessary steps. We provide the Theta Lake-specific options that you need during the installation and configuration processes, but we recommend that you verify those options with the third-party documentation, and with your own internal implementation process documentation. |
After archiving is enabled for your Zoom account, you can add a Zoom eComms Archive integration to your Theta Lake Workspace. Before you begin, make sure that you have all of these prerequisites.
- Zoom administrative account with server-to-server OAuth app access permissions enabled
- Zoom Server to Server OAuth App client ID, client secret, and user account ID
- Zoom Archive function, approved by Zoom Support for your Zoom environment
- Administrative account for your Theta Lake Workspace
- Theta Lake Zoom eComms Archive Server Authentication license
Add a Zoom eComms Archive Integration
After you have all of your prerequisites, you can add an integration for Zoom eComms Archive to your Theta Lake Workspace.
- From the Theta Lake Portal top menu, select Policies.
The Policies Settings menu appears. - Expand the Content Source section and select Collaboration Platforms.
The Collaboration Platforms page appears with your current list of collaboration platform integrations. - Click Add New Integration.
The Add New Integration dialog box appears. - In the Search text box, type Zoom to filter the list of collaboration platforms.
The list of integrations is filtered as you type. - Select Zoom eComms Archive Server Auth.
The Add New Integration dialog box appears. - In the App Client ID text box, type the client ID for your Zoom Server to Server OAuth App.
- In the App Client Secret text box, type the client secret for your Zoom Server to Server OAuth App.
- In the User Account ID text box, type the ID for your Zoom account.
- Click Connect.
The Zoom Marketplace appears and authenticates the app with the Client ID and Client Secret.
The Edit Integration dialog box appears with the configuration options. - In the Name text box, type a friendly name for this integration.
- (Optional) From the Groups drop-down list, select one or more groups of users from your Zoom account.
If you don’t specify a group, we capture recordings from all of your Zoom users. - From the Media drop-down list, select the type of media to capture.
- None
- Audio only
- Video & Audio
- (Optional) Select the check box for each Zoom meeting content type that you want to capture.
- Meeting chat
- Polls
- Q&A
- AI Companion Summary
The Zoom-generated AI summary. This is only captured if a Zoom AI summary is available. - Surveys
- Transcripts
The Zoom-provided transcript. This is only captured if a Zoom transcript is available and you select Audio only or Video & Audio for the Media. - Closed captions
- Click Next.
The Save Integration dialog box appears. - Click the button for one of the integration creation options:
- Save And Start — Save the configuration and start capturing media immediately.
- Save And Don’t Start Yet — Save the configuration, but don’t start capturing media.
The integration that you selected is added to your Theta Lake Workspace.
If you choose to wait to start capturing data, you can edit the integration configuration later to start the data capture.
- Contact your Theta Lake Customer Service Manager to enable the integration in the Theta Lake backend.
After you complete the integration and start capturing data, Theta Lake connects to your Zoom eComms Archive Server Auth instance to retrieve call communications and ingest them in the Theta Lake platform as they are produced. We store that record information in the Theta Lake platform, and process and analyze the records based on the policies and SWRV rules that you configure in your Theta Lake Workspace.
You can view all of your ingested records in the Theta Lake Portal and review the communication details, as well as the risk score we’ve calculated for each record. You can also use the Zoom eComms Archive metadata (attributes) to search for records related to Zoom eComms Archive in your Theta Lake Workspace.
After you have successfully enabled Zoom eComms Archive, Zoom participants see a message in the Zoom meeting that the meeting is being archived.
Automatically Delete Archived Recordings
Zoom Archiving supports archiving and storage of recorded content in Zoom storage. By default, this content is retained for the number of days you specify in your Zoom Archive configuration, and is then deleted.
As an additional compliance measure, you can change this default behavior to retain the archived files indefinitely, until you explicitly tag the file for deletion and your specified retention period has expired.
| Contact Zoom Support to modify the default behavior. |
After the behavior is modified, you can update your Zoom Server to Server OAuth app to add permissions for Theta Lake to automatically delete a file from your Zoom storage. Files are only deleted after they’re successfully captured by Theta Lake and a record is generated in your Theta Lake Workspace.
Enable these additional scopes in your Zoom Server to Server OAuth app configuration:
- recording:write
- recording:write:admin
Zoom eComms Archive Server Auth Metadata
Zoom AI Companion summaries are part of a meeting and include all of the meeting-level metadata (attributes).
When you search for a record in your Theta Lake Workspace, you can use the Search filters to locate a record by any of these attributes.
| Attribute Name | Zoom API Field | Description |
|---|---|---|
| ArchiveFileFileExtension | The extension type of the archive file. | |
| ArchiveFileFileSize | The file size of the archive file. | |
| ArchiveFileFileType | The file type of the archive file. | |
| ArchiveFileId | The identifier (ID) of the file. | |
| ArchiveFileIsIndividual |
Whether the archive file is for an individual participant. Values: true or false |
|
| ArchiveFileParticipantEmail | /archive_files.meetings[i].archive_files[j].individual |
The email address of the individual recording file. This value is returned if the individual value is true. If the participant is not part of the host's account, this returns an empty string value, with some exceptions. |
| ArchiveFileParticipantJoinTime | The time the participant joined the archived meeting. | |
| ArchiveFileParticipantLeaveTime | The time the participant left the archived meeting. | |
| ArchiveFileRecordingType | The file type of the archived meeting. | |
| IsOptionalRecording |
Whether the meeting was archived by choice by at least one participant. Values: true or false |
|
| MeetingAccountName | /archive_files.account_name | The account name of the participant. |
| MeetingCompleteTime | /archive_files.complete_time | The meeting or webinar's archive completion time. |
| MeetingDurationInSecond | /archive_files.duration_in_second | The meeting or webinar's duration, in seconds |
| MeetingHostId | /archive_files.host_id | The ID of the user that is the host of the archived meeting or webinar. |
| MeetingId | /archive_files.id |
The meeting or webinar ID: meetingId or webinarId |
| MeetingIsBreakoutRoom | /archive_files.is_breakout_room | Whether the room is a breakout room. |
| MeetingMeetingType | /archive_files.meeting_type |
Whether the meeting or webinar is internal or external.
internal — An internal meeting or webinar external — An external meeting or webinar
The id, host_id, and topic PII (Personal Identifiable Information) values in this response are removed when this value is external.Allowed: internal┃external. |
| MeetingUUID | /archive_files.uuid | The universally unique identifier (UUID) of the recorded meeting or webinar. Each meeting or webinar instance generates a UUID. |
| ParticipantsJoinWithArchiving | The email address of each user who chose to archive the meeting. | |
| ParticipantsJoinWithoutArchiving | The email address of each user who chose not to archive the meeting. | |
| ParticipantsNoOptionalArchiving | The email address of each user who had mandatory archiving enabled. | |
| SummaryCreatedTime | /meetings/{meetingId}/meeting_summary.summary_created_time | The date and time that the meeting summary was created. |
| SummaryEndTime | /meetings/{meetingId}/meeting_summary.meeting_summary_end_time | The end date and time of the summary. |
| SummaryLastModifiedTime | /meetings/{meetingId}/meeting_summary.summary_last_modified_time | The date and time when the meeting summary was last modified. |
| SummaryStartTime | /meetings/{meetingId}/meeting_summary.summary_start_time | The start date and time of the summary. |