Scheduled Mattermost Feedback Reminder via Google Sheets
Automate post-event feedback collection by sending scheduled Mattermost messages with session details sourced directly from a Google Sheet.
Overview
Automatically sends scheduled feedback reminders to Mattermost channels after events, using session data from a Google Sheet to personalize messages and links.
🧠 Description & Use Case
This workflow automates the process of collecting feedback after an event, such as a webinar, workshop, or meeting. It reads session details from a Google Sheet, and at a scheduled time, sends a personalized message to a specific Mattermost channel, prompting attendees to share their feedback via a provided link.
🔄 How It Works:
- Trigger on a Schedule: The
Cronnode initiates the workflow at a predefined date and time. This is perfect for scheduling follow-ups right after a session concludes. - Fetch Session Data: The
Google Sheetsnode retrieves information from a specified spreadsheet. Each row contains details for a single session, including the session name, the target Mattermost Channel ID, and a link to the feedback form. - Send Personalized Reminder: The
Mattermostnode uses the data from Google Sheets to construct a dynamic message. It notifies the relevant channel, mentions the specific session by name, and includes an attachment with a direct link to the feedback form.
✅ Real-World Use Cases:
- Post-Webinar Feedback: Automatically message attendees in a dedicated channel after a webinar to collect their thoughts and suggestions.
- Workshop Follow-Up: Remind participants of a training workshop to fill out a satisfaction survey to help improve future sessions.
- Internal Meeting Review: Solicit feedback from team members after important company-wide meetings or all-hands to gauge effectiveness.
- Event Management: Streamline communication for multi-session conferences by scheduling a unique feedback reminder for each talk or panel.
Instructions
Basic steps
- Download workflow JSON
- Import into n8n
- Configure node parameters as needed
- Test and enable the workflow
💡 Tips
After importing, verify all connectors and credentials match your environment.
Preview
Workflow Visualization
Nodes
Cron
cron
Google Sheets
googleSheets
Mattermost
mattermost
Statistics
View full JSON structure
{
"nodes": [
{
"name": "Cron",
"type": "n8n-nodes-base.cron",
"position": [
450,
300
],
"parameters": {
"triggerTimes": {
"item": [
{
"mode": "custom",
"cronExpression": "0 0 17 28 9 *"
}
]
}
},
"typeVersion": 1
},
{
"name": "Google Sheets",
"type": "n8n-nodes-base.googleSheets",
"position": [
650,
300
],
"parameters": {
"range": "Sessions!A:D",
"options": {},
"sheetId": "1nlnsTQKGgQZN-Rtd07K9bn0ROm0aFBC2O4kzM2YaTBI",
"authentication": "oAuth2"
},
"credentials": {
"googleSheetsOAuth2Api": "n8ndocsburner-googlesheets"
},
"typeVersion": 1
},
{
"name": "Mattermost",
"type": "n8n-nodes-base.mattermost",
"position": [
850,
300
],
"parameters": {
"message": "= Hey @channel, we hope you had a great time at **{{$node[\"Google Sheets\"].json[\"Session\"]}}**.\nLet us know how we did by sharing your feedback with us on the link below!",
"channelId": "={{$node[\"Google Sheets\"].json[\"Mattermost Channel ID\"]}}",
"attachments": [
{
"title": "=Feedback Form - {{$node[\"Google Sheets\"].json[\"Session\"]}}",
"title_link": "={{$node[\"Google Sheets\"].json[\"Feedback Form Link\"]}}"
}
],
"otherOptions": {}
},
"credentials": {
"mattermostApi": "mm_failedmachine"
},
"typeVersion": 1
}
],
"connections": {
"Cron": {
"main": [
[
{
"node": "Google Sheets",
"type": "main",
"index": 0
}
]
]
},
"Google Sheets": {
"main": [
[
{
"node": "Mattermost",
"type": "main",
"index": 0
}
]
]
}
}
}Actions
Technical Specs
Compatibility
License
This workflow template follows MIT license, you can freely use, modify and distribute.
Please comply with relevant third-party service terms when using.