This workflow corresponds to n8n.io template #17028 — we link there as the canonical source.
This workflow follows the Gmail Trigger → Google Sheets recipe pattern — see all workflows that pair these two integrations.
The workflow JSON
Copy or download the full n8n JSON below. Paste it into a new n8n workflow, add your credentials, activate. Full import guide →
{
"meta": {
"templateCredsSetupCompleted": false
},
"name": "Meeting Transcript Action Items Router to Slack",
"tags": [],
"nodes": [
{
"id": "b74371f3-e04c-4880-ac38-4ec78b84007b",
"name": "Sticky Note",
"type": "n8n-nodes-base.stickyNote",
"position": [
-608,
96
],
"parameters": {
"content": ""
},
"typeVersion": 1
},
{
"id": "547433ba-0ab2-4309-a7ec-d2e4551c745a",
"name": "Sticky Note1",
"type": "n8n-nodes-base.stickyNote",
"position": [
-48,
160
],
"parameters": {
"content": ""
},
"typeVersion": 1
},
{
"id": "99a171ff-7e48-42dc-83cc-685dd8a762d2",
"name": "Sticky Note2",
"type": "n8n-nodes-base.stickyNote",
"position": [
736,
160
],
"parameters": {
"content": ""
},
"typeVersion": 1
},
{
"id": "e9eb0620-0f9f-4ac3-aec5-0def8c6388c1",
"name": "Sticky Note3",
"type": "n8n-nodes-base.stickyNote",
"position": [
1520,
160
],
"parameters": {
"content": ""
},
"typeVersion": 1
},
{
"id": "8b433730-593b-4a7f-b173-44221a1bc5c5",
"name": "Sticky Note4",
"type": "n8n-nodes-base.stickyNote",
"position": [
2032,
96
],
"parameters": {
"content": ""
},
"typeVersion": 1
},
{
"id": "4ab1c85d-a74d-4486-9cef-e898bd626113",
"name": "Sticky Note5",
"type": "n8n-nodes-base.stickyNote",
"position": [
2320,
112
],
"parameters": {
"content": ""
},
"typeVersion": 1
},
{
"id": "8fc48cdf-022e-4f46-ad93-297ea9c0f181",
"name": "Sticky Note6",
"type": "n8n-nodes-base.stickyNote",
"position": [
2544,
608
],
"parameters": {
"content": ""
},
"typeVersion": 1
},
{
"id": "0f974448-f40a-4723-a17d-c5bc14ad83aa",
"name": "Sticky Note7",
"type": "n8n-nodes-base.stickyNote",
"position": [
3312,
224
],
"parameters": {
"content": ""
},
"typeVersion": 1
},
{
"id": "66666666-6666-6666-8666-666666666601",
"name": "When Email with Transcript Arrives",
"type": "n8n-nodes-base.gmailTrigger",
"position": [
0,
320
],
"parameters": {},
"typeVersion": 1.2
},
{
"id": "66666666-6666-6666-8666-666666666602",
"name": "Setup Meeting Configuration",
"type": "n8n-nodes-base.code",
"position": [
260,
320
],
"parameters": {},
"typeVersion": 2
},
{
"id": "66666666-6666-6666-8666-666666666603",
"name": "Extract Email Transcript",
"type": "n8n-nodes-base.code",
"position": [
520,
320
],
"parameters": {},
"typeVersion": 2
},
{
"id": "66666666-6666-6666-8666-666666666604",
"name": "Read Log from Google Sheets",
"type": "n8n-nodes-base.googleSheets",
"position": [
780,
320
],
"parameters": {},
"typeVersion": 4.5,
"alwaysOutputData": true
},
{
"id": "66666666-6666-6666-8666-666666666605",
"name": "Identify Duplicate Meetings",
"type": "n8n-nodes-base.code",
"position": [
1040,
320
],
"parameters": {},
"typeVersion": 2
},
{
"id": "66666666-6666-6666-8666-666666666606",
"name": "If Unique Meeting Identified",
"type": "n8n-nodes-base.if",
"position": [
1300,
320
],
"parameters": {},
"typeVersion": 2.2
},
{
"id": "66666666-6666-6666-8666-666666666607",
"name": "OpenAI Meeting Analysis",
"type": "@n8n/n8n-nodes-langchain.openAi",
"position": [
1560,
320
],
"parameters": {},
"typeVersion": 1.8
},
{
"id": "66666666-6666-6666-8666-666666666608",
"name": "Parse Analysis Results",
"type": "n8n-nodes-base.code",
"position": [
1820,
320
],
"parameters": {},
"typeVersion": 2
},
{
"id": "66666666-6666-6666-8666-666666666609",
"name": "Route Based on Priority",
"type": "n8n-nodes-base.switch",
"position": [
2080,
320
],
"parameters": {},
"typeVersion": 3.2
},
{
"id": "66666666-6666-6666-8666-666666666610",
"name": "Prepare Slack Notification",
"type": "n8n-nodes-base.code",
"position": [
2360,
240
],
"parameters": {},
"typeVersion": 2
},
{
"id": "66666666-6666-6666-8666-666666666611",
"name": "Post to Slack Channel",
"type": "n8n-nodes-base.slack",
"position": [
2848,
240
],
"parameters": {},
"typeVersion": 2.2
},
{
"id": "66666666-6666-6666-8666-666666666612",
"name": "Verify Slack Message Delivery",
"type": "n8n-nodes-base.code",
"position": [
2848,
400
],
"parameters": {},
"typeVersion": 2
},
{
"id": "66666666-6666-6666-8666-666666666613",
"name": "Generate FYI Log Entry",
"type": "n8n-nodes-base.code",
"position": [
2592,
864
],
"parameters": {},
"typeVersion": 2
},
{
"id": "66666666-6666-6666-8666-666666666614",
"name": "Append Meeting to Google Sheets",
"type": "n8n-nodes-base.googleSheets",
"position": [
3104,
752
],
"parameters": {},
"typeVersion": 4.5
},
{
"id": "66666666-6666-6666-8666-666666666615",
"name": "Derive Action Items",
"type": "n8n-nodes-base.code",
"position": [
3360,
360
],
"parameters": {},
"typeVersion": 2
},
{
"id": "66666666-6666-6666-8666-666666666616",
"name": "If Action Items Exist",
"type": "n8n-nodes-base.if",
"position": [
3620,
360
],
"parameters": {},
"typeVersion": 2.2
},
{
"id": "66666666-6666-6666-8666-666666666617",
"name": "Insert Action Items to Sheets",
"type": "n8n-nodes-base.googleSheets",
"position": [
3880,
360
],
"parameters": {},
"typeVersion": 4.5
}
],
"active": false,
"settings": {
"executionOrder": "v1"
},
"versionId": "meeting-transcript-action-items-v1",
"connections": {
"Derive Action Items": {
"main": [
[
{
"node": "If Action Items Exist",
"type": "main",
"index": 0
}
]
]
},
"If Action Items Exist": {
"main": [
[
{
"node": "Insert Action Items to Sheets",
"type": "main",
"index": 0
}
]
]
},
"Post to Slack Channel": {
"main": [
[
{
"node": "Verify Slack Message Delivery",
"type": "main",
"index": 0
}
]
]
},
"Generate FYI Log Entry": {
"main": [
[
{
"node": "Append Meeting to Google Sheets",
"type": "main",
"index": 0
}
]
]
},
"Parse Analysis Results": {
"main": [
[
{
"node": "Route Based on Priority",
"type": "main",
"index": 0
}
]
]
},
"OpenAI Meeting Analysis": {
"main": [
[
{
"node": "Parse Analysis Results",
"type": "main",
"index": 0
}
]
]
},
"Route Based on Priority": {
"main": [
[
{
"node": "Prepare Slack Notification",
"type": "main",
"index": 0
}
],
[
{
"node": "Prepare Slack Notification",
"type": "main",
"index": 0
}
],
[
{
"node": "Generate FYI Log Entry",
"type": "main",
"index": 0
}
]
]
},
"Extract Email Transcript": {
"main": [
[
{
"node": "Read Log from Google Sheets",
"type": "main",
"index": 0
}
]
]
},
"Prepare Slack Notification": {
"main": [
[
{
"node": "Post to Slack Channel",
"type": "main",
"index": 0
}
]
]
},
"Identify Duplicate Meetings": {
"main": [
[
{
"node": "If Unique Meeting Identified",
"type": "main",
"index": 0
}
]
]
},
"Read Log from Google Sheets": {
"main": [
[
{
"node": "Identify Duplicate Meetings",
"type": "main",
"index": 0
}
]
]
},
"Setup Meeting Configuration": {
"main": [
[
{
"node": "Extract Email Transcript",
"type": "main",
"index": 0
}
]
]
},
"If Unique Meeting Identified": {
"main": [
[
{
"node": "OpenAI Meeting Analysis",
"type": "main",
"index": 0
}
]
]
},
"Verify Slack Message Delivery": {
"main": [
[
{
"node": "Append Meeting to Google Sheets",
"type": "main",
"index": 0
}
]
]
},
"Append Meeting to Google Sheets": {
"main": [
[
{
"node": "Derive Action Items",
"type": "main",
"index": 0
}
]
]
},
"When Email with Transcript Arrives": {
"main": [
[
{
"node": "Setup Meeting Configuration",
"type": "main",
"index": 0
}
]
]
}
}
}
For the full experience including quality scoring and batch install features for each workflow upgrade to Pro
About this workflow
This workflow watches a Gmail label for new meeting transcript emails, extracts the transcript, uses OpenAI to generate a summary and action items, routes urgent items to the right Slack channel, and logs the meeting and action items to Google Sheets. Triggers every minute when…
Source: https://n8n.io/workflows/17028/ — original creator credit. Request a take-down →
Related workflows
Workflows that share integrations, category, or trigger type with this one. All free to copy and import.
Complete AI-powered sales system Automates lead capture, qualification, and follow-up from multiple channels. AI INTELLIGENCE:
LeadInboxTriageBot_GT. Uses gmailTrigger, openAi, googleSheets, gmail. Event-driven trigger; 36 nodes.
Overview
Automate your entire invoice processing pipeline with AI-powered OCR, validation, and approval workflows 📄🤖. This n8n automation monitors incoming Gmail invoices, extracts structured data using OCR an
A fully automated, AI-powered email assistant built in n8n that reads incoming emails, understands their intent and sentiment, classifies them by category, drafts intelligent context-aware replies, an