Send YouTube transcripts to Slack using AssemblyAI
Ready for 3.0What this workflow does
This AI workflow has 16 nodes and runs when an HTTP POST request hits its webhook URL. Along the way it connects OpenAI. It also calls api.assemblyai.com over HTTP.
How it runs
Trigger: When an HTTP POST request hits its webhook URL.
- Normalize Slack payload (Edit Fields (Set)): sets 1 field: videoUrl
- Extract YouTube video ID (Code): runs custom JavaScript code
- Check Video Duration (HTTP Request): calls an HTTP API
- Parse and validate video duration (Code): runs custom JavaScript code
- Is video longer than limit? (If): checks a condition and branches into true / false
- Send duration error to Slack (HTTP Request): calls an HTTP API (POST)
- Convert YouTube video to MP (HTTP Request): calls an HTTP API
- Create transcription job (HTTP Request): calls an HTTP API (POST)
- Submit audio for transcription (HTTP Request): calls api.assemblyai.com (POST)
- Wait: pauses before continuing
…plus 5 more steps. See the full node list below.
Services it uses
HTTP calls to: api.assemblyai.com
Before you upgrade to n8n 3.0
Nothing in this workflow is removed in n8n 3.0, so it should import and run after the upgrade.
Nodes used (7)
- HTTP Request
n8n-nodes-base.httpRequest - Webhook
n8n-nodes-base.webhook - Edit Fields (Set)
n8n-nodes-base.set - Wait
n8n-nodes-base.wait - If
n8n-nodes-base.if - Code
n8n-nodes-base.code - OpenAI
@n8n/n8n-nodes-langchain.openAi
From the author
🧠 How it works This workflow lets users extract full YouTube video transcripts directly from Slack using n8n and AssemblyAI. When a user submits a YouTube link via a Slack slash command, the workflow validates the video duration and converts the video into…