Skip to main content

Transcribe meetings and log action items to Notion with AssemblyAI and Gemini

Workflow preview

Workflow preview
100%
Transcribe meetings and log action items to Notion with AssemblyAI and Gemini preview
Open on n8n.io

1. Workflow Overview

Quick overview This workflow accepts a meeting recording URL via webhook, transcribes the audio with AssemblyAI, uses Google Gemini to extract a summary, action items, decisions, and next steps, th...

Best for

  • Document Extraction automation workflows
  • AI Summarization automation workflows
  • advanced n8n builders looking for reusable templates

Tools used

n8n-nodes-base.stickynote, n8n-nodes-base.webhook, n8n-nodes-base.set, n8n-nodes-base.httprequest, n8n-nodes-base.wait, n8n-nodes-base.if

Source and attribution

This workflow is cataloged by N8N Workflows and links back to its original n8n.io source page by Muhammad Adeel.

Original n8n.io source

1.1 Workflow description

Title
Transcribe meetings and log action items to Notion with AssemblyAI and Gemini
Workflow name
Transcribe meetings and log action items to Notion with AssemblyAI and Gemini

Quick overview

This workflow accepts a meeting recording URL via webhook, transcribes the audio with AssemblyAI, uses Google Gemini to extract a summary, action items, decisions, and next steps, then creates a structured Notion page and optionally posts the Notion link to Slack.

How it works

  1. Receives a POST webhook request containing an audio_url and an optional meeting_title.
  2. Submits the audio URL to AssemblyAI for transcription with speaker labels enabled.
  3. Polls AssemblyAI every 15 seconds until the transcript status is completed and the full transcript text is available.
  4. Sends the completed transcript to the Google Gemini API to generate a JSON response with a meeting summary, action items, key decisions, and next steps.
  5. Creates a new page in a Notion database with the meeting metadata and the extracted sections formatted as headings and paragraphs.
  6. Posts a Slack message with the meeting title, summary, and the newly created Notion page URL.

Setup

  1. Create an AssemblyAI account, add your AssemblyAI API key to the Authorization header in the transcription submit and status check HTTP requests.
  2. Create a Google AI Studio key and replace YOUR_GEMINI_API_KEY in the Gemini HTTP request URL.
  3. Create a Notion integration, share your target Notion database with it, and replace YOUR_NOTION_INTEGRATION_TOKEN and YOUR_NOTION_DATABASE_ID in the Notion page creation request.
  4. (Optional) Create a Slack app with chat:write, then replace YOUR_SLACK_BOT_TOKEN and YOUR_SLACK_CHANNEL_ID in the Slack message request.
  5. Copy the production webhook URL from n8n and configure your recording source (or test client) to send a POST body with audio_url (publicly accessible) and meeting_title.

Requirements

  • AssemblyAI account and API key (free tier at assemblyai.com)
  • Google Gemini API key (free tier at aistudio.google.com)
  • Notion account with an Integration Token and a Database configured
  • Slack Bot Token and Channel ID (optional — delete the last node if not needed)
  • Publicly accessible audio file URL (mp3, mp4, wav, m4a, ogg, or webm)

Customization

  • Edit the Gemini prompt in the Post to Gemini node to extract additional fields like risks, blockers, or budget decisions
  • Replace the Slack node with a Telegram or Microsoft Teams HTTP request for different notification channels
  • Add a Google Calendar node after Notion to auto-schedule follow-up meetings from extracted action items
  • Connect HubSpot or Salesforce via HTTP Request to log client meeting notes directly into your CRM
  • Adjust the polling interval in the Wait node — increase for longer recordings, decrease for short ones

1.2 Logical Blocks

This catalog entry is organized from the workflow JSON. The node-level section below shows the executable blocks available for review before importing the template.

2. Block-by-Block Analysis

Block 1 - Sticky Note

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 2 - Sticky Note1

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 3 - Sticky Note2

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 4 - Sticky Note3

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 5 - Sticky Note4

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 6 - Sticky Note5

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 7 - When Meeting Recorded

Type / Role
n8n-nodes-base.webhook - webhook
Config choices
Version 2

Block 8 - Set Meeting Input Fields

Type / Role
n8n-nodes-base.set - set
Config choices
Version 3

Block 9 - Post Audio to AssemblyAI

Type / Role
n8n-nodes-base.httpRequest - httpRequest
Config choices
Version 4

Block 10 - Store AssemblyAI Transcript ID

Type / Role
n8n-nodes-base.set - set
Config choices
Version 3

Block 11 - Wait for AssemblyAI Process

Type / Role
n8n-nodes-base.wait - wait
Config choices
Version 1

Block 12 - Fetch Transcription Status

Type / Role
n8n-nodes-base.httpRequest - httpRequest
Config choices
Version 4

Block 13 - If Transcription Done

Type / Role
n8n-nodes-base.if - if
Config choices
Version 2

Block 14 - Post to Gemini for Action Items

Type / Role
n8n-nodes-base.httpRequest - httpRequest
Config choices
Version 4

Block 15 - Set Parsed Gemini Output

Type / Role
n8n-nodes-base.set - set
Config choices
Version 3

Block 16 - Post Notes to Notion

Type / Role
n8n-nodes-base.httpRequest - httpRequest
Config choices
Version 4

Block 17 - Post Notification to Slack

Type / Role
n8n-nodes-base.httpRequest - httpRequest
Config choices
Version 4

3. Summary Table

Workflow Transcribe meetings and log action items to Notion with AssemblyAI and Gemini
Complexity advanced
Nodes 17
Categories Document Extraction, AI Summarization
Author Muhammad Adeel
Published 27 May 2026

4. Reproducing the Workflow from Scratch

  1. 1. Download the workflow JSON

    Use the JSON export at /data/workflows/15974/15974.json as the source template for this automation.

  2. 2. Import the template into n8n

    Open n8n, import the downloaded JSON, and review each node before activating the workflow.

  3. 3. Configure credentials and variables

    Replace placeholder credentials, API keys, webhook URLs, account IDs, and environment-specific values with your own settings.

  4. 4. Test with sample data

    Run the workflow manually or in a staging workspace, inspect node output, and confirm downstream systems receive the expected data.

  5. 5. Activate and monitor

    Enable the workflow only after testing, then monitor executions, errors, and rate limits during the first production runs.

5. General Notes & Resources

Review imported nodes carefully before activation. This catalog entry is intended to help you inspect the workflow structure, understand required services, and find related templates faster.

Node names, credentials, schedules, webhook paths, and external service limits may need adjustment for your workspace.

Frequently asked questions

What does Transcribe meetings and log action items to Notion with AssemblyAI and Gemini do?

Quick overview This workflow accepts a meeting recording URL via webhook, transcribes the audio with AssemblyAI, uses Google Gemini to extract a summary, action items, decisions, and next steps, th...

What do I need before importing this workflow?

Review the workflow JSON, configure any required credentials in n8n, and test the automation in a safe workspace before using it in production.

Can I customize this workflow?

Yes. Use the block-by-block analysis and the downloadable JSON to inspect each node, then adjust credentials, prompts, schedules, filters, or destinations for your Document Extraction, AI Summarization use case.