Convert Meeting Recordings to Structured Notes and Action Items
Meeting recording URL → AssemblyAI transcription → AI-generated notes → extract action items → log to Google Sheets
- Who
- Teams that need automated meeting documentation and action item tracking
- You get
- Automatically generate structured meeting notes and extract action items with owners and due dates when a recording is received, then append to Google Sheets
- You need
- n8n · google-sheets
Constraints
Prerequisites: n8n instance; AssemblyAI API key; Google Service Account credentials (googleApi type); OpenAI API key (optional, for AI nodes). Meeting platform must support webhook push for recording-ready events. Default due date is 7 days later.
What they did
Author tuguidragos published an n8n workflow template that receives a meeting recording URL via webhook, transcribes it with AssemblyAI, then uses two sequential AI Agent nodes to generate structured meeting notes and extract action items, finally validating and logging to Google Sheets. The template includes complete node configurations, JSON Schema constraints, and custom Code node logic.
How it went
Published as an official template on n8n.io (author_report), demonstrating a full automation pipeline from recording to spreadsheet. The author states the workflow automates transcription, note generation, action item extraction, and logging.
Worth knowing
1. No tested execution record is provided by the source; not tested by this site (reproduction=not_tested). 2. The Process All Action Items node contains placeholder code (comments indicate extensibility to Notion API or email notifications); actual delivery requires user implementation. 3. OpenAI nodes are marked "optional" in description, but both Generate Meeting Notes and Extract Action Items rely on AI Agent nodes; removing OpenAI credentials would break core functionality. Keeping OpenAI credentials is recommended. 4. Default model is gpt-4.1-mini; users can switch to gpt-4.1 or gpt-4 in the OpenAI Chat Model node. 5. Transcription uses HTTP Request calling AssemblyAI REST API directly, not the official AssemblyAI node; Header Auth must be configured correctly. 6. Google Sheets uses Service Account authentication (googleApi); the sheet must be shared with the service account email beforehand.
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
- Log Meeting to Sheets node: connect googleApi credentials.
Configuration to replace
- Source template is n8n public workflow #11409 (~20 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-24
Steps
Prepare credentials and accounts
Sign up for AssemblyAI to get an API key; create a Google Service Account and share the target Google Sheet with it; prepare an OpenAI API key if using AI extraction. All keys should be configured in n8n credential management, not hardcoded in node parameters.
Configure workflow nodes
After importing the template into n8n, configure these nodes in order: 1. Recording Ready Webhook: set path to meeting-recording-ready, configure the webhook URL in your meeting platform. 2. Workflow Configuration: enter the AssemblyAI API key reference (defaults from $env.ASSEMBLYAI_KEY), default due date days (7), and admin email. 3. AssemblyAI Transcription: configure HTTP Header Auth credential using the API key from Workflow Configuration. 4. Generate Meeting Notes & Extract Action Items: add OpenAI API credentials if required. 5. Log Meeting to Sheets: enter Google Sheets document ID and sheet name, configure Service Account credentials.
Receive webhook and transcribe audio
When the meeting platform pushes a recording_url to the webhook, the workflow downloads the audio file via HTTP Request, then calls the AssemblyAI API (POST /v2/transcript with speaker_labels enabled) to get the full transcript. The transcript is passed to the next step.
Generate structured meeting notes
Assemble meeting title, date, participants, and transcript into a JSON input for the AI Agent node, which calls an OpenAI model to generate structured notes. Output must conform to JSON Schema: title, date, participants (array), agenda (array), key_decisions (array), next_steps, executive_summary (array).
Execution prompt · Source text。Generate Meeting Notes node text field (n8n expression)
=Meeting Title: {{ $json.meetingTitle }} Date: {{ $json.meetingDate }} Participants: {{ $json.participants }} Transcript: {{ $json.transcript }}Execution prompt · Source text。Generate Meeting Notes node systemMessage field
You are an expert meeting notes assistant. Your task is to analyze the meeting transcript and generate comprehensive, structured meeting notes. Generate meeting notes with the following structure: - title: Meeting title - date: Meeting date - participants: List of participants - agenda: Main topics discussed - key_decisions: Important decisions made - next_steps: Overview of next steps - executive_summary: 3-5 bullet points summarizing the meeting Be thorough, accurate, and professional. Extract all relevant information from the transcript.
Extract action items
Using the generated meeting notes JSON and original transcript as input, a second AI Agent node extracts concrete action items. Each item includes description, owner, due date, priority (low/medium/high), and related topic. Output must conform to the Action Items Schema.
Execution prompt · Source text。Extract Action Items node text field (n8n expression)
=Meeting Notes: {{ JSON.stringify($json.output) }} Transcript: {{ $('Prepare Meeting Notes Input').first().json.transcript }}Execution prompt · Source text。Extract Action Items node systemMessage field
You are an expert at extracting action items from meeting transcripts and notes. Analyze the meeting notes and transcript to identify all action items. For each action item, extract: - description: Clear description of the task - owner: Name or email of the person responsible (extract from transcript if mentioned) - due_date: Suggested due date (extract from transcript if mentioned, otherwise suggest based on priority) - priority: low, medium, or high - related_topic: Which agenda topic this relates to Return a list of action items. If no action items are found, return an empty array.
Validate, process, and log to spreadsheet
The Code node Parse and Validate Action Items validates action items: unset due dates default to defaultDueDateDays from now, unset owners become Unassigned, and meeting_id and meeting_title are attached. If action items exist, they can be bulk-processed via Process All Action Items (currently placeholder logic; extendable to create Notion tasks or send emails). Finally, the Google Sheets node appends meeting metadata, notes summary, and action item count to the specified sheet.
Prompt you can copy
Setup guidance · Editorial suggestion。Setup assistant; confirm inputs and permissions first
This block is the prompt. Ads are never placed here.
You are an n8n workflow setup assistant. The user wants to replicate the "meeting recording to structured notes" template. First confirm they have: an n8n instance, AssemblyAI API key, Google Service Account credentials, and OpenAI API key (optional). Then guide them through configuring the webhook, credentials, and node parameters step by step. Remind them to test with a sample recording and verify Sheet output before going live.
Before building, confirm your meeting platform supports webhook push for recording URLs; the Google Sheet must be shared with the Service Account email in advance.
Source
Convert meeting recordings to notes & action items with AssemblyAI, GPT-4 & Sheets · tuguidragos · n8n.io · 2025-12-01
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.