AutomationFlowsSocial Media › Extract Viral Clips from YouTube with Vizard AI

Extract Viral Clips from YouTube with Vizard AI

Original n8n title: Generate Tiktok and Instagram Reel Clips From Youtube Videos with Vizard AI

ByVizard.ai @vizard-ai on n8n.io

Automatically extract viral moments from YouTube videos and publish to social media platforms.

Event trigger★★★★☆ complexity18 nodesForm TriggerHTTP Request
Social Media Trigger: Event Nodes: 18 Complexity: ★★★★☆ Added:

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 →

Download .json
{
  "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
          }
        ]
      ]
    }
  }
}
Pro

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 →

More Social Media workflows → · Browse all categories →

Related workflows

Workflows that share integrations, category, or trigger type with this one. All free to copy and import.

Social Media

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

Form Trigger, HTTP Request, Slack
Social Media

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

@Videodb/N8N Nodes Videodb, HTTP Request, Form Trigger +1
Social Media

TikTok Visual Hook Splitter. Uses formTrigger, n8n-nodes-renderio, httpRequest, form. Event-driven trigger; 21 nodes.

Form Trigger, N8N Nodes Renderio, HTTP Request +1
Social Media

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

Form Trigger, HTTP Request, Google Drive +1
Social Media

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.

Form Trigger, Google Sheets, Google Drive +1