> ## Documentation Index
> Fetch the complete documentation index at: https://docs.modelslab.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Inpainting

> This endpoint is used to inpaint some part of an image according to specific requirements, based on trained or on public models.

## Request

Make a `POST` request to below endpoint and pass the required parameters as a request body.

```curl curl  theme={null}
--request POST 'https://modelslab.com/api/v1/enterprise/pony/inpaint' \
```

<Info>
  To use the **load balancer**, you need to have **more than 1 server**. Pass the first server's API key, and it will handle the load balancing with the other servers.
</Info>

## Body

```json json theme={null}
{  
  "key": "enterprise_api_key",  
  "model_id": "your_model_id",  
  "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",  
  "safety_checker": "no",   
  "guidance_scale": 7.5,  
  "strength": 0.7,  
  "scheduler": "PNDMScheduler",  
  "seed": null,  
  "lora_model": null,  
  "tomesd": "yes",  
  "use_karras_sigmas": "yes",  
  "vae": null,  
  "lora_strength": null,  
  "webhook": null,  
  "track_id": null
}
```

## Schedulers

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

* EulerDiscreteScheduler
* EulerAncestralDiscreteScheduler
* LMSDiscreteScheduler
* HeunDiscreteScheduler
* KDPM2DiscreteScheduler
* KDPM2AncestralDiscreteScheduler
* DPMSolverMultistepScheduler
* DPMSolverSinglestepScheduler
* DDIMScheduler
* DDPMScheduler
* PNDMScheduler
* UniPCMultistepScheduler
* DEISMultistepScheduler
* LCMScheduler
* IPNDMScheduler

## Body Attributes

| Parameter                 | Description                                                                                                                                               |
| :------------------------ | :-------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **key**                   | Your enterprise API Key used for request authorization                                                                                                    |
| **model\_id**             | The ID of the model to be used. It can be public or your trained model.                                                                                   |
| **prompt**                | Text prompt with description of the things you want in the image to be generated                                                                          |
| **negative\_prompt**      | Items you don't want in the image                                                                                                                         |
| **init\_image**           | Link to the Initial Image                                                                                                                                 |
| **mask\_image**           | Link to the mask image for inpainting                                                                                                                     |
| **width**                 | Max Height: Width: 1024x1024                                                                                                                              |
| **height**                | Max Height: Width: 1024x1024                                                                                                                              |
| **samples**               | Number of images to be returned in response. The maximum value is 4.                                                                                      |
| **num\_inference\_steps** | Number of denoising steps, The value accepts 21,31,41.                                                                                                    |
| **safety\_checker**       | A checker for NSFW images. If such an image is detected, it will be replaced by a blank image; default: yes, options: yes/no                              |
| **safety\_checker\_type** | Modify image if NSFW images are found; **default**: sensitive\_content\_text, **options**: blur/sensitive\_content\_text/pixelate/black                   |
| **enhance\_prompt**       | Enhance prompts for better results; **default**: yes, **options**: yes/no                                                                                 |
| **guidance\_scale**       | Scale for classifier-free guidance (minimum: 1; maximum: 20)                                                                                              |
| **strength**              | Prompt strength when using **init** image. 1.0 corresponds to full destruction of information in the init image.                                          |
| **tomesd**                | Enable tomesd to generate images: gives really fast results, **default**: yes, **options**: yes/no                                                        |
| **use\_karras\_sigmas**   | Use keras sigmas to generate images. gives nice results, **default**: yes, **options**: yes/no                                                            |
| **algorithm\_type**       | Used in DPMSolverMultistepScheduler scheduler, **default**: none, **options**: dpmsolver+++                                                               |
| **vae**                   | Use custom vae in generating images **default**: null                                                                                                     |
| **lora\_strength**        | Specify the strength of the LoRa model you're using. If using multiple LoRa, provide each value as a comma-separated range from minimum 0.1 to maximum 1. |
| **lora\_model**           | Multi lora is supported, pass comma saparated values . Example contrast-fix,yae-miko-genshin                                                              |
| **scheduler**             | Use it to set a [scheduler](#schedulers).                                                                                                                 |
| **seed**                  | Seed is used to reproduce results, same seed will give you same image in return again. Pass *null* for a random number.                                   |
| **webhook**               | Set an URL to get a POST API call once the image generation is complete.                                                                                  |
| **track\_id**             | This ID is returned in the response to the webhook API call. This will be used to identify the webhook request.                                           |
| **clip\_skip**            | Clip Skip (minimum: 1; maximum: 8)                                                                                                                        |
| **base64**                | Get response as base64 string, pass init\_image, mask\_image as base64 string, to get base64 response. **default**: "no", **options**: yes/no             |
| **temp**                  | Create temp image link. This link is valid for 24 hours. **temp**: yes, **options**: yes/no                                                               |
