Season 2 of a Shorts series: same Sume Format, new input, new keys

Start season 2 without rebuilding anything. Keep the Format, change the input and idempotency keys, and keep season 1 receipts as a style reference.

4 min readSume
All posts

Reuse the same Format for season 2 and change only what the episodes say: the input object, the idempotency keys and, if you want, a revised cap. The Format holds how the work is done; each run carries what is different. That split is why a season is cheap to restart.

YouTube Shorts series now have seasons and episodes as first-class objects, rolling out since 2026-09-23 per a platform roundup (Orthotropy, read 2026-10-06). Your generation side should mirror that: one Format per series, one batch per season.

What stays and what changes

Stays: the Format handle and slug, the output schema, your key and scopes. Changes: the season number, the episode briefs and the keys. Put the season in the key so season 2 episode 1 can never collide with season 1 episode 1. A key like harbor-s2-e1-v1 is unambiguous, and a replay under it returns the original receipt with idempotency_hit true.

Pass episode data in input, an object with up to 64 top-level keys and 2 MiB. Sume writes it to a file the agent reads as data, so a brief that contains instruction-like text will not be obeyed as a command (Sume docs: Call a Format, read 2026-10-06).

Carrying the look forward

Season 2 should look like season 1. There are two honest options. First, put the style rules in the Format so every run inherits them. Second, continue a specific finished run with previous_run_id so the new run starts from that run's workspace. Use the second for a direct sequel to one episode, the first for the whole season. Continuing a run does not inherit the output schema, so send it again on each turn (Sume docs: Format runs, read 2026-10-06).

import os, requests

BASE = "https://api.sume.com/v1/formats/sume/sume-slideshow/runs"
H = {"Authorization": "Bearer " + os.environ["SUME_API_KEY"]}
briefs = [
  "The keeper's daughter returns with a map",
  "The second door opens onto the harbor",
]
for n, brief in enumerate(briefs, start=1):
    r = requests.post(BASE, json={
        "input": {"season": 2, "episode": n, "brief": brief},
        "instruction": "Make season 2 episode %d from input." % n,
        "generation_spend_cap_usd": 12,
    }, headers={**H, "Idempotency-Key": "harbor-s2-e%d-v1" % n}, timeout=30)
    print(n, r.status_code, r.json()["data"]["id"])
Season 1 versus season 2 settings, read 2026-10-06 against Sume docs
SettingSeason 1Season 2
FormatOne handle and slugSame handle and slug
Idempotency keyharbor-s1-e1-v1harbor-s2-e1-v1
InputSeason 1 briefsSeason 2 briefs, season field
Spend capPer-run capPer-run cap, revisit after season 1 usage

Use season 1 usage to set the cap

Each terminal receipt carries usage. Read what season 1 episodes actually consumed and set the season 2 per-run cap just above the worst real episode, not at a round guess. A cap too low fails a run partway; a cap left at the platform default of $400 protects little.

Mistakes that cost money in season 2

The most common mistake is copying season 1's script with the keys unchanged. Every request then replays the season 1 receipt with idempotency_hit true. You pay nothing, which feels like savings, and you also get no new episodes. Always put the season number in the key.

The second is changing the brief but reusing the key with a different body. Sume returns 409 idempotency_conflict, which is the correct behavior: the key promised the same request. Treat a conflict as a prompt to bump the version.

The third is forgetting the cap. generation_spend_cap_usd up to 500 is accepted per run, and leaving it out means the Format's own cap applies. A Format that never named a cap reports the platform default of $400, a ceiling you would rarely choose on purpose for one episode, so state a number on every call.

When to change the Format itself

Change the Format, not the input, when the way of working changes: a new aspect ratio, a different voice, a new opening card. Changes to the Format affect every later run, so make them between seasons, never in the middle of one, and note the date so receipts from before and after can be told apart.

Sources

Related posts

More in Formats

All Formats posts

Written by Sume