Usa la API de RunComfy para ejecutar kling/kling-v4/reference-to-video. Para entradas y salidas admitidas, consulta el esquema.
curl --request POST \
--url https://model-api.runcomfy.net/v1/models/kling/kling-v4/reference-to-video \
--header "Content-Type: application/json" \
--header "Authorization: Bearer <token>" \
--data '{
"prompt": ""
}'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-v4/reference-to-video \
--header "Content-Type: application/json" \
--header "Authorization: Bearer <token>" \
--data '{
"prompt": ""
}'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 el disparo. Imágenes de referencia de direcciones como @Image1, videos como @Video1 y temas como @Element1.",
"type": "string",
"examples": [
"Use @Image1. She turns from profile toward the camera and gives a small closed-mouth smile. The studio light stays soft. Audio: quiet room tone and a faint cloth rustle, no music."
]
},
"image_urls": {
"title": "URLs de imagen",
"description": "Imágenes de referencia, hasta diez, dirigidas como @Image1 en orden de lista. Los fotogramas de apertura, medio y final cuentan para el mismo diez.",
"type": "array",
"maxItems": 10,
"items": {
"type": "string",
"format": "image_uri"
},
"examples": [
[
"https://playgrounds-storage-public.runcomfy.net/tools/7479/media-files/promo-input.webp"
]
]
},
"video_urls": {
"title": "URLs de vídeo",
"description": "Vídeos de referencia, hasta cinco, cada uno de 3 a 30 segundos, con la dirección @Video1. Junto con los temas de vídeo, permanecen en 30 segundos.",
"type": "array",
"maxItems": 5,
"items": {
"type": "string",
"format": "video_uri"
}
},
"start_image_url": {
"title": "Imagen inicial",
"description": "Marco de apertura opcional. Cuenta para el total de diez imágenes.",
"type": "string"
},
"middle_image_urls": {
"title": "Imágenes intermedias",
"description": "Marcos ordenados opcionales entre apertura y cierre. Ocho como máximo.",
"type": "array",
"maxItems": 8,
"items": {
"type": "string",
"format": "image_uri"
}
},
"end_image_url": {
"title": "Imagen final",
"description": "Último cuadro opcional. Cuenta para el total de diez imágenes.",
"type": "string"
},
"elements": {
"title": "Elementos",
"description": "Hasta siete sujetos guardados. Cada uno es una vista frontal más ángulos opcionales, o un único vídeo de 3 a 8 segundos. Como máximo tres podrán ser vídeos. Consúltelos como @Element1, @Element2, etc.",
"type": "array",
"items": {
"type": "object",
"properties": {
"frontal_image_url": {
"type": "string",
"format": "image_uri",
"description": "Vista frontal del sujeto. Utilízalo con hasta tres ángulos adicionales o utiliza un vídeo en su lugar."
},
"reference_image_urls": {
"type": "array",
"format": "image_uris",
"maxItems": 3,
"items": {
"type": "string",
"format": "image_uri"
},
"description": "Hasta tres ángulos extra. Requiere una vista frontal y no se puede combinar con un vídeo."
},
"video_url": {
"type": "string",
"format": "video_uri",
"description": "Un clip de 3 a 8 segundos del sujeto, utilizado en lugar de imágenes. Como máximo tres elementos podrán ser vídeos."
}
}
},
"minItems": 0,
"maxItems": 7
},
"duration": {
"title": "Duración",
"description": "Duración del clip en segundos completos. El valor predeterminado es 5.",
"type": "integer",
"minimum": 3,
"maximum": 30,
"default": 5
},
"resolution": {
"title": "Resolución",
"description": "Resolución de salida. 1080p es el valor predeterminado. 720p es el pase más ligero.",
"type": "string",
"enum": [
"720p",
"1080p"
],
"default": "1080p"
},
"aspect_ratio": {
"title": "Relación de aspecto",
"description": "Cuadro de salida. auto sigue las referencias. 16:9 es el valor predeterminado.",
"type": "string",
"enum": [
"16:9",
"9:16",
"1:1",
"21:9",
"auto"
],
"default": "16:9"
}
}
}{
"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.