Black Friday price changed midweek: re-burn the price for $0.20 a clip

When a sale price moves, keep a clean master and re-burn the price with Sume video-captions cues. 250 clips cost 250 x $0.20 = $50.00; no re-edit is needed.

4 min readSume
All posts

If a sale price changes midweek, burn the new number onto a clean clip with Sume's video captions endpoint and cues. Each accepted standalone caption job is $0.20 for a clip up to 60 seconds under the current fixed estimate, so 250 clips cost 250 x $0.20 = $50.00. The text goes in as authored cues with text, start and end, which means no speech-to-text and no timing guesswork.

The method depends on one habit: never bake the price into the master. Keep the clean MP4 in your workspace and treat the price as an overlay you can reissue.

One clean master, many price cards

Hold the unlettered clip as an artifact. Each price version is a new caption job against the same video_url. You can also change the look with style or a one-request design override; the docs say a restyle is still a render and the price does not change.

Cost of re-pricing (read 2026-10-04, docs rate $0.20 per caption job up to 60 s)
ClipsRe-price roundsJobsCost
50150$10.00
2501250$50.00
2503750$150.00
40280$16.00

The request

Build the key from the SKU, the price and a version, for example sku123-19usd-v2. The same key with the same body returns the same job, and a different body under the same key is a conflict, so a price change should always change the key.

curl -X POST https://api.sume.com/v1/video-captions \
  -H "Authorization: Bearer $SUME_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: sku123-19usd-v2" \
  -d '{
    "video_url": "https://media.sume.com/artifacts/example/clean.mp4",
    "style": "black-outline",
    "cues": [{"text": "Now $19", "start": 0.5, "end": 3.0}]
  }'

What to check before you swap the old clip

Poll GET /v1/video-captions/:id until the resource is ready, then read the hosted video. Compare the burned text with your price sheet before you replace anything live. A number outside the documented range of a design token is a 400 at request time, so a wrong look fails before you pay for a render.

Only send one of script_text, words, cues and segments per job. If you send Korean text with slam, punch or tiktok-green, the API refuses it with caption_hangul_text_latin_style, so pick a Hangul-safe style for Korean cards.

The old clips are not touched. Archive them in a folder named by price version, so you can prove later which price ran on which day.

  • Clean master, no baked-in numbers.
  • One cue list per price.
  • Key = SKU + price + version.

When a re-burn is the wrong tool

If the price changes the story, such as a bundle that adds a new product shot, a text overlay will not fix it. Then use a trim or a timeline re-render. For a plain number swap, the overlay is the cheapest, smallest change you can make.

A re-price routine for sale week

Set a rule before the sale starts: only one person owns the price sheet, and every change to it produces a new version number. A script reads the sheet, builds one cue list per SKU and submits one caption job per changed row. Because the key includes the version, running the script twice by accident is harmless: the second run returns the first job instead of making a second charge.

Roll out in waves. Re-burn the ten highest-traffic SKUs first, read the results, and only then release the other 240. If the first wave shows a cue that sits too close to the product, adjust placement.anchor_ratio in a design override, which moves the center of the line as a fraction of the frame height, and resubmit with a new version. Look at every wave on a phone-sized screen, because a card that looks fine on a monitor can sit under the platform's own interface on a vertical feed.

Keep the sheet and the job ids side by side. When someone asks which price a clip showed on a given morning, the version in the key tells you.

Related posts

More in Media tools

All Media tools posts

Written by Sume