Kling motion control duration_seconds: it sets the credit hold
On Sume's Kling 3.0 Motion Control, duration_seconds (1 to 30) sizes the credit reservation; the output length follows the driving video, not this field.

duration_seconds on Sume's Kling 3.0 Motion Control is the number of seconds used to reserve credits when the job is admitted. The OpenAPI description gives the formula: ceil of the seconds, times the per-second rate, times the margin. It is required, from 1 to 30, and the output length still follows the driving video.
What does duration_seconds control?
Only the hold at admission. The schema calls it the 'motion video duration seconds used to reserve credits at admit' and adds that output length follows the driving video. The field does not trim or stretch the clip.
The driving video itself is capped at 30 seconds (motion_video_url: maximum 30 seconds), which is why duration_seconds also stops at 30.
| Field | Limit in the schema | What it does |
|---|---|---|
duration_seconds | Required, 1 to 30 | Sizes the credit reservation at admit |
motion_video_url | Public HTTPS, max 30 s | Drives the motion and the output length |
prompt | Optional, up to 2000 characters | Steers appearance only; motion and framing follow the video |
What happens if my balance is short?
The 402 response in the OpenAPI says the workspace has a balance row but not enough USD balance for the estimated billable amount, and that no generation job is started. Generation admission says the same in its error table: insufficient_credits is returned before provider work starts.
Because the hold scales with duration_seconds, a 30-second reference needs a bigger balance than a 6-second one even before the clip is made.
What value should I send?
Send the real length of your driving video, rounded the way the schema rounds it: Sume applies the ceiling. Measure the file with your own tooling before you submit rather than guessing.
The schema does not say what happens when the value and the file disagree, so do not rely on a mismatch behaving any particular way. Keep them equal.
Docs say failed jobs and failed queue admission release or refund the reservation, so a rejected request does not keep the hold. Retry safely with the same Idempotency-Key.
Sources
Related posts
More in Pricing
- The largest hold one Sume call can place: a wallet sizing table
Maximum catalog band per Sume endpoint, from 13 cents for music to $56.25 for a 300-second Fabric clip. Use the table to size a wallet for concurrent jobs.
- Luma modify video price: $0.60 vs $1.75 for a 720p 5-second clip
Luma prices Modify Video per million pixels: $0.00544 on ray-flash-2 and $0.01582 on ray-2. Worked example, and how Sume quotes a clip.
- Luma Ray 3.2 API price per second: 540p, 720p and 1080p
Luma lists Ray 3.2 text and image to video at $0.15, $0.30 and $1.20 per 5-second clip at 540p, 720p and 1080p. The per-second math, and 10-second clips.
- Luma Ray 3.2 HDR price: 2x SDR, and 3x with EXR, worked out
Luma's API page prices HDR at twice SDR and HDR plus EXR at three times. On a 5-second 1080p Ray 3.2 clip that is $1.20, $2.40 and $3.60. Sume's output.
Written by Sume