Introducción
Kling 2.1 Imagen a video es el único modo que ofrece esta generación: envia un cuadro inicial y un prompt que describa lo que pasa despues, elige un resolution de 720p (estandar) o 1080p (pro), y recibe un clip silencioso de 5 o 10 segundos. Un cuadro final (last_image_url) solo se acepta en 1080p.
Elige una resolución según tu presupuesto
| Lo que buscas | Resolución |
|---|---|
| el nivel más económico de esta línea | 720p (estandar) |
| un clip más nitido, con cuadro final opcional | 1080p (pro) |
Funciones y aspectos destacados
Un cuadro de cierre, pero solo en 1080p
Ajusta resolution a 1080p y añade un cuadro de cierre junto a tu cuadro inicial, y el clip se construye para terminar exactamente en esa pose en el último cuadro. En 720p no se acepta un cuadro de cierre: una solicitud que lo incluya se rechaza antes de ejecutarse, sin costo, así que omítelo en ese nivel y deja que el clip corra desde el cuadro inicial hasta donde el modelo decida detenerse.
Sin pista de audio en ningún nivel
Este modelo no genera sonido en absoluto, ni en 720p ni en 1080p. Es un hecho simple con el que hay que contar, no un defecto: encaja con material destinado a una edición que añadirá después su propia voz, música o diseño de sonido.
Los cuadros inicial y final pueden encajar de forma limpia
En una de nuestras pruebas, una caminata por un muelle que comenzaba en niebla y terminaba en una pose cercana de cara a cámara aterrizó casi exactamente en el cuadro de cierre enviado, con el viento y la gradación de color consistentes a lo largo de los cinco segundos completos.
Parámetros de la solicitud
| Parámetro | Obligatorio | Descripción |
|---|---|---|
prompt | Sí | Describe solo lo que pasa despues del cuadro inicial: la acción y el movimiento de cámara. mínimo 1 caracteres · máximo 5000 caracteres |
image_url | Sí | Cuadro inicial. Solo JPEG o PNG. |
last_image_url | No | Cuadro final opcional, aceptado solo en 1080p. Una solicitud en 720p que lo incluya se rechaza, sin costo. |
resolution | No | 720p (estandar, el nivel más económico) o 1080p (pro, y el único nivel que acepta un cuadro final). |
duration_seconds | No | Segundos completos, 5 o 10. Determina el precio. |
negative_prompt | No | Una lista corta de lo que el clip debe evitar. máximo 500 caracteres |
guidance_scale | No | De 0 a 1. Más alto se apega más a tu redacción; más bajo le da al modelo más libertad. |
Precios
Se cobra por segundo del clip de salida; el nivel pro en 1080p cuesta más por segundo que el nivel estandar en 720p. Una imagen que Kling rechaza no se cobra.
| Especificación | Precio |
|---|---|
| $0.035 / segundo |
| $0.068 / segundo |
Casos de uso
La prueba más barata de un cuadro inicial
Corre primero el nivel estandar en 720p para ver si una acción, un movimiento de cámara o un encuadre se ve como quieres, antes de gastar más en un nivel superior o una generación más nueva.
Una secuencia de dos cuadros con un final fijo
Usa el nivel pro en 1080p con image_url y last_image_url cuando la pose final exacta importa, como el último plano antes de un corte.
Guía de prompts y consejos prácticos
Describe una acción continua, de principio a fin
El ejemplo de la espada en la azotea de arriba nombra un solo arco, del giro a la postura de guardia final; esa estructura de un solo momento es más confiable en esta generación que varias acciones distintas metidas en un mismo prompt.
No esperes que los detalles largos que arrastran mantengan su forma
El cabello largo, la tela que se arrastra o los accesorios que cuelgan son el tipo de detalle que esta generación tiende a perder a lo largo de 10 segundos: una larga cola de terciopelo se acortó visiblemente a mitad de una de nuestras pruebas en una escalera. Mantén esos detalles cortos, o prevé un retoque después.
Ajusta la resolución a lo que necesita la toma
Haz primero una prueba en 720p mientras todavía estás afinando la acción o el movimiento de cámara, y guarda el nivel pro de 1080p -con su cuadro de cierre opcional- para la toma que quieres conservar.
Inicio rápido de la API
# Generate the idempotency key once; reuse it when retrying after a lost response.
export SPICY_IDEMPOTENCY_KEY="${SPICY_IDEMPOTENCY_KEY:-$(uuidgen)}"
curl -X POST https://api.spicyapi.ai/api/v1/jobs/createTask \
-H "Authorization: Bearer $SPICY_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $SPICY_IDEMPOTENCY_KEY" \
-d '{
"model": "kling/2.1/image-to-video",
"input": {
"duration_seconds": 5,
"image_url": "https://example.com/reference.png",
"prompt": "A slow aerial shot drifting over a misty pine forest at sunrise",
"resolution": "720p"
}
}'
# Copy data.taskId from the response into TASK_ID, then poll the status.
TASK_ID="TASK_ID_FROM_RESPONSE"
curl "https://api.spicyapi.ai/api/v1/jobs/recordInfo?taskId=$TASK_ID" \
-H "Authorization: Bearer $SPICY_API_KEY"
Consulta la referencia de la API para autenticación, el esquema completo, sondeo y gestión de errores.











