Automated Workflow for Google Form Submissions, GitHub Issues, and Discord Notifications
This workflow streamlines how new Google Form submissions are processed by automatically creating GitHub issues and sending real-time notifications to a Discord channel through a webhook.
Who Is This Template For?
- Developers looking to centralize bug reporting and issue tracking.
- Project Managers seeking an efficient way to log tasks and updates.
- QA Teams that need a fast, automated process for reporting and resolving issues.
Workflow Overview
-
Google Form Trigger
- The workflow begins with a Google Sheets Trigger node that checks for new form submissions every minute.
-
Add New Form Submissions to Google Sheets
- Each new submission is recorded in a dedicated Google Sheet for easy reference and archiving.
-
Filter Out Already Posted Issues
- An If node checks if the issue is already posted on GitHub by looking for an existing GitHub link in the sheet.
-
Format Message / Output Parsing
- If the issue is new, an OpenAI Chat Model node generates a structured output, including a title, description, and suggested fix.
-
Add Issue to GitHub
- The structured output is used to create a new issue in the specified GitHub repository.
-
Send Notification to Discord
- A Discord webhook is triggered to send a notification to your chosen channel, including a link to the newly created GitHub issue.
-
Add GitHub Link to the Sheet
- The GitHub issue link is added back to the Google Sheet for easy cross-referencing.
Setup Steps
1. Google Sheets Setup
- Create/Designate a Google Sheet: Ensure itโs set to receive form submissions.
- Configure the Trigger Node: Provide the correct document ID and sheet name in the Google Sheets Trigger node.
2. OpenAI Configuration
- API Credentials: Set up the OpenAI Chat Model node with valid OpenAI API credentials.
- Prompt Definition: Create a prompt that formats the form submission data into a structured output (e.g., title, description, suggested fix).
3. GitHub Configuration
- OAuth Credentials: Configure the GitHub node with your GitHub OAuth credentials.
- Target Repository: Specify the repository where new issues should be created.
4. Discord Webhook
- Webhook URL: Obtain a webhook URL from your Discord server.
- Notification Setup: Use the HTTP Request node to send notifications to your chosen Discord channel.
5. Google Sheets Update
- Document & Sheet Name: Provide the same Google Sheet details used in the first step.
- Add GitHub Link: Update the corresponding row with the newly created GitHub issue link.
Recommended Google Sheet Columns
- Timestamp: Automatically recorded when the form is submitted.
- Issue Title: Generated by the OpenAI Chat Model.
- Issue Description: Detailed breakdown of the issue.
- GitHub Link: Automatically populated once the issue is created.
- Discord Notification Status (optional): Indicates whether the notification was sent successfully.
Additional Notes
- Duplicate Prevention: The conditional logic ensures existing issues arenโt recreated on GitHub.
- AI-Powered Formatting: OpenAI helps structure the issue details, providing clarity for developers.
- Real-Time Alerts: Discord notifications keep your entire team updated on new issues as they arise.