CapCut has no API. I automated it anyway and shipped 80+ videos

Search “CapCut API” and you’ll find the same answer everywhere: there isn’t one. No API, no command line, no scripting hooks. If you want to make videos faster, CapCut’s official answer is “click faster.”

I didn’t accept that answer. I run four YouTube channels alone, and clicking was never going to scale. So I spent months building a Python pipeline that automates CapCut from the outside, and it has now shipped over 80 videos.

This post is the receipt.

The numbers first

ItemNumberSource
Videos shipped across 4 channels85+channel dashboards, 2026-09
Shorts on the flagship animal channel60+YouTube Studio
Long-form videos (25-min space docs)6YouTube Studio
Shorts recut from that long-form18YouTube Studio
Manual editing time, before40-60 min per videomy own early attempts
Draft build time, nowa few minutes per videopipeline logs
Cash cost of the shorts pipeline$0see below

Two honest notes on that table. First, I was never a video editor: the 40-60 minutes was me fumbling in the timeline as a beginner, so a pro would be faster. Second, these are small-channel numbers. Our production database tracks 40 of those shorts with an average of 676 views and a best of 2,318. I publish them anyway, because a review site that only shows big numbers is hiding something.

How you automate a tool with no API

CapCut stores every project as a draft: a folder of JSON files describing tracks, clips, text, and timing. CapCut reads those files when it opens. Nothing stops another program from writing them.

That is the entire trick. My pipeline never touches CapCut’s buttons. It builds the draft files directly, and CapCut opens the result as if I had made it by hand:

  1. Script in. I drop in a text script for a 15-20 second short.
  2. Voice. Free Microsoft Edge neural TTS reads the narration. No API key, no subscription. It even auto-adjusts speaking rate so the video lands inside the 15-20 second window.
  3. Subtitles. Styled captions are placed word-wrapped against the narration timing, in one of five preset designs.
  4. Music. A royalty-free BGM track is picked and laid under the voice.
  5. Out. A finished CapCut draft appears in my project list, plus a preview MP4 so I can check it without opening CapCut at all.

There is a second mode for filmed footage: it detects silence and stumbles, cuts them out, and generates subtitles. That one turns raw talking-head clips into a rough cut before I ever open the editor.

What it costs: almost nothing

The shorts factory runs on free parts. Edge TTS is free. The BGM library is royalty-free. CapCut itself is free. The only real money in my stack is the Higgsfield subscription that generates AI visuals for the space channel, and that is a visuals cost, not an editing cost.

For comparison, the popular way to build this stack is a paid TTS subscription plus a paid video tool, which starts around $20-30 a month before you’ve uploaded anything.

Where it went wrong

Automation let me publish fast, and publishing fast is how I hit the wall. One video went out at 0% feed exposure: YouTube’s duplicate detection flagged it and simply never showed it to anyone. A re-uploaded video got the channel a block warning. The machine made volume easy, and volume without variation is exactly what platforms punish. I now cap the posting pace and force variation between videos, and those rules live in the pipeline itself.

The other honest limitation: this is not one-click publishing. The pipeline builds the draft; I still review every video and press export myself. I think of it as an assistant that does the first 90 minutes, not a robot that replaces judgment. If you want a machine that uploads unreviewed videos while you sleep, this system is not for you, and frankly YouTube’s duplicate detection will find you before your audience does.

What’s next

I’m breaking this pipeline down piece by piece in the coming weeks: the draft file format, the free TTS setup, the auto-length trick, the subtitle system, and the full month-by-month cost of running four channels this way. Every post will carry its numbers.

If that’s the kind of build log you want, subscribe below. Here are the receipts.