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
soft-edge-detection
Vintage Synthesizer Catalog Cleanup Guide$0.0006~3s
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/ace1715c-d664-4c90-a40d-5f85043ae1d9.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/ace1715c-d664-4c90-a40d-5f85043ae1d9.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": "ec1b33f6-a82c-4baa-aab8-bc6fe413477b",
"model": "runware:controlnet-preprocess@softedge",
"inputs": {
"image": "https://assets.runware.ai/assets/inputs/ace1715c-d664-4c90-a40d-5f85043ae1d9.jpg"
}
}
]'runware run runware:controlnet-preprocess@softedge \
inputs.image=https://assets.runware.ai/assets/inputs/ace1715c-d664-4c90-a40d-5f85043ae1d9.jpg{
"taskType": "controlNetPreprocess",
"taskUUID": "ec1b33f6-a82c-4baa-aab8-bc6fe413477b",
"model": "runware:controlnet-preprocess@softedge",
"inputs": {
"image": "https://assets.runware.ai/assets/inputs/ace1715c-d664-4c90-a40d-5f85043ae1d9.jpg"
}
}Response
{
"taskType": "imageControlNetPreProcess",
"taskUUID": "ec1b33f6-a82c-4baa-aab8-bc6fe413477b",
"guideImageURL": "https://im.runware.ai/image/os/a02d21/ws/3/ii/ea785fb2-5f96-4568-ad64-9ce4ccbe282e.jpg",
"cost": 0.0006,
"guideImageUUID": "ea785fb2-5f96-4568-ad64-9ce4ccbe282e",
"inputImageUUID": "5c29412d-16a6-4271-a066-a58c3e701eb3"
}soft-edge-detection
Harbor Pilot Headshot Edge Guide$0.0006~4s
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/8cb8d284-70d1-46a5-a682-d3a77e5dab97.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/8cb8d284-70d1-46a5-a682-d3a77e5dab97.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": "4fb56e07-2c40-45a6-915e-eab905685abe",
"model": "runware:controlnet-preprocess@softedge",
"inputs": {
"image": "https://assets.runware.ai/assets/inputs/8cb8d284-70d1-46a5-a682-d3a77e5dab97.jpg"
}
}
]'runware run runware:controlnet-preprocess@softedge \
inputs.image=https://assets.runware.ai/assets/inputs/8cb8d284-70d1-46a5-a682-d3a77e5dab97.jpg{
"taskType": "controlNetPreprocess",
"taskUUID": "4fb56e07-2c40-45a6-915e-eab905685abe",
"model": "runware:controlnet-preprocess@softedge",
"inputs": {
"image": "https://assets.runware.ai/assets/inputs/8cb8d284-70d1-46a5-a682-d3a77e5dab97.jpg"
}
}Response
{
"taskType": "imageControlNetPreProcess",
"taskUUID": "4fb56e07-2c40-45a6-915e-eab905685abe",
"guideImageURL": "https://im.runware.ai/image/os/a03d21/ws/3/ii/1dfe2475-5b56-43de-a76e-28937b0207ca.jpg",
"cost": 0.0006,
"guideImageUUID": "1dfe2475-5b56-43de-a76e-28937b0207ca",
"inputImageUUID": "f6f5aece-4768-4fcc-93b3-745acb4663c3"
}soft-edge-detection
Espresso Machine Colorway Edge Guide$0.0006~4s
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/a3cf5f9b-2d12-4da2-bb3e-7485a1d8b7f6.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/a3cf5f9b-2d12-4da2-bb3e-7485a1d8b7f6.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": "9e73b552-47f4-4414-81d1-ab09b95d2ed1",
"model": "runware:controlnet-preprocess@softedge",
"inputs": {
"image": "https://assets.runware.ai/assets/inputs/a3cf5f9b-2d12-4da2-bb3e-7485a1d8b7f6.jpg"
}
}
]'runware run runware:controlnet-preprocess@softedge \
inputs.image=https://assets.runware.ai/assets/inputs/a3cf5f9b-2d12-4da2-bb3e-7485a1d8b7f6.jpg{
"taskType": "controlNetPreprocess",
"taskUUID": "9e73b552-47f4-4414-81d1-ab09b95d2ed1",
"model": "runware:controlnet-preprocess@softedge",
"inputs": {
"image": "https://assets.runware.ai/assets/inputs/a3cf5f9b-2d12-4da2-bb3e-7485a1d8b7f6.jpg"
}
}Response
{
"taskType": "imageControlNetPreProcess",
"taskUUID": "9e73b552-47f4-4414-81d1-ab09b95d2ed1",
"guideImageURL": "https://im.runware.ai/image/os/a05d22/ws/3/ii/f7ff03b5-5c91-45ff-925a-068ea31714b7.jpg",
"cost": 0.0006,
"guideImageUUID": "f7ff03b5-5c91-45ff-925a-068ea31714b7",
"inputImageUUID": "e1439521-25ae-4bdd-b077-884d8a8f099c"
}soft-edge-detection
Alpine Tram Heritage Lithograph$0.0006~4s
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/dac8c60e-bd4f-4c72-ae7a-84babd93fec9.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/dac8c60e-bd4f-4c72-ae7a-84babd93fec9.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": "b21163c1-1628-431a-8a43-9a36797190bb",
"model": "runware:controlnet-preprocess@softedge",
"inputs": {
"image": "https://assets.runware.ai/assets/inputs/dac8c60e-bd4f-4c72-ae7a-84babd93fec9.jpg"
}
}
]'runware run runware:controlnet-preprocess@softedge \
inputs.image=https://assets.runware.ai/assets/inputs/dac8c60e-bd4f-4c72-ae7a-84babd93fec9.jpg{
"taskType": "controlNetPreprocess",
"taskUUID": "b21163c1-1628-431a-8a43-9a36797190bb",
"model": "runware:controlnet-preprocess@softedge",
"inputs": {
"image": "https://assets.runware.ai/assets/inputs/dac8c60e-bd4f-4c72-ae7a-84babd93fec9.jpg"
}
}Response
{
"taskType": "imageControlNetPreProcess",
"taskUUID": "b21163c1-1628-431a-8a43-9a36797190bb",
"guideImageURL": "https://im.runware.ai/image/os/a01d21/ws/3/ii/dc15cc8d-f3c7-49d7-80f8-9761ccbfe949.jpg",
"cost": 0.0006,
"guideImageUUID": "dc15cc8d-f3c7-49d7-80f8-9761ccbfe949",
"inputImageUUID": "0893e3c0-6da5-4b9f-9c8c-160c348b281c"
}