stability-ai/sdxl-controlnet-union/inpainting
Sdxl Controlnet Union Inpainting by Stability AI - AI-powered image editing, style transfer, and transformation. Edit photos with natural language instructions, remove backgrounds, change styles, and enhance images effor...
PNG, JPEG, WebP, or GIF · 20 MiB maximum
PNG, JPEG, WebP, or GIF · 20 MiB maximum
PNG, JPEG, WebP, or GIF · 20 MiB maximum
PNG, JPEG, WebP, or GIF · 20 MiB maximum
PNG, JPEG, WebP, or GIF · 20 MiB maximum
PNG, JPEG, WebP, or GIF · 20 MiB maximum
PNG, JPEG, WebP, or GIF · 20 MiB maximum
PNG, JPEG, WebP, or GIF · 20 MiB maximum
Example output — click Run to generate your own
Send your first request
OpenAI-compatible endpoint with unified authentication and usage tracking.
https://api.sandbase.ai/v1/runstability-ai/sdxl-controlnet-union/inpaintingInput Schema
21 parameters · 2 required · 19 optional
| Parameter | Type | Required | Description |
|---|---|---|---|
image | string | Required | The URL of the image to use as a starting point for the generation. |
prompt | string | Required | The prompt to use for generating the image. Be as descriptive as possible for best results. |
mask | string | Optional | The URL of the mask to use for inpainting. |
seed | integer | Optional | The same seed and the same prompt given to the same version of Stable Diffusion will output the same image every time. · Default: null |
loras | array | Optional | Default: [] |
strength | number | Optional | determines how much the generated image resembles the initial image · Min: 0.01 · Max: 1 · Default: 0.95 |
aspect_ratio | string | Optional | The aspect ratio of the generated image. · Options: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16 21:916:93:24:35:41:14:53:42:39:16 |
guidance_scale | number | Optional | Min: 0 · Max: 20 · Default: 7.5 |
teed_image_url | string | Optional | The URL of the control image. · Default: null |
canny_image_url | string | Optional | The URL of the control image. · Default: null |
depth_image_url | string | Optional | The URL of the control image. · Default: null |
teed_preprocess | boolean | Optional | Whether to preprocess the teed image. · Default: true |
canny_preprocess | boolean | Optional | Whether to preprocess the canny image. · Default: true |
depth_preprocess | boolean | Optional | Whether to preprocess the depth image. · Default: true |
normal_image_url | string | Optional | The URL of the control image. · Default: null |
normal_preprocess | boolean | Optional | Whether to preprocess the normal image. · Default: true |
openpose_image_url | string | Optional | The URL of the control image. · Default: null |
num_inference_steps | integer | Optional | Min: 1 · Max: 70 · Default: 35 |
openpose_preprocess | boolean | Optional | Whether to preprocess the openpose image. · Default: true |
segmentation_image_url | string | Optional | The URL of the control image. · Default: null |
segmentation_preprocess | boolean | Optional | Whether to preprocess the segmentation image. · Default: true |
Output Schema
| Field | Type | Description |
|---|---|---|
id | string | Unique identifier for the generation task |
status | string | Task status: pending, running, completed, failed, timeout |
model | string | Model used for the generation |
outputs | array | Array of output items |
outputs[].url | string | URL of the generated artifact |
outputs[].content_type | string | MIME type (e.g. image/png, video/mp4) |
error | object | null | Error details if failed, null on success |
error.type | string | Machine-readable error type code |
error.message | string | Human-readable error description |
Async Workflow
This model uses asynchronous execution. Submit a request and poll for the result.
- Submit — POST to /v1/run, receive an
id - Poll — GET /v1/run/{id} until status is
completed,failed, ortimeout - Retrieve — Read
outputsfrom the completed response
Code Examples
Ready-to-run snippets
# Step 1: Submit
curl -X POST https://api.sandbase.ai/v1/run \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_KEY" \
-d '{
"model": "stability-ai/sdxl-controlnet-union/inpainting",
"mask": "https://static.sandbase.ai/examples/stability/sdxl-controlnet-union/inpainting/input_mask_6.png",
"seed": null,
"image": "https://raw.githubusercontent.com/CompVis/latent-diffusion/main/data/inpainting_examples/overture-creations-5sI6fQgYIuo.png",
"loras": [],
"prompt": "Ice fortress, aurora skies, polar wildlife, twilight",
"strength": 0.95,
"guidance_scale": 7.5,
"teed_image_url": "https://fal-cdn.batuhan-941.workers.dev/files/rabbit/MiN_j3St9B8esJleCZKMU.jpeg",
"canny_image_url": "https://fal-cdn.batuhan-941.workers.dev/files/rabbit/MiN_j3St9B8esJleCZKMU.jpeg",
"depth_image_url": "https://fal-cdn.batuhan-941.workers.dev/files/rabbit/MiN_j3St9B8esJleCZKMU.jpeg",
"teed_preprocess": true,
"canny_preprocess": true,
"depth_preprocess": true,
"normal_image_url": "https://fal-cdn.batuhan-941.workers.dev/files/rabbit/MiN_j3St9B8esJleCZKMU.jpeg",
"normal_preprocess": true,
"openpose_image_url": "https://fal-cdn.batuhan-941.workers.dev/files/rabbit/MiN_j3St9B8esJleCZKMU.jpeg",
"num_inference_steps": 35,
"openpose_preprocess": true,
"segmentation_image_url": "https://fal-cdn.batuhan-941.workers.dev/files/rabbit/MiN_j3St9B8esJleCZKMU.jpeg",
"segmentation_preprocess": true
}'
# Step 2: Poll result (replace <id>)
curl https://api.sandbase.ai/v1/run/<id> \
-H "Authorization: Bearer YOUR_API_KEY"API README
SDXL ControlNet Union
SDXL ControlNet Union occupies a clearly bounded position in a image production pipeline under the route stability-ai/sdxl-controlnet-union/inpainting. It is best evaluated as a named workflow endpoint rather than as a generic substitute for neighboring versions: planners can assign the route to a specific brief, record the chosen revision, and keep approval history tied to one predictable integration surface from intake through delivery.
A practical rollout of SDXL ControlNet Union should begin with source-readiness checks, ownership of the submitted material, an agreed budget, and a written definition of the final inpainting deliverable. Before automation is enabled, the acceptance pass should verify that the returned asset opens correctly, fits the intended downstream toolchain, satisfies the project’s review criteria, and can be reproduced from the stored request and route identity stability-ai/sdxl-controlnet-union/inpainting.
Highlights
- Distinct output behavior. For SDXL ControlNet Union, for SDXL ControlNet Union, provide any of the declared edge, depth, normal, pose, or segmentation references In SDXL ControlNet Union, this capability is applied through the exact stability-ai/sdxl-controlnet-union/inpainting workflow with mask as a relevant request control; the mask control exposes the corresponding choice in this route; the mask control exposes the corresponding choice in this route.
- Creative control. For SDXL ControlNet Union, for SDXL ControlNet Union, enable or disable preprocessing independently for every conditioning input In SDXL ControlNet Union, this capability is applied through the exact stability-ai/sdxl-controlnet-union/inpainting workflow with seed as a relevant request control; the seed control exposes the corresponding choice in this route; the seed control exposes the corresponding choice in this route.
- Workflow fit. For SDXL ControlNet Union, for SDXL ControlNet Union, combine a base image, mask, and union control references In SDXL ControlNet Union, this capability is applied through the exact stability-ai/sdxl-controlnet-union/inpainting workflow with image as a relevant request control; the image control exposes the corresponding choice in this route; the image control exposes the corresponding choice in this route.
- Production detail. For SDXL ControlNet Union, for SDXL ControlNet Union, set num_inference_steps between 1 and 70 In SDXL ControlNet Union, this capability is applied through the exact stability-ai/sdxl-controlnet-union/inpainting workflow with loras as a relevant request control; the loras control exposes the corresponding choice in this route; the loras control exposes the corresponding choice in this route.
Pricing
| Configuration | Price |
|---|---|
| Per request | $0.00125 |
When to Use
| Scenario | Why this model fits |
|---|---|
| Choose SDXL ControlNet Union | Use it when the required deliverable is specifically the image inpainting result documented for stability-ai/sdxl-controlnet-union/inpainting. |
| Match the source material | Select this route when your inputs naturally map to mask, seed, image, loras. |
| Use its distinguishing capability | For SDXL ControlNet Union, provide any of the declared edge, depth, normal, pose, or segmentation references In SDXL ControlNet Union, this capability is applied through the exact stability-ai/sdxl-controlnet-union/inpainting workflow with mask as a relevant request control; the mask control exposes the corresponding choice in this route |
| Plan repeatable production | For SDXL ControlNet Union, enable or disable preprocessing independently for every conditioning input In SDXL ControlNet Union, this capability is applied through the exact stability-ai/sdxl-controlnet-union/inpainting workflow with seed as a relevant request control; the seed control exposes the corresponding choice in this route |
| Confirm cost and delivery | Use the pricing combinations below and the output contract above when budgeting or automating SDXL ControlNet Union jobs. |
Prompt Guide
Build the request around the exact stability-ai/sdxl-controlnet-union/inpainting schema. Start with required fields, then add only the controls needed for the intended output; keep URLs reachable and enum values exactly as shown in Technical Specs.
{
"image": "https://raw.githubusercontent.com/CompVis/latent-diffusion/main/data/inpainting_examples/overture-creations-5sI6fQgYIuo.png",
"prompt": "Ice fortress, aurora skies, polar wildlife, twilight",
"mask": "https://static.sandbase.ai/examples/stability/sdxl-controlnet-union/inpainting/input_mask_6.png",
"seed": 0
}
Technical Specs
| Specification | Value |
|---|---|
| Model ID | stability-ai/sdxl-controlnet-union/inpainting |
| Execution mode | async |
| Required inputs | prompt, image |
| Request fields | mask (string, optional); seed (integer, optional); image (string, required); loras (array, optional); prompt (string, required); strength (number, optional, min 0.01, max 1); aspect_ratio (string, optional, options: 21:9 / 16:9 / 3:2 / 4:3 / 5:4 / 1:1 / 4:5 / 3:4 / 2:3 / 9:16); guidance_scale (number, optional, min 0, max 20); teed_image_url (string, optional); canny_image_url (string, optional); depth_image_url (string, optional); teed_preprocess (boolean, optional); canny_preprocess (boolean, optional); depth_preprocess (boolean, optional); normal_image_url (string, optional); normal_preprocess (boolean, optional); openpose_image_url (string, optional); num_inference_steps (integer, optional, min 1, max 70); openpose_preprocess (boolean, optional); segmentation_image_url (string, optional); segmentation_preprocess (boolean, optional) |
| Output | url (string); content_type (string) |

