Customer Testimonial Clip Extractor — Auto-extract Best Moments and Upload to Google Drive

Hey n8n community!

Sharing a workflow I built for anyone who regularly works with customer testimonial or interview recordings and needs to turn them into short vertical clips for social media or ads — without touching a video editor.


What Problem This Solves

Recording a customer testimonial is easy. Cutting it into 5 polished vertical clips for Instagram Reels, TikTok, or paid ads takes hours. This workflow does that entire step automatically.


How It Works

1. Form Trigger — collects the testimonial video URL, client name, industry, and where the clips will be used

2. HTTP Request — Submit Clipping Task — sends the video URL to an AI clipping API. It auto-detects the most impactful moments, generates up to 5 clips ranked by engagement score, adds animated captions, applies 9:16 smart reframing, and renders each clip at HD 720p

3. Wait 90 Seconds — gives the API time to process and render the clips

4. HTTP Request — Get Results — fetches the completed clips using the job ID

5. Code Node — splits the clips array into individual items for processing

6. HTTP Request — Download Clip — downloads each rendered clip as a video file

7. Google Drive — Upload — saves each clip to your Drive folder with the AI-generated title as the filename


What You Get in Google Drive

For each testimonial video you submit, you get up to 5 files:

  • Vertical 9:16 MP4 clips
  • Animated captions already burned in
  • Smart reframe applied — speaker stays centered
  • Each file named with an AI-generated title based on the clip content

Setup Steps

  1. Add your WayinVideo API key in the two HTTP Request nodes — Submit Clipping Task and Get Clip ResultsAI Clipping API - WayinVideo API Docs
  2. Connect your Google Drive OAuth credential in the Upload node
  3. Replace the folder ID with your target Google Drive folder ID
  4. Activate the workflow and open the Form URL to submit your first video

One Thing to Note

The 90 second wait works well for most videos under 30 minutes. For longer recordings, either increase the wait time or swap the Wait node for an IF retry loop that polls every 30 seconds until status = SUCCEEDED. I left a note inside the workflow for this.


Works With

YouTube, Zoom cloud recordings, Vimeo, Loom, TikTok — basically any public video URL. No file uploading or size limits to worry about.


Drop a comment if you want the full workflow JSON — happy to share! :raising_hands:

Very cool workflow. The main point of attention here is making sure the best-moment extraction stays contextually accurate, because a clip can score well for engagement and still misrepresent what the customer actually meant. The note about replacing the fixed wait with polling is also a really good call.

1 Like