Inpaint

Intelligently modify images by filling in or replacing specified areas with new content based on the content of a 'mask' image.

Credits

The service uses 6 credits per successful result. You will not be charged for failed results.

Example Request and Response

API Documentation

API EndpointMethod
/api/edit/inpaintPOST

Request Header

ParameterDescription
AuthenticationUse your API key to authentication requests to this App.

Request Body

The request should include a JSON object in the body with the following parameters:

ParameterTypeRequiredDescription
imagestring <binary>Yes

The image you wish to inpaint.Supported Formats:jpeg、png、webp

promptstringYes

What you wish to see in the output image. A strong, descriptive prompt that clearly defines elements, colors, and subjects will lead to better results.

negative_promptstringNo

A blurb of text describing what you do not wish to see in the output image.This is an advanced feature.

maskstring <binary>No

Controls the strength of the inpainting process on a per-pixel basis, either via a second image (passed into this parameter) or via the alpha channel of the image parameter.

seednumberNo

[ 0 .. 4294967294 ], A specific value that is used to guide the 'randomness' of the generation. (Omit this parameter or pass 0 to use a random seed.)

output_formatstringNo

Enum: jpeg png webp

Response Body

The response should include a JSON object in the body with the following parameters:

ParameterTypeDescription
codeintStatus Code, 0 for success callback, -1 for failure callback
messagestringCallback message, 'success' for success, failure reason for failure
dataobjectImage Details

Image Details

ParameterTypeDescription
imagestringReturn the base64 encoded image of the generated picture.
seedintThe seed used as random noise for this generation.

Example Request

import requests

response = requests.post(
    f"https://www.aithriving.com/api/edit/inpaint",
    headers={
        "authorization": f"your-auth-token"
    },
    files={
        "image": open("./your-image.png", "rb"),
        "mask": open("./your-mask.png", "rb"),
    },
    data={
        "prompt": "your-prompt",
        "negative_prompt": "your-negative-prompt",
        "output_format": "webp",
    },
)

if response.status_code == 200:
    data = response.json()
    if data['code'] == 0:
        // image: data['data']['image']
    else:
        // error
else:
    raise Exception(str(response.json()))

Example Response

{
  "code": 0,
  "message": "success",
  "data": "base64 encoded image data"
}