Usa la API de RunComfy para ejecutar wan-ai/wan-2.7/reference-to-video. Para entradas y salidas admitidas, consulta el esquema.
curl --request POST \
--url https://model-api.runcomfy.net/v1/models/wan-ai/wan-2.7/reference-to-video \
--header "Content-Type: application/json" \
--header "Authorization: Bearer <token>" \
--data '{
"prompt": "Use the reference to keep the same product shape, materials, and colors; generate a 5-second clip with natural motion, medium framing, soft daylight, and a smooth camera follow."
}'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/wan-ai/wan-2.7/reference-to-video \
--header "Content-Type: application/json" \
--header "Authorization: Bearer <token>" \
--data '{
"prompt": "Use the reference to keep the same product shape, materials, and colors; generate a 5-second clip with natural motion, medium framing, soft daylight, and a smooth camera follow."
}'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": "",
"type": "string",
"maxLength": 5000,
"default": "Use the reference to keep the same product shape, materials, and colors; generate a 5-second clip with natural motion, medium framing, soft daylight, and a smooth camera follow."
},
"reference_image_urls": {
"title": "URL de imágenes de referencia",
"description": "URL de imágenes de referencia para la apariencia de personajes u objetos. Pase varias imágenes para la generación de múltiples sujetos. Máximo 20 MB cada uno. El total combinado de imágenes de referencia y vídeos de referencia no debe exceder 5.",
"type": "array",
"items": {
"type": "string",
"format": "image_uri"
},
"maxItems": 5,
"default": [
"https://playgrounds-storage-public.runcomfy.net/tools/7338/media-files/ref-promo.webp"
]
},
"reference_video_urls": {
"title": "URL de vídeos de referencia",
"description": "URL de vídeos de referencia para la apariencia y el movimiento de personajes u objetos. Pase varios videos para la generación de múltiples sujetos. Máximo 100 MB cada uno. El total combinado de imágenes de referencia y vídeos de referencia no debe exceder 5.",
"type": "array",
"items": {
"type": "string",
"format": "video_uri"
},
"maxItems": 5
},
"negative_prompt": {
"title": "Negative Prompt",
"description": "Contenido a evitar en el vídeo.",
"type": "string",
"maxLength": 500
},
"aspect_ratio": {
"title": "Relación de aspecto (W:H)",
"description": "",
"type": "string",
"enum": [
"16:9",
"9:16",
"1:1",
"4:3",
"3:4"
],
"default": "16:9"
},
"resolution": {
"title": "Resolución",
"description": "Nivel de resolución de vídeo de salida.",
"type": "string",
"enum": [
"720p",
"1080p"
],
"default": "1080p"
},
"duration": {
"title": "Duración",
"description": "Duración del vídeo de salida en segundos (2-10).",
"type": "integer",
"enum": [
2,
3,
4,
5,
6,
7,
8,
9,
10
],
"default": 5
},
"multi_shots": {
"title": "Tomas múltiples",
"description": "Cuando es true, habilita la segmentación inteligente de múltiples tomas. Cuando es false, genera una única toma continua.",
"type": "boolean",
"default": false
},
"seed": {
"title": "Semilla",
"description": "",
"type": "integer",
"minimum": 0,
"maximum": 2147483647,
"default": 0
}
}
}{
"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.