Usa la API de RunComfy para ejecutar kling/kling-video-o3/standard/reference-to-video. Para entradas y salidas admitidas, consulta el esquema.
curl --request POST \
--url https://model-api.runcomfy.net/v1/models/kling/kling-video-o3/standard/reference-to-video \
--header "Content-Type: application/json" \
--header "Authorization: Bearer <token>" \
--data '{
"prompt": "The woman in Figure 1 and the man in Figure 2 stroll along a Parisian boulevard at night, glowing classic street lamps and softly lit Haussmann-style facades behind them, slow tracking shot, cinematic warm lighting, photoreal detail."
}'Define la variable de entorno YOUR_API_TOKEN con tu clave API (gestión en Perfil) e incluye en cada solicitud un token Bearer en la cabecera Authorization : Authorization: Bearer $YOUR_API_TOKEN.
Envía un trabajo de generación asíncrono y recibe de inmediato un request_id y URLs para consultar estado, obtener resultados y cancelar.
curl --request POST \
--url https://model-api.runcomfy.net/v1/models/kling/kling-video-o3/standard/reference-to-video \
--header "Content-Type: application/json" \
--header "Authorization: Bearer <token>" \
--data '{
"prompt": "The woman in Figure 1 and the man in Figure 2 stroll along a Parisian boulevard at night, glowing classic street lamps and softly lit Haussmann-style facades behind them, slow tracking shot, cinematic warm lighting, photoreal detail."
}'Obtiene el estado actual de un request_id ("in_queue", "in_progress", "completed" o "cancelled").
curl --request GET \
--url https://model-api.runcomfy.net/v1/requests/{request_id}/status \
--header "Authorization: Bearer <token>"Obtiene las salidas finales y metadatos del request_id; si el trabajo no ha terminado, la respuesta devuelve el estado actual para seguir haciendo polling.
curl --request GET \
--url https://model-api.runcomfy.net/v1/requests/{request_id}/result \
--header "Authorization: Bearer <token>"Cancela un trabajo en cola por request_id; los trabajos en curso no se pueden cancelar.
curl --request POST \
--url https://model-api.runcomfy.net/v1/requests/{request_id}/cancel \
--header "Authorization: Bearer <token>"Proporciona una URL HTTPS públicamente accesible. El host debe permitir peticiones del servidor (sin login/cookies), sin rate limit agresivo ni bloqueo de bots. Recomendado: imágenes ≤ 50 MB (~4K), vídeos ≤ 100 MB (~2–5 min a 720p). Para activos privados, URLs estables o firmadas.
{
"type": "object",
"title": "Esquema de entrada",
"required": [
"prompt"
],
"properties": {
"prompt": {
"title": "Prompt",
"description": "Describe la escena y la acción. Identifica las referencias por su posición; por ejemplo: «El hombre de la Figura 2 camina con la mujer de la Figura 1 por un parque soleado».",
"type": "string",
"default": "The woman in Figure 1 and the man in Figure 2 stroll along a Parisian boulevard at night, glowing classic street lamps and softly lit Haussmann-style facades behind them, slow tracking shot, cinematic warm lighting, photoreal detail."
},
"images": {
"title": "Imágenes de referencia",
"description": "Imágenes de referencia de personajes, objetos o estilos. Se admiten hasta 7 sin vídeo de referencia, o hasta 4 cuando se proporciona uno.",
"type": "array",
"maxItems": 7,
"minItems": 0,
"default": [
"https://playgrounds-storage-public.runcomfy.net/tools/7361/media-files/refs/ref_woman_euro.png",
"https://playgrounds-storage-public.runcomfy.net/tools/7361/media-files/refs/ref_man_euro.png"
]
},
"video": {
"title": "URL del vídeo de referencia",
"description": "Vídeo de referencia opcional para guiar el movimiento, transferir el estilo o mantener la continuidad de la escena. Si se proporciona, se aplica la tarifa with-reference-video.",
"type": "string"
},
"aspect_ratio": {
"title": "Relación de aspecto (An:Al)",
"description": "Relación de aspecto de salida: 16:9 para formato horizontal, 9:16 para vídeo vertical en redes sociales y 1:1 para formato cuadrado.",
"type": "string",
"enum": [
"16:9",
"9:16",
"1:1"
],
"default": "16:9"
},
"duration": {
"title": "Duración (segundos)",
"description": "Duración del clip generado, en segundos (3–15).",
"type": "integer",
"minimum": 3,
"maximum": 15,
"default": 5
},
"sound": {
"title": "Generar sonido",
"description": "Al activarlo, el modelo sintetiza audio sincronizado con el vídeo. Incrementa aproximadamente un 33% el coste por segundo; no afecta al precio cuando se proporciona un vídeo de referencia.",
"type": "boolean",
"default": false
},
"keep_original_sound": {
"title": "Conservar el sonido original",
"description": "Si se proporciona un vídeo de referencia, conserva su pista de audio original en el resultado generado.",
"type": "boolean",
"default": true
},
"shot_type": {
"title": "Tipo de plano",
"description": "Control de la edición: intelligent determina automáticamente el ritmo y los cortes; customize ofrece control manual mediante el prompt.",
"type": "string",
"enum": [
"customize",
"intelligent"
],
"default": "customize"
}
}
}{
"output": {
"type": "object",
"properties": {
"image": {
"type": "string",
"format": "uri",
"description": "URL de una sola imagen"
},
"video": {
"type": "string",
"format": "uri",
"description": "URL de un solo vídeo"
},
"images": {
"type": "array",
"description": "varias URLs de imagen",
"items": {
"type": "string",
"format": "uri"
}
},
"videos": {
"type": "array",
"description": "varias URLs de vídeo",
"items": {
"type": "string",
"format": "uri"
}
}
}
}
}RunComfy es la principal ComfyUI plataforma, ofreciendo ComfyUI en línea entorno y servicios, junto con flujos de trabajo de ComfyUI con impresionantes imágenes. RunComfy también ofrece AI Models, permitiendo a los artistas aprovechar las últimas herramientas de AI para crear arte increíble.