Automated YouTube video scheduling & AI metadata generation 🎬
Needs changesWhat this workflow does
This AI workflow has 25 nodes and runs on a schedule (every day at 14:00) (plus 1 other trigger). Along the way it connects YouTube, OpenAI and Google Gemini Chat Model.
How it runs
Trigger: On a schedule (every day at 14:00) (plus 1 other trigger).
- Get Videos to reschedule (YouTube): work with video
- Get video Ids seperated (Code): runs custom JavaScript code
- Loop over Video IDs (Loop Over Items (Split in Batches)): loops over the items in batches
- Return Private Videos (Code): runs custom JavaScript code
- Get Video Data (YouTube): get (video)
- Loop over All Videos not Published (Loop Over Items (Split in Batches)): loops over the items in batches
- 4s (Wait): waits 4 seconds
- gettitle (YouTube): get (video)
- Fetch Latest Videos (YouTube): work with video
- Set Publish Date (YouTube): update (video)
…plus 12 more steps. See the full node list below.
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 YT Tags (v1.9): 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) YT Tags (v1.9) | Latest AI Agent node (Tools Agent). For SQL Agent, use a Postgres or MySQL tool with a recent AI Agent. |
Nodes used (13)
- YouTube
n8n-nodes-base.youTube - Loop Over Items (Split in Batches)
n8n-nodes-base.splitInBatches - OpenAI
@n8n/n8n-nodes-langchain.openAi - Manual Trigger
n8n-nodes-base.manualTrigger - Google Gemini Chat Model
@n8n/n8n-nodes-langchain.lmChatGoogleGemini - AI Agent
@n8n/n8n-nodes-langchain.agent - Wait
n8n-nodes-base.wait - Schedule Trigger
n8n-nodes-base.scheduleTrigger - Code
n8n-nodes-base.code - Edit Fields (Set)
n8n-nodes-base.set - Remove Duplicates
n8n-nodes-base.removeDuplicates - If
n8n-nodes-base.if - HTTP Request
n8n-nodes-base.httpRequest
From the author
👥 Who Is This For? Content creators, marketing teams, and channel managers who need to streamline video publishing with optimized metadata and scheduled releases across multiple videos. 🛠 What Problem Does This Solve? Manual YouTube video publishing is…