Stable Diffusion Img2Img API — Image-to-Image Documentation
Stable Diffusion image-to-image (img2img) API documentation. POST init_image + prompt to transform photos with SD 1.5, SDXL, or Flux. Code samples in cURL, Python, Node.
Stable Diffusion Image-to-Image (Img2Img) API
The Stable Diffusion img2img API transforms an existing image with a text prompt — useful for style transfer, photo restoration, sketch-to-render, and controlled variations. Send a POST request with init_image, prompt, and a strength value; the endpoint returns the generated image URL.
This is the official documentation for the img2img endpoint on the Stable Diffusion API by ModelsLab. Works with Stable Diffusion 1.5, SDXL, Flux, and any of the 1,000+ supported community models.
--request POST 'https://stablediffusionapi.com/api/v3/img2img' \
Make a POST request to https://stablediffusionapi.com/api/v3/img2img endpoint and pass the required parameters as request body. Below is the description 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 and Response Example
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",
"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"
}
}