Kling 3 first and last frame API: request, limits and a gotcha
On Sume, kling-3 takes a first and optional last frame via frame_images, for 4-15 seconds. Send frame one in the shape you want; aspect_ratio is text-only.

To make a Kling 3 clip that starts and ends on your images, send model: "kling-3" and frame_images with a first_frame and a last_frame to POST /v1/videos, and set duration from 4 to 15 seconds. The gotcha: in current code aspect_ratio reaches the model only for text-to-video, so crop your first frame to the shape you want before you send it.
Sume facts are from Video generation and the catalog and provider code, read 2026-09-29; Kling's support for first/last frame is from its capability map.
What does the request look like?
One entry per frame, each with type: "image_url", an image_url.url and a frame_type. Send a first_frame along with the last_frame.
curl -X POST https://api.sume.com/v1/videos \
-H "Authorization: Bearer $SUME_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: kling-fl-002" \
-d '{
"model": "kling-3",
"prompt": "Camera pushes in as she turns toward the window.",
"frame_images": [
{"type":"image_url","image_url":{"url":"https://example.com/a.png"},"frame_type":"first_frame"},
{"type":"image_url","image_url":{"url":"https://example.com/b.png"},"frame_type":"last_frame"}
],
"duration": 8,
"generate_audio": false
}'What are the limits?
| Item | Value |
|---|---|
| Frame types on Sume | first_frame, last_frame |
| Duration on Sume | 4 to 15 whole seconds |
| Kling's own range | 3 to 15 s |
| Output size on Sume | Follows the first frame |
input_references | Not accepted; frame_images only |
| Images | Public HTTPS URLs |
Why did my aspect ratio change?
For image-to-video the request builder passes the frames, prompt, duration and audio flag, not aspect_ratio. The output follows your first frame's shape. For a 9:16 clip, send a 9:16 first frame.
What does a clip cost?
Sume bills provider list × 1.25 reserved on submit. Audio is on unless you send generate_audio: false: an 8-second clip reserves $1.12 silent or $1.68 with audio, before the agent fee.
Sources
Related posts
More in Models
- Kling 3 lip sync with your own audio: what each API does
Kling lists lip sync driven by text or audio. Sume's kling-3 takes no audio input, only a generate_audio switch; models with audio references are listed.
- Kling 3 native audio: what the on and off price difference is
On Sume, kling-3 costs $0.14 a second silent and $0.21 with audio. Audio is on unless you send generate_audio false, so the default is the higher price.
- Lyria 3 Pro or Lyria 3.5: which model id do I send?
Sume's Music Router accepts sume/music-auto, lyria-3.5 and lyria-3-pro. What each id does, how to pin one, and what Google lists for the models.
- Lyria 3.5 API: model id, request and how to call it
Lyria 3.5 is in the Gemini API as lyria-3.5. Here is what Google's page says about it and how to call it from Sume with one music request.
Written by Sume