Structure

This service excels in generating images by maintaining the structure of an input image, making it especially valuable for advanced content creation scenarios such as recreating scenes or rendering characters from models.

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/control/structurePOST

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

An image whose structure you wish to use as the foundation for a generation.

promptstringYes

[ 1 .. 10000 ] 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.

control_strengthnumberNo

[ 0 .. 1 ] How much influence, or control, the image has on the generation. Represented as a float between 0 and 1, where 0 is the least influence and 1 is the maximum.

negative_promptstringNo

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

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/control/structure",
    headers={
        "authorization": f"your-auth-token"
    },
    files={
        "image": open("./your-image.png", "rb")
    },
    data={
        "prompt": "your-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": {
        "image": "base64 encoded image data",
        "seed": 1050625087
      }
    }