Skip to main content

Dreambooth Image to Image Endpoint

Overview

Dreambooth Image to Image API is used to generate an image from an image. Pass the appropriate request parameters to the endpoint to generate image from an image.

This endpoint generates and returns an image from an image passed with its URL in the request.

Together with the image you can add your description of the desired result by passing prompt and negative prompt.

Image to image endpoint result

Request

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

Make a POST request to https://stablediffusionapi.com/api/v3/dreambooth/img2img endpoint and pass the required parameters as a request body to the endpoint.

Watch the how-to video to see it in action.

Body Attributes

ParameterDescription
keyYour API Key used for request authorization
model_idThe ID of the model to be used. It can be public or your trained model.
promptText prompt with description of the things you want in the image to be generated
negative_promptItems you don't want in the image
init_imageLink to the Initial Image
widthMax Height: Width: 1024x1024
heightMax Height: Width: 1024x1024
samplesNumber of images to be returned in response. The maximum value is 4.
num_inference_stepsNumber of denoising steps (minimum: 1; maximum: 50)
safety_checkerA checker for NSFW images. If such an image is detected, it will be replaced by a blank image.
enhance_promptEnhance prompts for better results; default: yes, options: yes/no
guidance_scaleScale for classifier-free guidance (minimum: 1; maximum: 20)
strengthPrompt strength when using init image. 1.0 corresponds to full destruction of information in the init image.
seedSeed is used to reproduce results, same seed will give you same image in return again. Pass null for a random number.
schedulerUse it to set a scheduler.
webhookSet an URL to get a POST API call once the image generation is complete.
track_idThis ID is returned in the response to the webhook API call. This will be used to identify the webhook request.

Schedulers

This endpoint also supports schedulers. Use the "scheduler" parameter in the request body to pass a specific scheduler from the list below:

  • DDPMScheduler
  • DDIMScheduler
  • PNDMScheduler
  • LMSDiscreteScheduler
  • EulerDiscreteScheduler
  • EulerAncestralDiscreteScheduler
  • DPMSolverMultistepScheduler
  • HeunDiscreteScheduler
  • KDPM2DiscreteScheduler
  • DPMSolverSinglestepScheduler
  • KDPM2AncestralDiscreteScheduler
  • UniPCMultistepScheduler
  • DDIMInverseScheduler
  • DEISMultistepScheduler
  • IPNDMScheduler
  • KarrasVeScheduler
  • ScoreSdeVeScheduler
  • LCMScheduler

Example

Body

Body
{
"key": "",
"model_id": "your_model_id",
"prompt": "papercraft, quilling, layers, landscape",
"negative_prompt": null,
"init_image": "https://pub-8b49af329fae499aa563997f5d4068a4.r2.dev/generations/d8cd0add-8cd7-40a4-802b-7b80be45a14c-0.png",
"width": "512",
"height": "512",
"samples": "1",
"num_inference_steps": "30",
"safety_checker": "yes",
"enhance_prompt": "yes",
"guidance_scale": 7.5,
"strength": 0.7,
"scheduler": "UniPCMultistepScheduler",
"seed": null,
"webhook": null,
"track_id": null
}

Request

var myHeaders = new Headers();
myHeaders.append("Content-Type", "application/json");

var raw = JSON.stringify({
"key": "",
"model_id": "your_model_id",
"prompt": "papercraft, quilling, layers, landscape",
"negative_prompt": null,
"init_image": "https://pub-8b49af329fae499aa563997f5d4068a4.r2.dev/generations/d8cd0add-8cd7-40a4-802b-7b80be45a14c-0.png",
"width": "512",
"height": "512",
"samples": "1",
"num_inference_steps": "30",
"safety_checker": "yes",
"enhance_prompt": "yes",
"guidance_scale": 7.5,
"strength": 0.7,
"scheduler": "UniPCMultistepScheduler",
"seed": null,
"webhook": null,
"track_id": null
});

var requestOptions = {
method: 'POST',
headers: myHeaders,
body: raw,
redirect: 'follow'
};

fetch("https://stablediffusionapi.com/api/v3/dreambooth/img2img", requestOptions)
.then(response => response.text())
.then(result => console.log(result))
.catch(error => console.log('error', error));

Response

{
"status": "success",
"generationTime": 2.5262653827667236,
"id": 12631244,
"output": [
"https://pub-8b49af329fae499aa563997f5d4068a4.r2.dev/generations/799898a5-9888-4e8a-bd05-4dcfcb690aac-0.png"
],
"meta": {
"H": 512,
"W": 512,
"file_prefix": "799898a5-9888-4e8a-bd05-4dcfcb690aac",
"full_url": "no",
"guidance_scale": 7.5,
"init_image": "https://pub-8b49af329fae499aa563997f5d4068a4.r2.dev/generations/d8cd0add-8cd7-40a4-802b-7b80be45a14c-0.png",
"model_id": "midjourney-papercut",
"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, glitchy, ((extra breasts)), ((double torso)), ((extra arms)), ((extra hands)), ((mangled fingers)), ((missing breasts)), (missing lips), ((ugly face)), ((fat)), ((extra legs))",
"outdir": "out",
"prompt": "mdjrny-pprct papercraft, quilling, layers, landscape DSLR photography, sharp focus, Unreal Engine 5, Octane Render, Redshift, ((cinematic lighting)), f/1.4, ISO 200, 1/160s, 8K, RAW, unedited, symmetrical balance, in-frame",
"safetychecker": "yes",
"scheduler": "UniPCMultistepScheduler",
"seed": 1591256096,
"steps": 20,
"strength": 0.7,
"upscale": "no"
}
}