Loading model…正在加载模型详情…
Loading model…正在加载模型详情…
Describe a shot and generate video with Kling AI’s Kling 2.1 Master, choosing a duration from the catalog.
First-person view from a soldier jumping from a transport plane — the camera shakes with turbulence, oxygen mask reflections flicker — as the clouds part, the battlefield below pulses with anti-air fire and missile trails.
Rear tracking shot of a sleek black cat sprinting through a bustling Indian street market at dusk, the air thick with spice aromas and voices shouting in Hindi. The cat dashes past crowds and carts, then springs onto a stack of woven baskets, bouncing onto the vibrant.
A child gasps and steps back with wide eyes after opening a glowing chest, mouth slightly open, stunned and speechless, slow dolly-in, low-angle shot, magical golden light filling the attic.
Kling 2.1 is a video generation model from Kling AI. The callable Master text-to-video variant accepts a shot description and a duration option on UniRoute.
Describe the subject, action and visual style, then choose one of the catalog options and review the request quote. The available input is text and the catalog option; reference-media inputs are not exposed for these variants.
The workspace offers the Master text-to-video variant. Compare later Kling versions below for their own callable modes and settings.
What you can do with Kling 2.1 through UniRoute today.
Describe the subject, action and visual style, then choose one of the catalog options and review the request quote.
The workspace shows only callable variants; other family operations are not available on UniRoute yet.
The variants you can call, with their options and prices.
| Variant | Model ID | Modes | Inputs | Output | Price |
|---|---|---|---|---|---|
| Kling 2.1 Master | kling/v2-1-master-text-to-video | Text to video | Text prompt and an option for duration | Duration: 5s, 10s | $1.00 to $2.00 per request |
Priced per request. The option you choose sets the price.
| Kling 2.1 Master | |
|---|---|
| 5s | $1.00 |
| 10s | $2.00 |
Rounded to the cent; the live quote in the workspace shows the exact amount. Prices updated 2026-11-08.
Pay as you go from a single USD wallet balance. You see the quote before each request.
Call Kling 2.1 from your own code with the media API.
# Requires bash, curl and jq. Set API_KEY to your own unified UniRoute Key.set -euo pipefail: "${API_KEY:?Set API_KEY first}"BASE='https://api.uniroute.app/v1/media'MODEL='kling/v2-1-master-text-to-video'OPTION='5'PROMPT='A calm sunrise over a mountain lake'curl -fsS --max-time 60 "$BASE/catalog" -H "Authorization: Bearer $API_KEY" | jq -e '.data.models'BODY=$(jq -n --arg model "$MODEL" --arg option "$OPTION" --arg prompt "$PROMPT" '{model:$model,option:$option,prompt:$prompt}')QUOTE_BODY=$(printf '%s' "$BODY" | jq '{model,option}')QUOTE=$(curl -fsS --max-time 60 "$BASE/quote" -H "Authorization: Bearer $API_KEY" -H 'Content-Type: application/json' -d "$QUOTE_BODY")CAP=$(printf '%s' "$QUOTE" | jq -er '.data.quoted_usd')BODY=$(printf '%s' "$BODY" | jq --arg cap "$CAP" '. + {max_cost_usd:$cap}')IDEMPOTENCY="example-$(date +%s)-$$"create() { curl -fsS --max-time 60 "$BASE/tasks" -H "Authorization: Bearer $API_KEY" -H "Idempotency-Key: $IDEMPOTENCY" -H 'Content-Type: application/json' -d "$BODY"; }TASK_ID=$(create | jq -er '.data.task_id')# The same request and idempotency key must return the original task without charging again.REPLAY_ID=$(create | jq -er '.data.task_id')[ "$TASK_ID" = "$REPLAY_ID" ]for attempt in $(seq 1 120); do TASK=$(curl -fsS --max-time 60 "$BASE/tasks/$TASK_ID" -H "Authorization: Bearer $API_KEY") printf '%s' "$TASK" | jq -e '.data | {task_id,status,billing}' if printf '%s' "$TASK" | jq -e '.data.status == "success" and .data.billing.state == "charged"' >/dev/null; then index=0 while IFS= read -r url; do index=$((index+1)) curl -fL --max-time 120 "$url" -o "$TASK_ID-$index.bin" done < <(printf '%s' "$TASK" | jq -er '.data.urls[].url') break fi if printf '%s' "$TASK" | jq -e '.data.status == "failed" and .data.billing.state == "released"' >/dev/null; then exit 1; fi if [ "$attempt" = 120 ]; then echo "Polling limit reached. Keep task ID $TASK_ID and query it later; do not create a new task." >&2 exit 1 fi sleep 5donecurl -fsS --max-time 60 "$BASE/tasks?limit=20" -H "Authorization: Bearer $API_KEY" | jq -e '.data'# Check this task and the caller Key in Console usage; billing.charged_usd is the actual USD charge.| Name | In | Description |
|---|---|---|
model | Body | Model ID to run. |
option | Body | One of the options offered for the model: 5, 10. |
prompt | Body | Text prompt describing what to generate. |
max_cost_usd | Body | Maximum cost in USD for this task, taken from the quote. |
Idempotency-Key | Header | A unique key per task, so a repeated request returns the original task instead of charging again. |
Typical ways to put Kling 2.1 to work.
Explore a visual idea from a written brief, then revise the description to refine the result.
Use the generated result as a draft in a wider production workflow and review it before publication.
Use the media API to quote a request, create a task and poll until the output is ready.
Common questions about Kling 2.1.
Kling 2.1 is a video generation model from Kling AI. The callable Master text-to-video variant accepts a shot description and a duration option on UniRoute.
The variant selector lists the callable model IDs on UniRoute. Unavailable operations are omitted, and the specifications table shows the available options.
From $1.00 / clip. The Pricing section lists the available rates for the selected variant and settings, with prices updated 2026-11-08.
Use the media API to request a quote, create a task with an Idempotency-Key and a maximum cost, then poll for the result.
Describe the subject, action and visual style, then choose one of the catalog options and review the request quote. Reference-media inputs are not exposed for the callable variants shown here.
No. Generation is paid from your wallet balance. You can open the workspace and review the price without paying, create an account to see a live quote for your exact settings, and you are charged only for requests that are accepted.