Skip to content
Stable Diffusion API

Stable Diffusion Inpainting API — Official Documentation

Stable Diffusion inpainting API documentation. Supply an init_image and mask_image to regenerate masked regions. Works with SD 1.5 inpainting, SDXL inpainting, and Flux Fill.

Stable Diffusion Inpainting API

The Stable Diffusion inpainting API regenerates a masked region of an image while keeping the rest intact — used for object removal, replacement, photo restoration, and fashion try-on. Send a POST request with init_image, mask_image, and a prompt describing what should appear in the masked area.

This is the official documentation for the inpaint endpoint on the Stable Diffusion API by ModelsLab. Compatible with SD 1.5 inpainting, SDXL inpainting variants, and Flux Fill models.


--request POST 'https://stablediffusionapi.com/api/v3/inpaint' \

Make a POST request to https://stablediffusionapi.com/api/v3/inpaint endpoint while passing appropriate request body. Below is a sample of the request body.

Click HERE to watch a how to video.

key : Your API Key
prompt : Your Prompt
samples : number of images you want in response
negative_prompt : Items you don’t want in the image
init_image : link of Initial Image
mask_image : link of mask image for inpainting
width : Width of output image. Maximum size is 1024x768 or 768x1024 because of memory limits
height : Height of output image. Maximum size is 1024x768 or 768x1024 because of memory limits
prompt_strength : Prompt strength when using init image. 1.0 corresponds to full destruction of information in init image
num_inference_steps : Number of denoising steps (minimum: 1; maximum: 50)
guidance_scale : Scale for classifier-free guidance (minimum: 1; maximum: 20)
enhance_prompt : Enhance prompts for better results, default : yes, option : yes/no
seed : Random seed. Leave blank to randomize the seed
webhook : webhook to call when image generation is completed
track_id : tracking id to track this api call

Request Body

Body Raw
{
 "key": "",
 "prompt": "a cat sitting on a bench",
 "negative_prompt": null,
 "init_image": "https://raw.githubusercontent.com/CompVis/stable-diffusion/main/data/inpainting_examples/overture-creations-5sI6fQgYIuo.png",
 "mask_image": "https://raw.githubusercontent.com/CompVis/stable-diffusion/main/data/inpainting_examples/overture-creations-5sI6fQgYIuo_mask.png",
 "width": "512",
 "height": "512",
 "samples": "1",
 "num_inference_steps": "30",
 "guidance_scale": 7.5,
 "safety_checker":"yes",
 "strength": 0.7,
 "seed": null,
 "webhook": null,
 "track_id": null
}
Example Response
{
 "status": "success",
 "generationTime": 2.920767068862915,
 "id": 302455,
 "output": [
     "https://d1okzptojspljx.cloudfront.net/generations/05c3260d-6a2e-4aa5-82f0-e952f2a5fa10-0.png"
 ],
 "meta": {
     "H": 512,
     "W": 512,
     "enable_attention_slicing": "true",
     "file_prefix": "05c3260d-6a2e-4aa5-82f0-e952f2a5fa10",
     "guidance_scale": 7.5,
     "model": "runwayml/stable-diffusion-v1-5",
     "n_samples": 1,
     "negative_prompt": "((out of frame)), ((extra fingers)), mutated hands, ((poorly drawn hands)), ((poorly drawn face)), (((mutation))), (((deformed))), (((tiling))), ((naked)), ((tile)), ((fleshpile)), ((ugly)), (((abstract))), blurry, ((bad anatomy)), ((bad proportions)), ((extra limbs)), cloned face, (((skinny))), glitchy, ((extra breasts)), ((double torso)), ((extra arms)), ((extra hands)), ((mangled fingers)), ((missing breasts)), (missing lips), ((ugly face)), ((fat)), ((extra legs)), anime",
     "outdir": "out",
     "prompt": "ultra realistic close up portrait ((beautiful pale cyberpunk female with heavy black eyeliner)), blue eyes, shaved side haircut, hyper detail, cinematic lighting, magic neon, dark red city, Canon EOS R3, nikon, f/1.4, ISO 200, 1/160s, 8K, RAW, unedited, symmetrical balance, in-frame, 8K",
     "revision": "fp16",
     "safety_checker": "none",
     "seed": 1793745243,
     "steps": 20,
     "vae": "stabilityai/sd-vae-ft-mse"
 }
}