https://github.com/ohcnetwork/zoomdrive
A GitHub Action to download Zoom recordings periodically and upload to Google Drive
https://github.com/ohcnetwork/zoomdrive
actions gdrive zoom
Last synced: about 1 year ago
JSON representation
A GitHub Action to download Zoom recordings periodically and upload to Google Drive
- Host: GitHub
- URL: https://github.com/ohcnetwork/zoomdrive
- Owner: ohcnetwork
- License: mit
- Created: 2023-07-03T07:17:40.000Z (almost 3 years ago)
- Default Branch: main
- Last Pushed: 2024-05-06T06:25:22.000Z (about 2 years ago)
- Last Synced: 2025-04-01T20:15:58.765Z (about 1 year ago)
- Topics: actions, gdrive, zoom
- Language: TypeScript
- Homepage: https://zoomdrive.ohc.network
- Size: 10.6 MB
- Stars: 2
- Watchers: 5
- Forks: 3
- Open Issues: 13
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
A GitHub Action that periodically syncs your Zoom cloud meeting recordings to Google Drive.
See Quick Start guide & 📖 Docs here: https://zoomdrive.ohc.network
## Prerequisites
- ☑️ A zoom Server-to-Server OAuth App scopes: `/recording:read:admin` and `/recording:write:admin`.
- ☑️ A Google Service Account with access to Google Drive API.
- ☑️ Write access to a Google Drive folder for the above service.
_See [here](https://zoomdrive.ohc.network/#pre-requisites) for more info._
## Inputs
Various inputs are defined in [`.github/workflows/main.yaml`](/.github/workflows/main.yaml) to let you configure the zoomdrive action:
| Name | Description | Default |
|-----------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------|
| `zoom_account_id` | Account ID of the Zoom Server-to-Server OAuth App. | N/A, Required. |
| `zoom_client_id`. | Client ID of the Zoom Server-to-Server OAuth App. | N/A, Required. |
| `zoom_client_secret` | Client Secret of the Zoom Server-to-Server OAuth App. | N/A, Required. |
| `gsa_credentials` | The base64 encoded string of the Google Service Account's JSON Credentials file. | N/A, Required. |
| `lookback_days` | The number of days to look back from `end_date` for which is to be downloaded (Should be < 30 as Zoom's List API itself limits it per API call). | 1 |
| `end_date` | The end date of the recordings. All recordings between `end_date` and `end_date` - `lookback_days` will be attempted for sync. | Day of run |
| `delete_on_success` | Whether the successfully synced recordings should be deleted or not from Zoom's Cloud. | False |
| `meeting_gdrive_folder_map` | A based64 encoded string of a JSON Map where keys are the meeting ID's (without spaces) and values are the folder ID's of where the recordings of that particular meeting are to be uploaded. | N/A, Required. |