Which Sume video model makes a 15-second 9:16 ad? A catalog filter
List the models in GET /v1/videos/models that accept 15 seconds at 9:16 with a short Python filter, instead of trusting a stale table.

To find which Sume models make a 15-second, 9:16 ad in one clip, filter the catalog rather than a table: GET /v1/videos/models returns each model's supported_durations, supported_aspect_ratios and supported_resolutions. The Sume docs say each other catalog model has a maximum of 15 seconds, while Seedance 2.5 accepts 4 to 30, Wan 3.0 accepts 2 to 30 and Gemini Omni Flash 1.1 accepts 3 to 10, so the answer depends on the model and changes with the catalog.
Source: Video generation: the /v1/videos API. Reddit's 15-second Engaged Video Views option is listed as a public beta from 2026-09-01 (read 2026-10-06 on the Social media platform updates, October 2026 (read 2026-10-06)), which is why 15 seconds is the length people are asking about.
Why filter instead of using a list
Model limits move. A blog table goes stale the day a new model ships or a limit changes. The catalog is the contract, and it says what the API accepts. A request outside a model's limits is refused, so reading the catalog before a batch avoids paying for failures. sume/auto is not in the catalog list, because it is a selector rather than a model, and the docs say Sume does not disclose which family it ran, so pin a model id when the length matters.
The filter
The script lists models whose supported_durations include 15 and whose supported_aspect_ratios include 9:16, and prints their resolutions and whether they can generate audio. It uses only the standard library and the fields from the catalog descriptor.
import json, os, urllib.request
req = urllib.request.Request(
"https://api.sume.com/v1/videos/models",
headers={"Authorization": "Bearer " + os.environ["SUME_API_KEY"]},
)
with urllib.request.urlopen(req) as r:
models = json.load(r)["data"]
for m in models:
durations = m.get("supported_durations") or []
ratios = m.get("supported_aspect_ratios") or []
if 15 in durations and "9:16" in ratios:
print(m["id"], m.get("supported_resolutions"),
"audio" if m.get("generate_audio") else "no audio flag")
What to do with the shortlist
A model on the list can make the clip, which is not the same as making a good one. Generate one test per model with the same prompt and compare the first second, the product and the end. Where a model has a longer limit, such as 30 seconds for Seedance 2.5, ask for exactly 15 rather than the maximum. If no model suits, join two clips with Timeline, which is what the stored post on a 15-second Omni ad does.
Price the shortlist before you test it. At the billed rates in the Sume pricing tables, a 15-second clip at 720p is $1.88 on Wan 3.0 ($0.125 a second) and $8.67 on Seedance 2.5, which is billed per video token. MiniMax H3 at 768p is $1.13 for 15 seconds ($0.075 a second, rounded up to the cent), and Kling 3 is $2.10 with audio off or $3.15 with audio on. These are catalog rates, and a 9:16 frame has the same pixel count as 16:9, so the orientation does not change the price on Seedance. The spread is nearly an order of magnitude, which is why the filter should be followed by a price check and one cheap draft at 480p.
| Model | Duration limit | Note |
|---|---|---|
| seedance-2.5 | 4 to 30 seconds | 480p, 720p, 1080p |
| wan-3.0 | 2 to 30 seconds | Check ratios in the catalog |
| gemini-omni-flash-1.1 | 3 to 10 seconds | 16:9 or 9:16; audio on |
| minimax-h3 | 5 to 15 seconds | Native 768p |
| Most other models | Up to 15 seconds | Read supported_durations |
Keep the filter in your pipeline
Run it at the start of any batch and fail the job if the shortlist is empty. That one check turns a surprise 400 in the middle of 200 jobs into a message at the start. Cache the result for the run, not for weeks.
Sources
Related posts
More in Use cases
- Who approves the render: AI copilot or agent for avatar videos?
Tavus says choose a copilot for irreversible actions. A paid avatar render cannot be undone, so the preview, dry run and spend cap decide who approves.
- Yard sign artwork via API: 3:2 art, a quoted headline, a print check
Generate yard sign artwork at 3:2 on Sume with GPT Image 2.5 or Ideogram 4.5, keep the headline to a few words, quote it, and check the pixel size for print.
- Yoga studio 3:4 portrait promo, 8 seconds: models and price
Wan 3.0, H3 and Seedance list 3:4 on Sume; an 8-second 720p portrait clip costs $1.00 on Wan, $0.60 on H3 (768p) and $4.63 on Seedance 2.5.
- YouTube lip sync for auto dubs: what to prepare before you get access
YouTube is piloting lip sync on auto dubs. Prepare clean speech audio and a 5 to 14.8 second lip-synced clip workflow on Sume while you wait.
Written by Sume