Kling 4.0 saved elements: 7 slots vs Sume reference URLs
Kling 4.0 reuses up to 7 saved elements per generation. Sume has no saved-element object: you send image, video and audio URLs per request. What that changes.

Short answer
Kling 4.0 lets a generation carry up to 7 saved elements alongside 10 images and 5 videos, 15 references in all, according to fal's Kling 4.0 guide (read 2026-10-04). Sume has no saved-element object. Each request carries its own reference URLs, so a character or product you want on every shot is re-sent on every shot. Kling 4.0 itself is not in the Sume video catalog today; Kling 3 is.
What a saved element is, and what Sume has instead
A saved element, as fal describes it, is an asset stored once in the Kling account and then called by name in later generations. That removes the upload from each call and keeps one identity stable across a series.
Sume's video request is stateless. The legacy Video Router takes flat URL arrays: reference_image_urls (max 10), reference_video_urls (max 5) and reference_audio_urls (max 5) per the OpenAPI schema. The OpenRouter-compatible POST /v1/videos takes input_references and frame_images. In both cases the asset lives at a URL you control, and you pass it each time.
Side by side
| Item | Kling 4.0 (per fal) | Sume today |
|---|---|---|
| Total references | 15 | Per model; read supported_input_references |
| Images | 10 | Up to 10 on the Video Router field |
| Videos | 5 | Up to 5 on the Video Router field |
| Saved elements | 7, stored in the account | None; pass a URL each call |
| Kling 4.0 model id | Rolling out in October | Not listed; kling-3 is |
Check what a model accepts before you build
Reference limits differ by model, so ask the catalog rather than assuming. The script below prints each video model id with its accepted reference types.
import asyncio, json, os, urllib.request
def fetch():
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:
return json.load(r)["data"]
async def main():
for m in await asyncio.to_thread(fetch):
print(m["id"], m.get("supported_input_references"))
asyncio.run(main())Workaround for a stable character
Keep your own library of reference images at stable HTTPS URLs and attach the same two or three on every call. For Kling 3, check its row for which reference types it takes first. Where a model takes only a first frame, render the character into the frame instead.
See the reference limits table for every model, and the Kling 4.0 reference-asset comparison for the 15-asset count.
A worked example: one character across six shots
Say a series needs the same host in six 10 second shots. On Kling 4.0, the host would be saved once as an element and called six times, using one of the seven slots. On Sume you keep two or three clean images of the host at stable URLs and attach them to each of the six requests. The request count is the same; what changes is that the reference list is part of your code, so it is versioned with the rest of your pipeline and no account state can drift.
The cost of a re-sent reference on Sume is not a per-asset fee in most models. Prices are per second of output (or per token for Seedance), so attaching three images instead of one does not change the quote, with one documented exception: MiniMax H3 charges for reference images beyond the first five. Check the model row before adding a long reference list.
Caveats
- Kling 4.0 details here come from fal's guide, not a Kling API reference; Kling's own release-notes page did not render its body when read.
- Full Kling 4.0 is expected in October; limits can change at launch.
- Reference limits on Sume are per model: a high cap on the field does not mean every model accepts it.
Sources
Related posts
More in Models
- Kling AI official domain: avoid lookalike sites with Kling 4.0
Kling 4.0 hype brings fake sites. TechTimes names kling.ai as official and two lookalike domains tied to malware. A checklist, plus Kling 3 via Sume.
- Lip sync with a hand over the mouth: sync-3 vs Fabric on Sume
Sync Labs says sync-3 handles obstructions on faces. Sume's lip-sync routes start from a still plus audio. What each takes as input and what is promised.
- LTX-2.3 extend and retake at $0.10/s: the nearest Sume route
fal sells LTX-2.3 extend-video and retake-video at $0.10 a second. Sume has neither endpoint; Omni's video_url edit mode and Timeline joins come closest.
- LTX-2.3 makes 9:16 clips up to 20 s; what Sume offers instead
fal lists LTX-2.3 with portrait 9:16 and up to 20 seconds. Sume's catalog has no LTX row; Wan 3.0 and Seedance 2.5 reach 30 s, Kling 15 s.
Written by Sume