This project is a Node.js application designed to fetch and process data from the Zoom API, including user information, meeting recordings, and meeting summaries. It stores the processed data in local files and can optionally push the data to an external endpoint.
- Project Structure
- Setup
- Configuration
- Usage
- Key Features
- API Endpoints Used
- Error Handling
- Contributing
.
├── auth.js
├── config.js
├── server.js
├── utils
│ ├── apiutils.js
│ ├── dateutils.js
│ └── fileutils.js
└── zoomapi.js
auth.js
: Handles OAuth 2.0 authentication with Zoom API.config.js
: Contains configuration settings for the application.server.js
: The main entry point of the application.utils/
: Directory containing utility functions.apiutils.js
: Utility functions for making API calls.dateutils.js
: Functions for date manipulation.fileutils.js
: Functions for file operations (downloading, writing).
zoomapi.js
: Core logic for fetching and processing Zoom data.
Setup
-
Clone the repository:
git clone https://github.com/ojusave/zmail_astradb.git cd zmail_astradb
-
Install dependencies:
npm install
-
Set up your
config.js
file with the necessary credentials and settings.
Edit the config.js
file to include your Zoom API credentials and other settings:
const config = {
clientId: 'YOUR_CLIENT_ID',
clientSecret: 'YOUR_CLIENT_SECRET',
accountId: 'YOUR_ACCOUNT_ID',
zoomApiBaseUrl: 'https://api.zoom.us/v2',
endpointUrl: 'YOUR_ENDPOINT_URL' // Optional: for pushing data to an external service
};
module.exports = config;
To run the application:
node server.js
This will start the process of fetching data from the Zoom API, processing it, and saving it to local files.
/users
: To fetch user data/users/{userId}/recordings
: To fetch recording data for each user/meetings/{meetingId}/meeting_summary
: To fetch meeting summaries
The application includes error handling for API calls, file operations, and data processing. Errors are logged to the console for debugging purposes.
Please follow these steps:
- Fork the repository
- Create a new branch (
git checkout -b feature/your-feature
) - Make your changes
- Commit your changes (
git commit -am 'Add some feature'
) - Push to the branch (
git push origin feature/your-feature
) - Create a new Pull Request