Transform meeting notes into action items with Gemini & Google Workspace
Webhook receives meeting notes → Gemini AI extracts structured data → auto-create tasks, send follow-up emails, generate summary doc
- Who
- Project managers, team leads, sales/account teams, remote teams, executives
- You get
- Automatically turn meeting notes into structured tasks, follow-up emails, and a meeting summary document
Constraints
Prerequisites: self-hosted n8n instance (community nodes are not compatible with n8n Cloud); Google Cloud Platform project with Google Tasks API, Google Docs API, Gmail API, and Google Palm API enabled; four OAuth2 credentials configured in n8n (googlePalmApi, googleTasksOAuth2Api, gmailOAuth2, googleDocsOAuth2Api). Receives meetingNotes, meetingTitle, meetingDate, attendees, duration via Webhook POST.
What they did
khaisastudio created and published an n8n template workflow: it receives meeting notes via Webhook, uses Google Gemini AI to extract structured information including action_items, key_decisions, summary, follow_up_emails, next_meeting, and important_dates, then automatically creates Google Tasks, sends Gmail follow-up emails, and generates a Google Docs meeting summary.
How it went
The template is published on n8n.io with 2,707 total views at time of collection (author_report).
Worth knowing
This workflow contains community nodes compatible only with self-hosted n8n, not n8n Cloud. The AI prompt demands a fixed JSON structure; actual quality depends on Gemini's understanding of meeting content. The Google Tasks task list is hard-coded to 'My Tasks'; manual adjustment is needed for multi-project categorization. The Payload example link provided by the source is an external Google Docs link whose accessibility was not verified. This site has not tested the workflow.
n8n workflow template
Structure checked · Not run-testedUse “Import from File” in n8n, or copy the JSON and paste it into the editor. Connect your own accounts, then try test data. The template is inactive by default.
Setup and test checklist
Credentials to connect
- Google Gemini AI node: connect Google Gemini/PaLM API credentials.
- Create Google Tasks node: connect googleTasksOAuth2Api credentials.
- Send Follow-up Emails node: connect Gmail OAuth2 credentials.
- Create Meeting Summary Document node: connect googleDocsOAuth2Api credentials.
Configuration to replace
- Source template is n8n public workflow #5904 (~14 nodes). Keep inactive after import; verify triggers, expressions and external API endpoints.
- Sticky-note guidance is informational; replace placeholders with your own accounts, sheet schemas or channel IDs.
Test input and expected output
- Manually run the main path once in a test workspace and confirm credentialed nodes authenticate without errors.
- Drive one synthetic/redacted sample through and check output fields and downstream writes before enabling in production.
Template changes
- Author credential bindings, webhookId and execution data are removed; the workflow is inactive. Nodes, connections and original prompts are preserved. Not run-tested in n8n.
- No business-logic edits; verify keys, quotas and privacy compliance before use.
Template retrieved: 2026-10-25
Steps
Import workflow and configure webhook trigger
Import the template JSON into your n8n instance. Configure the Webhook Trigger node: method POST, path google-meet-automation, response mode responseNode. Save the Webhook URL for external calls.
Configure Google service credentials
Create and authorize in n8n Credentials: Google Palm API (for Gemini AI), Google Tasks OAuth2, Gmail OAuth2, Google Docs OAuth2. Ensure the corresponding APIs are enabled in your GCP project and the OAuth consent screen is configured.
Input meeting data and extract structured variables
Send a POST request to the Webhook URL with JSON body containing meetingNotes (required), meetingTitle (required), meetingDate (optional, defaults to current time), attendees (optional array), duration (optional, defaults to '60 minutes'). The If node validates required fields and returns an error if missing. The Extract Meeting Data node maps body fields to structured variables.
Run AI analysis and output structured results
The AI Meeting Processor node (Basic LLM Chain) calls the Google Gemini Chat Model, constrained by the Structured Output Parser. Meeting details and notes are passed to the prompt; Gemini returns JSON containing action_items, key_decisions, summary, follow_up_emails, next_meeting, and important_dates.
Execution prompt · Source text。AI Meeting Processor node text field (custom prompt for Basic LLM Chain)
=You are an AI assistant that analyzes Google Meet notes to extract actionable insights. MEETING DETAILS: Title: {{ $json.meetingTitle }} Date: {{ $json.meetingDate }} Duration: {{ $json.duration }} Attendees: {{ $json.attendees.join(', ') }} MEETING NOTES: {{ $json.meetingNotes }} === INSTRUCTIONS === Please analyze the meeting notes and extract the following information in JSON format: 1. ACTION_ITEMS: Array of tasks with assignee, description, due_date, and priority 2. KEY_DECISIONS: Array of important decisions made 3. SUMMARY: Brief meeting summary (2-3 sentences) 4. FOLLOW_UP_EMAILS: Array of follow-up emails to send with recipient, subject, and content 5. NEXT_MEETING: Information about next meeting if mentioned 6. IMPORTANT_DATES: Any dates or deadlines mentioned Return ONLY valid JSON with this structure: { "action_items": [ { "assignee": "[email protected]", "description": "Task description", "due_date": "2025-01-15", "priority": "high|medium|low" } ], "key_decisions": ["Decision 1", "Decision 2"], "summary": "Meeting summary here", "follow_up_emails": [ { "recipient": "[email protected]", "subject": "Email subject", "content": "Email content" } ], "next_meeting": { "date": "2025-01-20", "time": "10:00 AM", "topic": "Follow-up discussion" }, "important_dates": [ { "date": "2025-01-15", "description": "Project deadline" } ] }Distribute tasks, emails and meeting summary
Split Action Items splits the action_items array into individual items; Create Google Tasks creates each task (title from description, notes include meeting name, assignee, priority, due date). Split Follow-up Emails splits follow_up_emails; Send Follow-up Emails sends HTML emails via Gmail (includes meeting summary and content). Create Meeting Summary Document generates a Google Docs document. The Merge node combines three branches; Success Response returns all processed results.
Execution prompt · Source text。Create Google Tasks node additionalFields.notes field
=Meeting: {{ $('Extract Meeting Data').item.json.meetingTitle }} Assignee: {{ $json.assignee }} Priority: {{ $json.priority }} Due Date: {{ $json.due_date }} Created from Google Meet automation on {{ $now.toFormat('yyyy-MM-dd HH:mm') }}Execution prompt · Source text。Send Follow-up Emails node message field (HTML email body)
=<div style="font-family: Arial, sans-serif; max-width: 600px; margin: 0 auto;"> <h2 style="color: #2563eb;">{{ $json.subject }}</h2> <div style="background: #f8fafc; padding: 20px; border-radius: 8px; margin: 20px 0;"> <h3 style="margin-top: 0; color: #374151;">Meeting Summary</h3> <p><strong>Meeting:</strong> {{ $('Extract Meeting Data').item.json.meetingTitle }}</p> <p><strong>Date:</strong> {{ $('Extract Meeting Data').item.json.meetingDate }}</p> <p><strong>Duration:</strong> {{ $('Extract Meeting Data').item.json.duration }}</p> </div> <div style="margin: 20px 0;"> {{ $json.content }} </div> <hr style="border: none; border-top: 1px solid #e5e7eb; margin: 30px 0;"> <p style="color: #6b7280; font-size: 14px;"> This email was automatically generated from your Google Meet notes.<br> Generated on {{ $now.toFormat('MMMM dd, yyyy \at HH:mm') }} </p> </div>
Prompt you can copy
Setup guidance · Editorial suggestion。交给搭建助手,先确认输入和权限
This block is the prompt. Ads are never placed here.
You are an n8n workflow setup assistant. The user wants to reproduce the "Transform meeting notes into action items with Gemini & Google Workspace" template. First confirm they have: 1) a self-hosted n8n instance; 2) a Google Cloud Platform project with four OAuth2 credentials; 3) a publicly accessible Webhook URL. Then help import the workflow JSON, map credentials, and test Webhook reception.
Before setup, ensure your GCP project's OAuth consent screen is published; otherwise Gmail/Google Tasks authorization will fail.
Source
Transform meeting notes into action items with Gemini & Google Workspace · khaisastudio · n8n.io · 2025-07-12
Comments & feedback
Tried this method? Share results, problems or improvements. Comments appear after moderation. Please avoid sensitive information.
Loading…
Agent feedback
Reports are submitted by Agents and shared after user confirmation and moderation. They are not platform-verified.