This workflow corresponds to n8n.io template #14031 — we link there as the canonical source.
This workflow follows the Form Trigger → HTTP Request recipe pattern — see all workflows that pair these two integrations.
The workflow JSON
Copy or download the full n8n JSON below. Paste it into a new n8n workflow, add your credentials, activate. Full import guide →
{
"id": "mTKVksq42UUvTYMR",
"name": "Generate viral TikTok/IG reel clips from YouTube videos with Vizard AI",
"tags": [],
"nodes": [
{
"id": "b1aa676f-2066-4197-b754-9ad6919c079d",
"name": "form_trigger",
"type": "n8n-nodes-base.formTrigger",
"position": [
-2800,
784
],
"parameters": {
"options": {},
"formTitle": "YouTube Video Clipper",
"formFields": {
"values": [
{
"fieldLabel": "YouTube Video Url",
"placeholder": "https://www.youtube.com/watch?v=DB9mjd-65gw",
"requiredField": true
}
]
}
},
"typeVersion": 2.2
},
{
"id": "7e1dd914-cb7b-44af-a26b-c1d535a3f333",
"name": "Get Status",
"type": "n8n-nodes-base.httpRequest",
"position": [
-1760,
704
],
"parameters": {
"url": "=https://elb-api.vizard.ai/hvizard-server-front/open-api/v1/project/query/{{ $json.projectId }}",
"options": {},
"sendHeaders": true,
"headerParameters": {
"parameters": [
{
"name": "VIZARDAI_API_KEY",
"value": "={{ $('Configuration').item.json.vizard_api_key }}"
}
]
}
},
"typeVersion": 4.2
},
{
"id": "cf25e3f0-134d-46a1-b873-16a4c008ebf8",
"name": "Wait",
"type": "n8n-nodes-base.wait",
"position": [
-1968,
736
],
"parameters": {},
"typeVersion": 1.1
},
{
"id": "d24c89b5-3523-4a5b-81e6-86307c252e17",
"name": "Check Status",
"type": "n8n-nodes-base.switch",
"position": [
-1520,
720
],
"parameters": {
"rules": {
"values": [
{
"outputKey": "Success",
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "2ecbce10-5138-4833-9c77-0206f38652af",
"operator": {
"type": "number",
"operation": "equals"
},
"leftValue": "={{ $json.code }}",
"rightValue": 2000
}
]
},
"renameOutput": true
},
{
"outputKey": "Processing",
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "c1bad68b-0775-4f12-861d-3d465ee57852",
"operator": {
"type": "number",
"operation": "equals"
},
"leftValue": "={{ $json.code }}",
"rightValue": 1000
}
]
},
"renameOutput": true
}
]
},
"options": {
"fallbackOutput": "extra",
"renameFallbackOutput": "Failed"
}
},
"typeVersion": 3.3
},
{
"id": "fd1a89ba-2adc-4202-8721-9b84342faac9",
"name": "AI Clipper",
"type": "n8n-nodes-base.httpRequest",
"position": [
-2384,
896
],
"parameters": {
"url": "https://elb-api.vizard.ai/hvizard-server-front/open-api/v1/project/create",
"method": "POST",
"options": {},
"jsonBody": "={\n \"videoUrl\": \"{{ $json.video_url }}\",\n \"videoType\": 2,\n \"preferLength\": [1,2],\n \"projectName\": \"test\",\n\"lang\":\"auto\"\n}",
"sendBody": true,
"sendHeaders": true,
"specifyBody": "json",
"headerParameters": {
"parameters": [
{
"name": "VIZARDAI_API_KEY",
"value": "={{ $json.vizard_api_key }}"
}
]
}
},
"typeVersion": 4.2
},
{
"id": "26100b60-0cf2-4c8c-bf6b-9f2041c067b7",
"name": "Success?",
"type": "n8n-nodes-base.if",
"position": [
-2192,
832
],
"parameters": {
"options": {},
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "6b74dbe5-9f05-4f35-bfce-434636bb0a93",
"operator": {
"type": "number",
"operation": "equals"
},
"leftValue": "={{ $json.code }}",
"rightValue": 2000
}
]
}
},
"typeVersion": 2.2
},
{
"id": "0d937ef3-c757-4315-8ee4-8e7a0c008641",
"name": "Configuration",
"type": "n8n-nodes-base.set",
"position": [
-2576,
752
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "db577529-a0b0-4cdd-9c2d-27adcf2ee302",
"name": "vizard_api_key",
"type": "string",
"value": "[ENTER_YOUR_API_KEY_HERE]"
},
{
"id": "bc7aa714-a297-47df-91c8-6ab246521809",
"name": "video_type",
"type": "string",
"value": "2"
},
{
"id": "677c5107-634d-4c9a-921c-c82c99938d7f",
"name": "video_length",
"type": "string",
"value": "[0]"
},
{
"id": "aa6cb6f8-6db8-42de-ba31-e0e11630f29f",
"name": "video_ratio",
"type": "string",
"value": "1"
},
{
"id": "1d7cda63-cd0d-4c45-8df2-97e8e108c39a",
"name": "video_url",
"type": "string",
"value": "={{ $json['YouTube Video Url'] }}"
},
{
"id": "c027906c-eafa-4596-8979-dfc045707abd",
"name": "video_lang",
"type": "string",
"value": "=auto"
},
{
"id": "8beb29bd-1d06-4717-9c16-ccd94eb2ac6f",
"name": "export_mode",
"type": "string",
"value": "download"
},
{
"id": "58162138-a6f9-4350-b45b-2e885aab85e3",
"name": "viral_score_threshold",
"type": "number",
"value": 5
},
{
"id": "447e7b7b-cd1d-4b3a-a3e5-b22221aee35b",
"name": "schedule_time",
"type": "number",
"value": null
}
]
}
},
"typeVersion": 3.4
},
{
"id": "440e66d7-9380-43ba-8f86-80bb8bc116a0",
"name": "Retrieve Social Media Account",
"type": "n8n-nodes-base.httpRequest",
"position": [
-1312,
608
],
"parameters": {
"url": "https://elb-api.vizard.ai/hvizard-server-front/open-api/v1/project/social-accounts",
"options": {},
"sendHeaders": true,
"headerParameters": {
"parameters": [
{
"name": "VIZARDAI_API_KEY",
"value": "={{ $('Configuration').item.json.vizard_api_key }}"
}
]
}
},
"typeVersion": 4.3
},
{
"id": "0eec0cfe-f0a9-491d-a42d-3476361c0b55",
"name": "ViralSocre Filter",
"type": "n8n-nodes-base.code",
"position": [
-1104,
608
],
"parameters": {
"jsCode": "const threshold = $('Configuration').first().json.viral_score_threshold;\n\nreturn $('Get Status').first().json.videos\n .filter(video => Number(video.viralScore) > threshold)\n .map(video => ({\n json: video\n }));"
},
"typeVersion": 2
},
{
"id": "be162893-8d9c-4cf4-9cea-c5225247dd31",
"name": "Switch",
"type": "n8n-nodes-base.switch",
"position": [
-896,
608
],
"parameters": {
"rules": {
"values": [
{
"conditions": {
"options": {
"version": 3,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "67af30b5-97f8-443c-841b-4d9cefa8ad62",
"operator": {
"type": "string",
"operation": "equals"
},
"leftValue": "={{ $('Configuration').item.json.export_mode }}",
"rightValue": "auto_publish"
}
]
}
},
{
"conditions": {
"options": {
"version": 3,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "fda82684-15c8-478d-9c9a-0bcc181ba61a",
"operator": {
"type": "string",
"operation": "equals"
},
"leftValue": "={{ $('Configuration').item.json.export_mode }}",
"rightValue": "download"
}
]
}
}
]
},
"options": {}
},
"typeVersion": 3.4
},
{
"id": "de546357-eb29-421a-ac0e-42e897950231",
"name": "Download",
"type": "n8n-nodes-base.httpRequest",
"position": [
-592,
704
],
"parameters": {
"url": "={{ $('ViralSocre Filter').item.json.videoUrl }}",
"options": {}
},
"typeVersion": 4.3
},
{
"id": "17f7580a-2101-4069-b689-53a76fe864a3",
"name": "If",
"type": "n8n-nodes-base.if",
"position": [
-624,
496
],
"parameters": {
"options": {},
"conditions": {
"options": {
"version": 3,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "6c0c2556-b0de-4c10-aa5e-db81a222f5f4",
"operator": {
"type": "number",
"operation": "notEmpty",
"singleValue": true
},
"leftValue": "={{ $('Configuration').item.json.schedule_time }}",
"rightValue": ""
}
]
}
},
"typeVersion": 2.3
},
{
"id": "39d34de4-01b7-4196-aa90-13517a747193",
"name": "Scheduled Publish",
"type": "n8n-nodes-base.httpRequest",
"position": [
-384,
384
],
"parameters": {
"url": "https://elb-api.vizard.ai/hvizard-server-front/open-api/v1/project/publish-video",
"method": "POST",
"options": {},
"sendBody": true,
"sendHeaders": true,
"bodyParameters": {
"parameters": [
{
"name": "finalVideoId",
"value": "={{ $('ViralSocre Filter').item.json.videoId }}"
},
{
"name": "socialAccountId",
"value": "={{ $('Retrieve Social Media Account').item.json.publishAccounts[0].id }}"
},
{
"name": "post"
},
{
"name": "title",
"value": "= {{ $('ViralSocre Filter').item.json.title }}"
},
{
"name": "publishTime",
"value": "={{ $('Configuration').item.json.schedule_time }}"
}
]
},
"headerParameters": {
"parameters": [
{
"name": "VIZARDAI_API_KEY",
"value": "={{ $('Configuration').item.json.vizard_api_key }}"
}
]
}
},
"typeVersion": 4.3
},
{
"id": "16666e7b-03a7-4811-b4ed-62928404087f",
"name": "Instant Post",
"type": "n8n-nodes-base.httpRequest",
"position": [
-368,
560
],
"parameters": {
"url": "https://elb-api.vizard.ai/hvizard-server-front/open-api/v1/project/publish-video",
"method": "POST",
"options": {},
"sendBody": true,
"sendHeaders": true,
"bodyParameters": {
"parameters": [
{
"name": "finalVideoId",
"value": "={{ $('ViralSocre Filter').item.json.videoId }}"
},
{
"name": "socialAccountId",
"value": "={{ $('Retrieve Social Media Account').item.json.publishAccounts[0].id }}"
},
{
"name": "post"
},
{
"name": "title",
"value": "= {{ $('ViralSocre Filter').item.json.title }}"
},
{
"name": "publishTime",
"value": "={{ $('Configuration').item.json.schedule_time }}"
}
]
},
"headerParameters": {
"parameters": [
{
"name": "VIZARDAI_API_KEY",
"value": "={{ $('Configuration').item.json.vizard_api_key }}"
}
]
}
},
"typeVersion": 4.3
},
{
"id": "c58d0607-73b8-4fbc-9bae-4a15c4d2ce85",
"name": "Main Overview",
"type": "n8n-nodes-base.stickyNote",
"position": [
-3568,
560
],
"parameters": {
"width": 704,
"height": 672,
"content": "## Viral Clip Generator for YouTube Videos\n\nAutomatically extract viral moments from YouTube videos and publish to TikTok, Instagram Reels, and other social platforms using Vizard AI.\n\n### How it works\n\n1. **Submit URL**: Enter a YouTube video link via the form trigger\n2. **AI Analysis**: Vizard AI processes the video and identifies viral-worthy clips\n3. **Quality Filter**: Clips are scored 0-10 for viral potential; only those above your threshold proceed\n4. **Smart Export**: Clips are either downloaded for review or auto-published to your connected social accounts\n\n### Setup\n\n- **Get Vizard API key** from vizard.ai\n- Open **Configuration** node and replace `[ENTER_YOUR_API_KEY_HERE]` with your actual key\n- Set **viral_score_threshold** (default: 5, range: 0-10)\n- Choose **export_mode**: `download` or `auto_publish`\n- Optional: Set **schedule_time** as Unix timestamp for delayed posting\n\n### Customization\n\n- Adjust threshold (7-8 for top clips only, 3-4 for more volume)\n- Modify `preferLength` in AI Clipper node for different clip durations\n- Connect social accounts in Vizard dashboard for auto-publishing\n"
},
"typeVersion": 1
},
{
"id": "7b98b7ea-6cd3-4170-9e12-016b1bd63cdb",
"name": "Processing Section",
"type": "n8n-nodes-base.stickyNote",
"position": [
-2240,
640
],
"parameters": {
"color": 7,
"width": 888,
"height": 384,
"content": "## 2. AI Video Processing & Status Monitoring\n\nPolls for completion, validates success"
},
"typeVersion": 1
},
{
"id": "12c203c6-52a6-4acf-bac0-d2b4d6953fa9",
"name": "Export Section",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1328,
352
],
"parameters": {
"color": 7,
"width": 1160,
"height": 512,
"content": "## 3. Filtering & Export\n\nFilters clips by viral score, routes to download or social publishing"
},
"typeVersion": 1
},
{
"id": "da847e92-1e9e-4ee4-937c-4689c72c677c",
"name": "Processing Section1",
"type": "n8n-nodes-base.stickyNote",
"position": [
-2816,
640
],
"parameters": {
"color": 7,
"width": 552,
"height": 384,
"content": "## 1. Get video URL and AI clipping\n\nSubmits video to Vizard AI"
},
"typeVersion": 1
}
],
"active": false,
"settings": {
"executionOrder": "v1"
},
"versionId": "e3b3e817-142d-4037-8f3a-c134bd8c4d2d",
"connections": {
"If": {
"main": [
[
{
"node": "Scheduled Publish",
"type": "main",
"index": 0
}
],
[
{
"node": "Instant Post",
"type": "main",
"index": 0
}
]
]
},
"Wait": {
"main": [
[
{
"node": "Get Status",
"type": "main",
"index": 0
}
]
]
},
"Switch": {
"main": [
[
{
"node": "If",
"type": "main",
"index": 0
}
],
[
{
"node": "Download",
"type": "main",
"index": 0
}
]
]
},
"Success?": {
"main": [
[
{
"node": "Wait",
"type": "main",
"index": 0
}
]
]
},
"AI Clipper": {
"main": [
[
{
"node": "Success?",
"type": "main",
"index": 0
}
]
]
},
"Get Status": {
"main": [
[
{
"node": "Check Status",
"type": "main",
"index": 0
}
]
]
},
"Check Status": {
"main": [
[
{
"node": "Retrieve Social Media Account",
"type": "main",
"index": 0
}
],
[
{
"node": "Wait",
"type": "main",
"index": 0
}
],
[]
]
},
"form_trigger": {
"main": [
[
{
"node": "Configuration",
"type": "main",
"index": 0
}
]
]
},
"Configuration": {
"main": [
[
{
"node": "AI Clipper",
"type": "main",
"index": 0
}
]
]
},
"ViralSocre Filter": {
"main": [
[
{
"node": "Switch",
"type": "main",
"index": 0
}
]
]
},
"Retrieve Social Media Account": {
"main": [
[
{
"node": "ViralSocre Filter",
"type": "main",
"index": 0
}
]
]
}
}
}
For the full experience including quality scoring and batch install features for each workflow upgrade to Pro
About this workflow
Automatically extract viral moments from YouTube videos and publish to social media platforms.
Source: https://n8n.io/workflows/14031/ — original creator credit. Request a take-down →
Related workflows
Workflows that share integrations, category, or trigger type with this one. All free to copy and import.
Content creators, AI video enthusiasts, and digital marketers who want to analyze successful short-form videos and understand their production techniques. Perfect for anyone looking to reverse-enginee
This n8n template demonstrates how to generate subtitle overlays for YouTube videos and save the final files to Google Drive. It is useful when you want accessible video outputs without manually editi
TikTok Visual Hook Splitter. Uses formTrigger, n8n-nodes-renderio, httpRequest, form. Event-driven trigger; 21 nodes.
This automated workflow allows seamless conversion of YouTube videos to MP3, using the YouTube to MP3 Downloader API. The converted MP3 files are uploaded to Google Drive, and all relevant conversion
Convert TikTok videos to MP4 , MP3 (without watermark), upload to Google Drive, and log conversion attempts into Google Sheets automatically — powered by TikTok Download Audio Video API.