Skip to main content
POST
/
api
/
image
/
editing
/
ai-image-extender
AI Image Extender
curl --request POST \
  --url https://www.ailabapi.com/api/image/editing/ai-image-extender \
  --header 'Content-Type: multipart/form-data' \
  --header 'ailabapi-api-key: <api-key>' \
  --form steps=30 \
  --form strength=0.8 \
  --form scale=7 \
  --form seed=0 \
  --form top=0.1 \
  --form bottom=0.1 \
  --form left=0.1 \
  --form right=0.1 \
  --form max_height=1920 \
  --form max_width=1920 \
  --form image=@example-file \
  --form mask=@example-file
{
"request_id": "",
"log_id": "",
"error_code": 0,
"error_code_str": "",
"error_msg": "",
"error_detail": {
"status_code": 200,
"code": "",
"code_message": "",
"message": ""
},
"data": {
"binary_data_base64": []
}
}

Request

  • URL: https://www.ailabapi.com/api/image/editing/ai-image-extender
  • Method: POST
  • Content-Type: multipart/form-data

Image requirements

  • Image format: JPEG JPG PNG
  • Image size: No more than 5 MB.
  • Image resolution: Larger than 64x64px, smaller than 4096x4096px.

Headers

FieldRequiredTypeDescription
ailabapi-api-keyYESstringApplication API KEY. Get API KEY

Body

Fixed Fields

FieldRequiredTypeScopeDefaultDescription
custom_promptNOstringPrompt Content (English only). Please limit the prompt content to 100 English words or fewer. Any content beyond this limit may have minimal impact on the generated result. Use standard vocabulary to avoid failing the review process.
stepsNOinteger[1, +]30Sampling steps determine the level of detail in the generated image. A higher value may result in better quality, but it will significantly increase the processing time.
strengthNOfloat[0.1, 1.0]0.8The smaller the value, the closer it is to the original image.
scaleNOfloat[1, 20]7The degree to which the text description influences the output.
seedNOinteger[-1, +]0Random seed, used as the basis for determining the initial state of the diffusion process. It must be a non-negative number (-1 represents a random seed). If the random seed is the same positive integer and all other parameters are identical, the generated image will most likely be consistent.
max_heightNOinteger[0, +]1920Maximum output height. Resized to the specified dimensions as a fallback after the image expansion process.
max_widthNOinteger[0, +]1920Maximum output width. Resized to the specified dimensions as a fallback after the image expansion process.

Non-Mask Expanded Image

FieldRequiredTypeScopeDefaultExampleDescription
imageYESfileOriginal ImageOriginal image.
topNOfloat[0, 1.0]0.1Upward expansion ratio.
bottomNOfloat[0, 1.0]0.1Downward expansion ratio.
leftNOfloat[0, 1.0]0.1Leftward expansion ratio.
rightNOfloat[0, 1.0]0.1Rightward expansion ratio.

Mask Expanded Image

FieldRequiredTypeExampleDescription
imageYESfileOriginal ImageOriginal image.
maskYESfileMask ImageMask image.

Response

Response Field Handling Flow
  1. Handle Public Response Fields Parse and validate the Public Response Fields, checking the status code or response message to ensure the request is successful and error-free.
  2. Handle Business Response Fields If the Public Response Fields are valid and error-free, proceed with processing the business logic in the Business Response Fields.

Public Response Fields

Viewing Public Response Fields and Error Codes

Business Response Fields

FieldTypeDescription
dataobjectThe content of the result data returned.
+binary_data_base64array of stringOutput the processed image as a Base64 array (single image).

Response Example

{
  "request_id":     "",
  "log_id":         "",
  "error_code":     0,
  "error_msg":      "",
  "error_detail":   {
    "status_code":  200,
    "code":         "",
    "code_message": "",
    "message":      ""
  },
  "data":           {
    "binary_data_base64": []
  }
}

Sample Code

Authorizations

ailabapi-api-key
string
header
required

API Key for authentication

Body

multipart/form-data
image
file

Original image.

mask
file

Mask image.

steps
integer

Sampling steps determine the level of detail in the generated image. A higher value may result in better quality, but it will significantly increase the processing time.

Example:

"30"

strength
number

The smaller the value, the closer it is to the original image.

Example:

"0.8"

scale
integer

The degree to which the text description influences the output.

Example:

"7"

seed
integer

Random seed, used as the basis for determining the initial state of the diffusion process. It must be a non-negative number (-1 represents a random seed). If the random seed is the same positive integer and all other parameters are identical, the generated image will most likely be consistent.

Example:

"0"

top
number

Upward expansion ratio.

Example:

"0.1"

bottom
number

Downward expansion ratio.

Example:

"0.1"

left
number

Leftward expansion ratio.

Example:

"0.1"

right
number

Rightward expansion ratio.

Example:

"0.1"

max_height
integer

Maximum output height. Resized to the specified dimensions as a fallback after the image expansion process.

Example:

"1920"

max_width
integer

Maximum output width. Resized to the specified dimensions as a fallback after the image expansion process.

Example:

"1920"

Response

200 - application/json

Success

The response is of type object.