Usa la API de RunComfy para ejecutar community/wan-2-2/fun-camera. Para entradas y salidas admitidas, consulta el esquema.
curl --request POST \
--url https://model-api.runcomfy.net/v1/models/community/wan-2-2/fun-camera \
--header "Content-Type: application/json" \
--header "Authorization: Bearer <token>" \
--data '{
"81_text": "cute puppy smiling, panting, zooming out",
"79_image": "https://playgrounds-storage-public.runcomfy.net/comfyui-defaults/00000000-0000-0000-0000-000000001285/input/Runcomfy_Example_1285.png"
}'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/community/wan-2-2/fun-camera \
--header "Content-Type: application/json" \
--header "Authorization: Bearer <token>" \
--data '{
"81_text": "cute puppy smiling, panting, zooming out",
"79_image": "https://playgrounds-storage-public.runcomfy.net/comfyui-defaults/00000000-0000-0000-0000-000000001285/input/Runcomfy_Example_1285.png"
}'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": [
"81_text",
"79_image"
],
"properties": {
"79_image": {
"title": "Imagen",
"description": "Imagen de origen requerida para animar.",
"type": "string",
"default": "https://playgrounds-storage-public.runcomfy.net/comfyui-defaults/00000000-0000-0000-0000-000000001285/input/Runcomfy_Example_1285.png"
},
"81_text": {
"title": "Prompt",
"description": "Prompt obligatorio que describe el movimiento previsto y el comportamiento de la cámara.",
"type": "string",
"default": "cute puppy smiling, panting, zooming out"
},
"87_widthx87_height": {
"title": "Resolución (W:H)",
"description": "Dimensiones de salida. Elija uno de los diez ajustes preestablecidos enumerados; predeterminado: `720x720 (1:1)`.",
"type": "string",
"enum": [
"480x480 (1:1)",
"720x720 (1:1)",
"480x720 (2:3)",
"720x480 (3:2)",
"540x960 (9:16)",
"576x1024 (9:16)",
"720x1280 (9:16)",
"960x540 (16:9)",
"1024x576 (16:9)",
"1280x720 (16:9)"
],
"default": "720x720 (1:1)"
},
"87_length": {
"title": "Número de fotogramas",
"description": "Número de fotogramas de salida. Elija `81` o `141`; predeterminado: `81`.",
"type": "integer",
"enum": [
81,
141
],
"default": 81
},
"116_frame_rate": {
"title": "Fotogramas por segundo",
"description": "Velocidad de fotogramas de reproducción de 12 a 24 FPS; predeterminado: 16.",
"type": "integer",
"minimum": 12,
"maximum": 24,
"default": 16
},
"87_speed": {
"title": "Fortaleza",
"description": "Fuerza del movimiento de la cámara de 0 a 2; predeterminado: 1. Los valores más altos aplican un movimiento más rápido.",
"type": "float",
"minimum": 0,
"maximum": 2,
"default": 1
},
"71_noise_seed": {
"title": "Semilla",
"description": "Semilla entera para la generación; predeterminado: 96860978.",
"type": "integer",
"default": 96860978
},
"78_steps": {
"title": "Pasos",
"description": "Pasos de eliminación de ruido del 2 al 20; predeterminado: 4. Más pasos pueden mejorar los detalles y la estabilidad, pero llevarán más tiempo.",
"type": "integer",
"default": 4,
"minimum": 2,
"maximum": 20
},
"78_cfg": {
"title": "Escala de guía",
"description": "Escala de guía de 0,6 a 2,0; predeterminado: 1. Los valores más altos siguen el prompt con más fuerza.",
"type": "float",
"default": 1,
"minimum": 0.6,
"maximum": 2
},
"76_shift": {
"title": "Cambio",
"description": "Cambio del calendario de muestreo de 1 a 15; predeterminado: 8. Los valores más altos intercambian estabilidad por movimientos o estilos más fuertes.",
"type": "float",
"default": 8,
"minimum": 1,
"maximum": 15
}
}
}{
"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.