Usa la API de RunComfy para ejecutar qwen/qwen-image-2.1/edit. Para entradas y salidas admitidas, consulta el esquema.
curl --request POST \
--url https://model-api.runcomfy.net/v1/models/qwen/qwen-image-2.1/edit \
--header "Content-Type: application/json" \
--header "Authorization: Bearer <token>" \
--data '{
"image_urls": [
"https://playgrounds-storage-public.runcomfy.net/tools/7461/media-files/output-example1-4.webp"
],
"prompt": "Change the background to a warm golden-hour studio and add soft rim lighting, keep the subject and clothing unchanged."
}'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/qwen/qwen-image-2.1/edit \
--header "Content-Type: application/json" \
--header "Authorization: Bearer <token>" \
--data '{
"image_urls": [
"https://playgrounds-storage-public.runcomfy.net/tools/7461/media-files/output-example1-4.webp"
],
"prompt": "Change the background to a warm golden-hour studio and add soft rim lighting, keep the subject and clothing unchanged."
}'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": [
"image_urls",
"prompt"
],
"properties": {
"image_urls": {
"title": "Imagen(es) de entrada",
"description": "De una a diez imágenes de referencia. El orden coincide con el del prompt (la primera imagen, la segunda imagen). JPEG, PNG o WebP; cada archivo hasta 30 MB y 25 MP. Mantén cuatro o menos cuando la identidad deba mantenerse nítida.",
"type": "array",
"items": {
"type": "string",
"format": "image_uri"
},
"minItems": 1,
"maxItems": 10,
"validations": [
{
"validation_rule": "file_size_mb<",
"validation_value": 30,
"validation_error": "File size must be less than 30 MB."
}
],
"default": [
"https://playgrounds-storage-public.runcomfy.net/tools/7461/media-files/output-example1-4.webp"
]
},
"prompt": {
"title": "Instrucción de edición",
"description": "Describe el cambio en un lenguaje sencillo: qué agregar, eliminar, restilar o reemplazar. Cita cualquier texto para reproducirlo literalmente. Con una máscara, describe lo que debería aparecer en el área blanca.",
"type": "string",
"default": "Change the background to a warm golden-hour studio and add soft rim lighting, keep the subject and clothing unchanged."
},
"mask_url": {
"title": "Imagen de máscara",
"description": "Máscara de edición local opcional en blanco y negro. El blanco marca el área a cambiar; el negro permanece. Requiere exactamente una imagen de referencia, no se puede usar con un fondo transparente y se ignoran la relación de aspecto y la reescritura del mensaje.",
"type": "string"
},
"aspect_ratio": {
"title": "Relación de aspecto (An:Al)",
"description": "Relación de aspecto de salida. auto usa la primera referencia. Ignorado en el modo de máscara.",
"type": "string",
"enum": [
"auto",
"1:1",
"4:3",
"3:4",
"3:2",
"2:3",
"16:9",
"9:16",
"21:9",
"9:21"
],
"default": "auto"
},
"resolution": {
"title": "Resolución",
"description": "Nivel de detalle de salida. 1K es más rápido; 2K tiene aproximadamente cuatro veces los píxeles y cuesta más.",
"type": "string",
"enum": [
"1K",
"2K"
],
"default": "1K"
},
"background": {
"title": "Fondo",
"description": "opaco para una foto normal. transparente escribe un canal alfa real: describe solo el sujeto y no uses JPEG. No se puede combinar con una máscara.",
"type": "string",
"enum": [
"opaque",
"transparent"
],
"default": "opaque"
},
"output_format": {
"title": "Formato de salida",
"description": "PNG y WebP pueden llevar un canal alfa. JPEG no puede, por lo que no se puede combinar con un fondo transparente.",
"type": "string",
"enum": [
"png",
"webp",
"jpeg"
],
"default": "png"
},
"enhance_prompt": {
"title": "Mejorar el prompt",
"description": "Reescribe una instrucción corta en una escena más completa antes de editar. Apágalo cuando la instrucción ya sea exacta. Ignorado en modo máscara.",
"type": "boolean",
"default": true
},
"seed": {
"title": "Semilla",
"description": "Semilla aleatoria para la reproducibilidad. Use -1 para una semilla aleatoria en cada ejecución.",
"type": "integer",
"default": -1
}
}
}{
"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.