Enrich company records with social media links using GPT-4o and Supabase
Needs changesWhat this workflow does
This AI workflow has 12 nodes and runs manually, when you click “Execute workflow”. Along the way it connects OpenAI Chat Model and Supabase.
How it runs
Trigger: Manually, when you click “Execute workflow”.
- Get companies (Supabase): get many
- Select company name and website (Edit Fields (Set)): sets or maps fields
- Crawl website (AI Agent): runs an AI agent, with model: OpenAI Chat Model; 2 tools (Text, URLs); output parser: JSON Parser
- Map company name and website (Edit Fields (Set)): sets 2 fields: company_name, company_website
- Set social media array (Edit Fields (Set)): sets 1 field: social_media
- Merge: merges the data from its input branches
- Insert new row (Supabase): uses Supabase
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:
- AI Agent v1 (old agent modes) in Crawl website (v1.6): replace with Latest AI Agent node (Tools Agent). For SQL Agent, use a Postgres or MySQL tool with a recent AI Agent.
Rather not rewrite it? Many of these flows can be rebuilt in Make (free plan).
| Removed in 3.0 | Replace with |
|---|---|
| AI Agent v1 (old agent modes) Crawl website (v1.6) | Latest AI Agent node (Tools Agent). For SQL Agent, use a Postgres or MySQL tool with a recent AI Agent. |
Nodes used (8)
- Call n8n Workflow Tool
@n8n/n8n-nodes-langchain.toolWorkflow - OpenAI Chat Model
@n8n/n8n-nodes-langchain.lmChatOpenAi - Structured Output Parser
@n8n/n8n-nodes-langchain.outputParserStructured - Edit Fields (Set)
n8n-nodes-base.set - Manual Trigger
n8n-nodes-base.manualTrigger - Supabase
n8n-nodes-base.supabase - Merge
n8n-nodes-base.merge - AI Agent
@n8n/n8n-nodes-langchain.agent
From the author
Quick overview This workflow is manually triggered to pull company names and websites from Supabase, crawl each site with an OpenAI-powered agent to extract social media profile URLs, and write the enriched results to a separate Supabase table. How it works…