Cut a video to 15 seconds for Reddit Engaged Video Views

Reddit began a 15-second Engaged Video Views beta in September. Cut any hosted clip to 15 seconds with Sume video-trim for a flat $0.02, exact or keyframe.

4 min readSume
All posts

POST the clip to /v1/video-trim with a start and a duration of 15, and you get a 15-second cut for a flat $0.02 a job. Sume does not buy Reddit placements or publish to Reddit; it makes the file. The cut is the part you can automate.

The prompt for this is a platform change. A roundup of social updates reports that Reddit started a beta for 15-second Engaged Video Views on 2026-09-01 (Orthotropy, read 2026-10-06). If a measured view is tied to a 15-second window, the first 15 seconds of your video carry the weight, and a script that reliably produces them is worth having.

The call

Send video_url, which must be a media.sume.com artifact from your workspace, so import external files first. Give start in seconds and exactly one of end or duration. Send both and you get video_trim_range_conflict. Duration must be between 0.2 and 900 seconds, and the source can be up to 1,800 seconds (Sume docs: Video trim, read 2026-10-06). An Idempotency-Key is required.

import os, requests

H = {"Authorization": "Bearer " + os.environ["SUME_API_KEY"],
     "Idempotency-Key": "reddit-cut-clip42-start0-d15"}
body = {
    "video_url": "https://media.sume.com/artifacts/artf_demo/launch.mp4",
    "start": 0,
    "duration": 15,
    "precision": "exact",
    "audio": "keep",
    "mode": "sync",
}
r = requests.post("https://api.sume.com/v1/video-trim",
                  json=body, headers=H, timeout=60)
print(r.status_code)
print(r.json())

Choosing the first 15 seconds

Start at zero only if the opening is your best moment. For a longer video, the better 15 seconds may begin at the hook, at the first line of speech or at the first product shot. Inspect the clip with a transcript to see where the first sentence begins, then trim from there. If the clip is shorter than your range, the job returns a trim_clamped_to_source warning instead of failing, so check the warnings before you assume you got 15 seconds.

Exact or keyframe

Precision exact is the default and cuts at the instant you ask for. Keyframe is faster and snaps to a keyframe, so the actual start can differ, and the result reports actual_start_seconds. For a 15-second window, exact is the safer choice: a start that slips by a couple of seconds changes what the first 15 seconds contain.

The default mode is async, and sync waits up to 30 seconds. A short cut usually finishes inside that, but be ready to poll the job when you get a 202.

Video trim settings for a 15-second cut, read 2026-10-06 against Sume docs
FieldValue for this jobNote
start0 or the hookSeconds, at least 0
duration15One of end or duration only
precisionexactKeyframe may shift the start
Price$0.02 per jobFlat

Do not overclaim

A 15-second cut does not guarantee a view counts, and the program is a beta whose rules can change. Check Reddit's own documentation before you design around it. What the cut gives you is a clean, predictable file to test with.

Make it repeatable

For a library of clips, loop over them with one trim call each and a key built from the clip id, the start and the duration. A rerun then replays instead of paying twice. Keep the list of clips and starts in a file so a change in strategy, say starting at the hook rather than at zero, is one edit and one rerun.

Check each output's duration before you upload anywhere. A cut that was clamped to a short source will be under 15 seconds, and the warning on the job is how you find out.

Two more fields matter for a social cut. audio is keep by default and can be set to drop for a silent version, and with exact precision the kept audio is remuxed as AAC. The optional output block, width, height and fps, conforms the result and works only with exact precision: sizes are 256 to 2160, and fps is 24, 25, 30 or 60, and if you leave it out the output keeps the source values (Sume docs: Video trim, read 2026-10-06). The result also carries duration_seconds and actual_start_seconds, so log both next to the clip id; they are the proof that a file is really 15 seconds long and where it started.

Sources

Related posts

More in Agents

All Agents posts

Written by Sume