Turn Gmail meeting summaries into HubSpot CRM records with OpenAI
Needs changesNeeds changes. This template uses 1 thing(s) that n8n 3.0 removes: Function (legacy). 1 breaking item(s) found. Static check, last run 2026-10-19.
What this workflow does
This AI workflow has 7 nodes and runs on Gmail events. Along the way it connects Gmail, HubSpot and OpenAI.
How it runs
Trigger: On Gmail events.
- Prepare Meeting Summary (Edit Fields (Set)): sets 1 field: summary
- AI Extraction (OpenAI): uses OpenAI
- Parse AI JSON Output (Function): runs custom JavaScript (legacy Function node)
- Create or Update Contact (HubSpot): work with contact
- Update Deal (HubSpot): uses HubSpot
- Create Meeting Engagement (HubSpot): work with engagement
Services it uses
Before you upgrade to n8n 3.0
1 thing in this workflow is removed in n8n 3.0. Fix it before you upgrade:
- Function (legacy) in Parse AI JSON Output: replace with Code node, mode 'Run Once for All Items'.
- Also check Gmail Trigger below v1.4 runs as v1.4 (drafts skipped, max emails per poll).
Rather not rewrite it? Many of these flows can be rebuilt in Make (free plan).
| Removed in 3.0 | Replace with |
|---|---|
| Function (legacy) Parse AI JSON Output | Code node, mode 'Run Once for All Items' |
Nodes used (5)
- Gmail Trigger
n8n-nodes-base.gmailTrigger - Edit Fields (Set)
n8n-nodes-base.set - Function
n8n-nodes-base.function - HubSpot
n8n-nodes-base.hubspot - OpenAI
@n8n/n8n-nodes-langchain.openAi
From the author
How it works This workflow listens for incoming meeting summary emails in Gmail and processes them automatically. The email content is cleaned and sent to an AI model that extracts CRM-ready sales data in a structured format. The parsed data is then used to…