Back to Catalog

Auto-summarize Zoom recordings with GPT-4 β†’ Slack & email

David OlusolaDavid Olusola
323 views
2/3/2026
Official Page

πŸŽ₯ Auto-Summarize Zoom Recordings β†’ Slack & Email

Never lose meeting insights again! This workflow automatically summarizes Zoom meeting recordings using OpenAI GPT-4 and delivers structured notes directly to Slack and Email.


βš™οΈ How It Works

  1. Zoom Webhook – triggers when a recording is completed.
  2. Normalize Data – extracts meeting details + transcript.
  3. OpenAI GPT-4 – creates structured meeting summary.
  4. Slack – posts summary to your chosen channel.
  5. Email – delivers summary to your inbox.

πŸ› οΈ Setup Steps

1. Zoom

  • Create a Zoom App with the recording.completed event.
  • Add workflow webhook URL.

2. OpenAI

  • Add your API key to n8n.
  • Use GPT-4 for best results.

3. Slack

  • Connect Slack credentials.
  • Replace YOUR_SLACK_CHANNEL with your channel ID.

4. Email

  • Connect Gmail or SMTP.
  • Replace recipient email(s).

πŸ“Š Example Slack Message

πŸ“Œ Zoom Summary Topic: Sales Demo Pitch Host: alex@company.com Date: 2025-08-30 Summary:

Reviewed Q3 sales pipeline Discussed objections handling Assigned action items for next week


⚑ Get instant summaries from every Zoom meeting β€” no more manual note-taking!

n8n Workflow: Auto-Summarize Zoom Recordings with GPT-4, Slack, and Email

This n8n workflow automates the process of summarizing Zoom meeting recordings using OpenAI's GPT-4, then distributing these summaries via Slack and email. It's designed to streamline post-meeting follow-ups and ensure key takeaways are easily accessible to relevant stakeholders.

What it does

This workflow is triggered by an external system (likely a Zoom webhook or a similar event) and performs the following steps:

  1. Receives Webhook Data: Listens for incoming data via a webhook, which is expected to contain information related to a Zoom recording.
  2. Generates Summary with OpenAI: Uses the OpenAI node to send the Zoom recording transcript (or relevant text content from the webhook) to GPT-4 for summarization.
  3. Posts to Slack: Publishes the generated summary to a designated Slack channel, making it instantly available to team members.
  4. Sends Email via Gmail: Dispatches the summary as an email using Gmail, ensuring broader distribution and archival.

Prerequisites/Requirements

To use this workflow, you will need:

  • n8n Instance: A running n8n instance (cloud or self-hosted).
  • OpenAI Account & API Key: An OpenAI account with access to GPT-4 and a valid API key configured in n8n.
  • Slack Account & App Integration: A Slack workspace and an n8n Slack app integration configured with appropriate permissions to post messages.
  • Gmail Account: A Gmail account configured in n8n for sending emails.
  • External System for Webhook Trigger: An external system (e.g., Zoom, a custom script) configured to send data to the n8n Webhook URL when a new recording is available or processed.

Setup/Usage

  1. Import the Workflow:
    • Copy the provided JSON code.
    • In your n8n instance, click "New" in the workflows section.
    • Click the three-dot menu (...) and select "Import from JSON".
    • Paste the JSON code and click "Import".
  2. Configure Credentials:
    • OpenAI: Set up your OpenAI API key credential.
    • Slack: Set up your Slack API credential (usually an OAuth2 credential for your workspace).
    • Gmail: Set up your Gmail OAuth2 credential.
  3. Configure Nodes:
    • Webhook:
      • Activate the workflow.
      • Copy the "Webhook URL" from the Webhook node. This URL will be used by your external system to trigger the workflow.
      • You might need to adjust the "HTTP Method" and "Response Mode" based on your external system's requirements.
    • OpenAI:
      • Select your OpenAI credential.
      • Configure the "Model" to gpt-4 (or gpt-4-turbo, gpt-4o, etc., depending on your access and preference).
      • Adjust the "Prompt" to guide GPT-4 on how to summarize the content. You'll need to reference the incoming data from the Webhook node (e.g., {{ $json.transcript }} if your webhook sends the transcript in a field called transcript).
    • Slack:
      • Select your Slack credential.
      • Specify the "Channel" where the summary should be posted.
      • Construct the "Text" message, referencing the summary output from the OpenAI node (e.g., {{ $node["OpenAI"].json["choices"][0]["message"]["content"] }}).
    • Gmail:
      • Select your Gmail credential.
      • Specify the "To" email address(es).
      • Set the "Subject" (e.g., "Zoom Meeting Summary: {{ $json.meetingTitle }}").
      • Construct the "Body" of the email, referencing the summary from the OpenAI node.
  4. Activate the Workflow: Once all nodes are configured and credentials are set, activate the workflow.
  5. Test: Trigger the workflow from your external system (e.g., complete a Zoom meeting that sends its recording data to the webhook URL) to ensure it runs as expected.

This workflow provides a robust foundation for automating meeting summaries, saving time and improving information dissemination within your organization.

Related Templates

AI-powered candidate nurturing with scheduled WhatsApp & Gmail follow-ups

What This Workflow Does This workflow automates the candidate nurturing process, solving the common problem of candidates losing interest or "ghosting" after an application. It keeps them engaged and informed by sending a personalized, multi-channel (WhatsApp & Gmail) sequence of follow-up messages over their first week. The automation triggers when a new candidate is added to your ATS (e.g., via a Recrutei webhook). It then uses AI to generate a custom 3-part message (for Day 1, Day 3, and Day 7) tailored to the candidate's age and the specific job they applied for, ensuring a professional and empathetic experience that strengthens your employer brand. How it Works Trigger: A Webhook node captures the new candidate data from your Applicant Tracking System (ATS) or form. Data Preparation: Two Code nodes clean the incoming data. The first (Separating information) extracts key fields and formats the phone number. The second (Extract age) calculates the candidate's age from their birthday to be used by the AI. AI Content Generation: The workflow sends the candidate's details (name, age, job title) to an AI model (AI Recruitment Assistant). The AI has a detailed system prompt to generate three distinct messages for Day 1 (Thank You), Day 3 (Friendly Reminder), and Day 7 (Final Reinforcement), adapting its tone based on the candidate's age. Split Messages: A Code node (Separating messages per days) receives the single text block from the AI and splits it into three separate variables (day1, day3, day7). Day 1 Send: The workflow immediately sends the day1 message via both Gmail and WhatsApp (configured for Evolution API). Day 3 Send: A "Wait" node pauses the workflow for 2 days, after which it sends the day3 message. Day 7 Send: Another "Wait" node pauses for 4 more days, then sends the final day7 message, completing the 7-day nurturing sequence. Setup Instructions This workflow is plug-and-play once you configure the following 5 steps: Webhook Node: Copy the Test URL from the Webhook node and configure it in your ATS (e.g., Recrutei) or form builder to trigger whenever a new candidate is added. Run one test submission to make the data structure visible to n8n. AI Credentials: In the AI Recruitment Assistant node, select or create your OpenAI API credential. MCP Credential (Optional): If you use a Recrutei MCP, paste your endpoint URL into the MCP Recrutei node. Gmail Credentials: In all three Message Gmail nodes (Day 1, 3, 7), select or create your Gmail (OAuth2) credential. Optional:* In the same nodes, go to Options and change the Sender Name from your_company to your actual company name. WhatsApp (Evolution API): This template is pre-configured for the Evolution API. In all three Message WhatsApp nodes (Day 1, 3, 7), you must: URL: Replace {server-url} and {instance} with your Evolution API details. Headers: In the "Header Parameters" section, replace yourapikey with your actual Evolution API key.

Recrutei  AutomaΓ§Γ΅es By Recrutei AutomaΓ§Γ΅es
54

Track daily moods with AI analysis & reports using GPT-4o, Data Tables & Gmail

Track your daily mood in one tap and receive automated AI summaries of your emotional trends every week and month. Perfect for self-reflection, wellness tracking, or personal analytics. This workflow logs moods sent through a webhook (/mood) into Data Tables, analyzes them weekly and monthly with OpenAI (GPT-4o), and emails you clear summaries and actionable recommendations via Gmail. βš™οΈ How It Works Webhook – Mood β†’ Collects new entries (πŸ™‚, 😐, or 😩) plus an optional note. Set Mood Data β†’ Adds date, hour, and note fields automatically. Insert Mood Row β†’ Stores each record in a Data Table. Weekly Schedule (Sunday 20:00) β†’ Aggregates the last 7 days and sends a summarized report. Monthly Schedule (Day 1 at 08:00) β†’ Aggregates the last 30 days for a deeper AI analysis. OpenAI Analysis β†’ Generates insights, patterns, and 3 actionable recommendations. Gmail β†’ Sends the full report (chart + AI text) to your inbox. πŸ“Š Example Auto-Email Weekly Mood Summary (last 7 days) πŸ™‚ 5 β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ 😐 2 β–ˆβ–ˆβ–ˆβ–ˆ 😩 0 Average: 1.7 (Positive πŸ™‚) AI Insights: You’re trending upward this week β€” notes show that exercise days improved mood. Try keeping short walks mid-week to stabilize energy. 🧩 Requirements n8n Data Tables enabled OpenAI credential (GPT-4o or GPT-4 Turbo) Gmail OAuth2 credential to send summaries πŸ”§ Setup Instructions Connect your credentials: Add your own OpenAI and Gmail OAuth2 credentials. Set your Data Table ID: Open the Insert Mood Row node and enter your own Data Table ID. Without this, new moods won’t be stored. Replace the email placeholder: In the Gmail nodes, replace your.email@example.com with your actual address. Deploy and run: Send a test POST request to /mood (e.g. { "mood": "πŸ™‚", "note": "productive day" }) to log your first entry. ⚠️ Before activating the workflow, ensure you have configured the Data Table ID in the β€œInsert Mood Row” node. 🧠 AI Analysis Interprets mood patterns using GPT-4o. Highlights trends, potential triggers, and suggests 3 specific actions. Runs automatically every week and month. πŸ”’ Security No personal data is exposed outside your n8n instance. Always remove or anonymize credential references before sharing publicly. πŸ’‘ Ideal For Personal mood journaling and AI feedback Therapists tracking client progress Productivity or self-quantification projects πŸ—’οΈ Sticky Notes Guide 🟑 Mood Logging Webhook POST /mood receives mood + optional note. ⚠️ Configure your own Data Table ID in the β€œInsert Mood Row” node before running. 🟒 Weekly Summary Runs every Sunday 20:00 β†’ aggregates last 7 days β†’ generates AI insights + emails report. πŸ”΅ Monthly Summary Runs on Day 1 at 08:00 β†’ aggregates last 30 days β†’ creates monthly reflection. 🟣 AI Analysis Uses OpenAI GPT-4o to interpret trends and recommend actions. 🟠 Email Delivery Sends formatted summaries to your inbox automatically.

Jose CastilloBy Jose Castillo
105

IT ops AI SlackBot workflow - chat with your knowledge base

Video Demo: Click here to see a video of this workflow in action. Summary Description: The "IT Department Q&A Workflow" is designed to streamline and automate the process of handling IT-related inquiries from employees through Slack. When an employee sends a direct message (DM) to the IT department's Slack channel, the workflow is triggered. The initial step involves the "Receive DMs" node, which listens for new messages. Upon receiving a message, the workflow verifies the webhook by responding to Slack's challenge request, ensuring that the communication channel is active and secure. Once the webhook is verified, the workflow checks if the message sender is a bot using the "Check if Bot" node. If the sender is identified as a bot, the workflow terminates the process to avoid unnecessary actions. If the sender is a human, the workflow sends an acknowledgment message back to the user, confirming that their query is being processed. This is achieved through the "Send Initial Message" node, which posts a simple message like "On it!" to the user's Slack channel. The core functionality of the workflow is powered by the "AI Agent" node, which utilizes the OpenAI GPT-4 model to interpret and respond to the user's query. This AI-driven node processes the text of the received message, generating an appropriate response based on the context and information available. To maintain conversation context, the "Window Buffer Memory" node stores the last five messages from each user, ensuring that the AI agent can provide coherent and contextually relevant answers. Additionally, the workflow includes a custom Knowledge Base (KB) tool (see that tool template here) that integrates with the AI agent, allowing it to search the company's internal KB for relevant information. After generating the response, the workflow cleans up the initial acknowledgment message using the "Delete Initial Message" node to keep the conversation thread clean. Finally, the generated response is sent back to the user via the "Send Message" node, providing them with the information or assistance they requested. This workflow effectively automates the IT support process, reducing response times and improving efficiency. To quickly deploy the Knowledge Ninja app in Slack, use the app manifest below and don't forget to replace the two sample urls: { "display_information": { "name": "Knowledge Ninja", "description": "IT Department Q&A Workflow", "background_color": "005e5e" }, "features": { "bot_user": { "display_name": "IT Ops AI SlackBot Workflow", "always_online": true } }, "oauth_config": { "redirect_urls": [ "Replace everything inside the double quotes with your slack redirect oauth url, for example: https://n8n.domain.com/rest/oauth2-credential/callback" ], "scopes": { "user": [ "search:read" ], "bot": [ "chat:write", "chat:write.customize", "groups:history", "groups:read", "groups:write", "groups:write.invites", "groups:write.topic", "im:history", "im:read", "im:write", "mpim:history", "mpim:read", "mpim:write", "mpim:write.topic", "usergroups:read", "usergroups:write", "users:write", "channels:history" ] } }, "settings": { "event_subscriptions": { "request_url": "Replace everything inside the double quotes with your workflow webhook url, for example: https://n8n.domain.com/webhook/99db3e73-57d8-4107-ab02-5b7e713894ad", "bot_events": [ "message.im" ] }, "orgdeployenabled": false, "socketmodeenabled": false, "tokenrotationenabled": false } }

Angel MenendezBy Angel Menendez
39013