ControlNet Preprocess SoftEdge
ControlNet Preprocess SoftEdge extracts smoother, more organic edge structure from an input image for ControlNet conditioning. It is useful when the goal is to preserve contours and layout without the harsh binary boundaries of Canny, especially for painterly, naturalistic, or softer illustration workflows.

API Reference
INTEGRATE
Complete technical specification for integration
RequestResponse
Examples4
CODE
Ready-to-use code snippets for common workflows
Tidepool Shell Arrangement Study

import { createClient } from '@runware/sdk'
const client = await createClient({ apiKey: process.env.RUNWARE_API_KEY })
await client.connect()
const [result] = await client.run({
model: 'runware:controlnet-preprocess@softedge',
inputs: {
image: 'https://assets.runware.ai/assets/inputs/d3f277b7-78af-469d-a609-8bfb927bc7d8.jpg'
}
})import asyncio
import os
from runware import Runware
async def main():
async with Runware(api_key=os.environ["RUNWARE_API_KEY"]) as client:
results = await client.run({
"model": "runware:controlnet-preprocess@softedge",
"inputs": {
"image": "https://assets.runware.ai/assets/inputs/d3f277b7-78af-469d-a609-8bfb927bc7d8.jpg"
}
})
asyncio.run(main())curl https://api.runware.ai/v1 \
-H "Authorization: Bearer $RUNWARE_API_KEY" \
-H "Content-Type: application/json" \
-d '[
{
"taskType": "controlNetPreprocess",
"taskUUID": "7520ee24-f756-4686-a705-b9217ebadbf4",
"model": "runware:controlnet-preprocess@softedge",
"inputs": {
"image": "https://assets.runware.ai/assets/inputs/d3f277b7-78af-469d-a609-8bfb927bc7d8.jpg"
}
}
]'runware run runware:controlnet-preprocess@softedge \
inputs.image=https://assets.runware.ai/assets/inputs/d3f277b7-78af-469d-a609-8bfb927bc7d8.jpg{
"taskType": "controlNetPreprocess",
"taskUUID": "7520ee24-f756-4686-a705-b9217ebadbf4",
"model": "runware:controlnet-preprocess@softedge",
"inputs": {
"image": "https://assets.runware.ai/assets/inputs/d3f277b7-78af-469d-a609-8bfb927bc7d8.jpg"
}
}{
"taskType": "imageControlNetPreProcess",
"taskUUID": "7520ee24-f756-4686-a705-b9217ebadbf4",
"guideImageURL": "https://im.runware.ai/image/os/a05d22/ws/3/ii/0999dbd7-ea93-4337-9f9c-f568abc97f08.jpg",
"cost": 0.0006,
"guideImageUUID": "0999dbd7-ea93-4337-9f9c-f568abc97f08",
"inputImageUUID": "68b0f2c6-b0ee-42db-87bb-6602f9d686a1"
}Velvet Moth Specimen Arrangement

import { createClient } from '@runware/sdk'
const client = await createClient({ apiKey: process.env.RUNWARE_API_KEY })
await client.connect()
const [result] = await client.run({
model: 'runware:controlnet-preprocess@softedge',
inputs: {
image: 'https://assets.runware.ai/assets/inputs/e8a55df8-04d7-440c-90a2-f99b06625483.jpg'
}
})import asyncio
import os
from runware import Runware
async def main():
async with Runware(api_key=os.environ["RUNWARE_API_KEY"]) as client:
results = await client.run({
"model": "runware:controlnet-preprocess@softedge",
"inputs": {
"image": "https://assets.runware.ai/assets/inputs/e8a55df8-04d7-440c-90a2-f99b06625483.jpg"
}
})
asyncio.run(main())curl https://api.runware.ai/v1 \
-H "Authorization: Bearer $RUNWARE_API_KEY" \
-H "Content-Type: application/json" \
-d '[
{
"taskType": "controlNetPreprocess",
"taskUUID": "cca67287-0cb0-49b9-806e-e758f6645c66",
"model": "runware:controlnet-preprocess@softedge",
"inputs": {
"image": "https://assets.runware.ai/assets/inputs/e8a55df8-04d7-440c-90a2-f99b06625483.jpg"
}
}
]'runware run runware:controlnet-preprocess@softedge \
inputs.image=https://assets.runware.ai/assets/inputs/e8a55df8-04d7-440c-90a2-f99b06625483.jpg{
"taskType": "controlNetPreprocess",
"taskUUID": "cca67287-0cb0-49b9-806e-e758f6645c66",
"model": "runware:controlnet-preprocess@softedge",
"inputs": {
"image": "https://assets.runware.ai/assets/inputs/e8a55df8-04d7-440c-90a2-f99b06625483.jpg"
}
}{
"taskType": "imageControlNetPreProcess",
"taskUUID": "cca67287-0cb0-49b9-806e-e758f6645c66",
"guideImageURL": "https://im.runware.ai/image/os/a07dlim3/ws/3/ii/8c797a2e-375c-43f3-8cdb-089ae8a10e6d.jpg",
"cost": 0.0006,
"guideImageUUID": "8c797a2e-375c-43f3-8cdb-089ae8a10e6d",
"inputImageUUID": "3d45ba91-1772-405d-9f56-5a0af6bdfbee"
}Origami Heron Paper Diorama

import { createClient } from '@runware/sdk'
const client = await createClient({ apiKey: process.env.RUNWARE_API_KEY })
await client.connect()
const [result] = await client.run({
model: 'runware:controlnet-preprocess@softedge',
inputs: {
image: 'https://assets.runware.ai/assets/inputs/3031f736-ac70-4253-9846-6734cd480939.jpg'
}
})import asyncio
import os
from runware import Runware
async def main():
async with Runware(api_key=os.environ["RUNWARE_API_KEY"]) as client:
results = await client.run({
"model": "runware:controlnet-preprocess@softedge",
"inputs": {
"image": "https://assets.runware.ai/assets/inputs/3031f736-ac70-4253-9846-6734cd480939.jpg"
}
})
asyncio.run(main())curl https://api.runware.ai/v1 \
-H "Authorization: Bearer $RUNWARE_API_KEY" \
-H "Content-Type: application/json" \
-d '[
{
"taskType": "controlNetPreprocess",
"taskUUID": "a3efddd2-d856-4fa6-b55d-1dd1fb326a9b",
"model": "runware:controlnet-preprocess@softedge",
"inputs": {
"image": "https://assets.runware.ai/assets/inputs/3031f736-ac70-4253-9846-6734cd480939.jpg"
}
}
]'runware run runware:controlnet-preprocess@softedge \
inputs.image=https://assets.runware.ai/assets/inputs/3031f736-ac70-4253-9846-6734cd480939.jpg{
"taskType": "controlNetPreprocess",
"taskUUID": "a3efddd2-d856-4fa6-b55d-1dd1fb326a9b",
"model": "runware:controlnet-preprocess@softedge",
"inputs": {
"image": "https://assets.runware.ai/assets/inputs/3031f736-ac70-4253-9846-6734cd480939.jpg"
}
}{
"taskType": "imageControlNetPreProcess",
"taskUUID": "a3efddd2-d856-4fa6-b55d-1dd1fb326a9b",
"guideImageURL": "https://im.runware.ai/image/os/a09dlim3/ws/3/ii/a0b55567-4442-4208-aef5-1bcd0e413983.jpg",
"cost": 0.0006,
"guideImageUUID": "a0b55567-4442-4208-aef5-1bcd0e413983",
"inputImageUUID": "6701ab86-9aab-44ad-b540-34a1c463beb8"
}Moss Courtyard Cellist Silhouette

import { createClient } from '@runware/sdk'
const client = await createClient({ apiKey: process.env.RUNWARE_API_KEY })
await client.connect()
const [result] = await client.run({
model: 'runware:controlnet-preprocess@softedge',
inputs: {
image: 'https://assets.runware.ai/assets/inputs/eed8f734-892d-47c4-82b9-e9b3b676ff38.jpg'
}
})import asyncio
import os
from runware import Runware
async def main():
async with Runware(api_key=os.environ["RUNWARE_API_KEY"]) as client:
results = await client.run({
"model": "runware:controlnet-preprocess@softedge",
"inputs": {
"image": "https://assets.runware.ai/assets/inputs/eed8f734-892d-47c4-82b9-e9b3b676ff38.jpg"
}
})
asyncio.run(main())curl https://api.runware.ai/v1 \
-H "Authorization: Bearer $RUNWARE_API_KEY" \
-H "Content-Type: application/json" \
-d '[
{
"taskType": "controlNetPreprocess",
"taskUUID": "ad4b7a3f-04f5-4392-b64d-5c4ad16e3fd0",
"model": "runware:controlnet-preprocess@softedge",
"inputs": {
"image": "https://assets.runware.ai/assets/inputs/eed8f734-892d-47c4-82b9-e9b3b676ff38.jpg"
}
}
]'runware run runware:controlnet-preprocess@softedge \
inputs.image=https://assets.runware.ai/assets/inputs/eed8f734-892d-47c4-82b9-e9b3b676ff38.jpg{
"taskType": "controlNetPreprocess",
"taskUUID": "ad4b7a3f-04f5-4392-b64d-5c4ad16e3fd0",
"model": "runware:controlnet-preprocess@softedge",
"inputs": {
"image": "https://assets.runware.ai/assets/inputs/eed8f734-892d-47c4-82b9-e9b3b676ff38.jpg"
}
}{
"taskType": "imageControlNetPreProcess",
"taskUUID": "ad4b7a3f-04f5-4392-b64d-5c4ad16e3fd0",
"guideImageURL": "https://im.runware.ai/image/os/a09dlim3/ws/3/ii/953dc3c1-2b85-4306-805e-ef6b95477ba7.jpg",
"cost": 0.0006,
"guideImageUUID": "953dc3c1-2b85-4306-805e-ef6b95477ba7",
"inputImageUUID": "d2039547-39f7-45b8-971e-8314a08dc974"
}