Kling 2.1 API reference
Animate a frame at 720p or 1080p, with an optional end frame
Call Kling 2.1 from your own code with one PopNow API key. Below are the exact model IDs to send, every input field the model accepts, what each request costs in credits, and a request you can paste into a terminal.
At a glance
- Made by
- Kuaishou
- Output
- Video
- From
- 5.25 credits per second of output ($0.0525)
- Model IDs
1 credit = $0.01. A task holds the highest possible charge when it is accepted and settles the real amount when it finishes, rounded up to whole credits; failed tasks are not charged. Ask POST /api/v1/jobs/quote for the exact figure before you run.
Image to Video
kling/2.1/image-to-video
Price
| Option | Credits (per second of output) | US dollars |
|---|---|---|
720p | 5.25 | $0.0525 |
1080p | 10.2 | $0.102 |
Parameters
| Field | Type | Default | Allowed | What it does |
|---|---|---|---|---|
promptRequired | string | — | up to 5,000 characters | Describe what happens after the opening frame: the action, the camera. |
image_urlRequired | string (uri) | — | — | Opening frame. The clip starts from this image. JPEG or PNG only. |
last_image_urlOptional | string (uri) | — | — | Optional closing frame the clip should end on. JPEG or PNG only. |
resolutionOptional | string | 720p | 720p, 1080p | Output resolution. Higher tiers cost more per second. |
duration_secondsOptional | integer | 5 | 5, 10 | Output length: 5 or 10 seconds. Billed per second. |
negative_promptOptional | string | — | up to 500 characters | Things the clip should avoid, written as a short list. |
guidance_scaleOptional | number | 0.5 | 0 to 1 | How strictly the clip follows the prompt, from 0 to 1. Higher is more literal, lower gives the model more freedom. |
Example request
This request runs as it is; any field you leave out uses its default. Put your key in POPNOW_API_KEY first.
The example uses PopNow sample files in image_url. Replace them with your own public HTTPS links, uploads or saved assets.
curl -X POST "https://api.popnow.ai/api/v1/jobs/createTask" \
-H "Authorization: Bearer $POPNOW_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $(uuidgen)" \
-d '{
"model": "kling/2.1/image-to-video",
"input": {
"prompt": "He lands softly on the rooftop, laughs and turns toward the camera while the balloons sway in the evening breeze; slow push-in",
"image_url": "https://media.popnow.ai/influencer/examples/marco.webp",
"duration_seconds": 5,
"resolution": "720p"
}
}'The response carries a taskId straight away. Read the result with GET /api/v1/jobs/recordInfo, or add callBackUrl to be notified.
curl "https://api.popnow.ai/api/v1/jobs/recordInfo?taskId=TASK_ID_FROM_CREATE_TASK" \
-H "Authorization: Bearer $POPNOW_API_KEY"
