One video ad into many variants with the same pacing, by API
Send one source ad to Sume's video edit once per variant, each with a single-change prompt ending 'Keep everything else the same.' One job and one key each.

Run one edit job per variant. Sume's video router edit takes a single source clip as video_url plus a prompt that describes the change, for example "Replace the bottle with an apple. Keep everything else the same." Repeat that with one change per job and you get a set of variants of one ad. Nothing here is a single "multiply" call; you write the loop.
Higgsfield's changelog (Aug 25, 2026) describes its Ad Multiplier as turning one video ad into many variants with the same video, edit and pacing, and new characters, clothing, locations and objects. Sume facts are from Video router and Video generation, read 2026-10-01.
What does one variant request look like?
A video_to_video edit takes video_url; the prompt describes the edit, and resolution is optional (default 720p). There is no aspect_ratio or duration. video_url is the edit source, not a reference, so it cannot be combined with image_url, end_image_url or reference_*_urls.
const edits = [
"Replace the bottle with an apple. Keep everything else the same.",
"Move the scene to a beach. Keep everything else the same.",
];
for (const [i, prompt] of edits.entries()) {
const res = await fetch("https://api.sume.com/v1/video-router/generate", {
method: "POST",
headers: {
Authorization: "Bearer " + process.env.SUME_API_KEY,
"Content-Type": "application/json",
"Idempotency-Key": "ad-variant-" + i,
},
body: JSON.stringify({
model: "gemini-omni-flash-1.1",
prompt,
video_url: "https://example.com/clip.mp4",
resolution: "720p",
mode: "async",
}),
});
console.log(i, (await res.json()).request_id);
}What should I keep fixed between variants?
| Field | Per variant | Why |
|---|---|---|
video_url | Same source | The ad whose cut you want to keep |
prompt | One change, then "Keep everything else the same." | Matches the docs' edit example |
Idempotency-Key | Unique per variant | A retry returns the original job instead of a second charge |
resolution | Same for all | Keeps variants comparable |
What does each variant cost?
Each is its own paid job. The docs say billing is reserved on submit at provider list × 1.25, and that video models accept video_url as an input reference; check the per-model fields in the catalog before choosing a model. Multiply the one-clip cost by your variant count before you submit, and see hook variations for UGC ads for a related way to vary the opening.
Does the edit really preserve the pacing?
The Sume docs only promise that the prompt describes the edit; they do not guarantee identical cuts. Review each output against the source, and rerun a variant with a narrower prompt if something else changed.
Sources
Related posts
More in Use cases
- Add film grain to a video by API with the noise filter
Add film grain to a finished clip with the allowlisted noise filter in Sume's video filter: one encode job, a new MP4, and a free check before you pay.
- Add motion blur to video: the tmix frame-blend filter API
Sume's video filter has no motion-blur filter, but tmix and tblend blend neighboring frames for a blur-like trail. Limits on a 24 fps source, and the check.
- Add a vignette to a video by API with the vignette filter
Add a lens-edge vignette to a Sume-hosted clip with the allowlisted vignette filter: one encode job, a new MP4, and limits on graph size and source length.
- Firefly Generate Music for a video vs Sume music with inspect
Adobe Firefly can score an uploaded video. Sume music takes text and an optional image, so inspect the clip first, then write the brief and pass a still.
Written by Sume