AI Product Photo Editor

AI Product Photo Editor leverages advanced image-based ML techniques to generate high-quality product visuals using text prompts, product images, and background images.

~15.51s
~$0.022
 1import requests
 2import json
 3
 4url = "https://api.segmind.com/v1/ai-product-photo-editor"
 5headers = {
 6    "x-api-key": "YOUR_API_KEY",
 7    "Content-Type": "application/json"
 8}
 9
10data = {
11    "product_image": "https://segmind-sd-models.s3.amazonaws.com/display_images/ppv3-test/main-ip.jpeg",
12    "background_image": "https://segmind-sd-models.s3.amazonaws.com/display_images/ppv3-test/bg6.png",
13    "prompt": "photo of a mixer grinder in modern kitchen",
14    "negative_prompt": "illustration, bokeh, low resolution, bad anatomy, painting, drawing, cartoon, bad quality, low quality",
15    "num_inference_steps": 21,
16    "guidance_scale": 6,
17    "seed": 2566965,
18    "sampler": "dpmpp_3m_sde_gpu",
19    "scheduler": "karras",
20    "samples": 1,
21    "ipa_weight": 0.3,
22    "ipa_weight_type": "linear",
23    "ipa_start": 0,
24    "ipa_end": 0.5,
25    "ipa_embeds_scaling": "V only",
26    "cn_strenght": 0.85,
27    "cn_start": 0,
28    "cn_end": 0.8,
29    "dilation": 10,
30    "mask_threshold": 220,
31    "gaussblur_radius": 8,
32    "base64": false
33}
34
35response = requests.post(url, headers=headers, json=data)
36
37if response.status_code == 200:
38    result = response.json()
39    print(json.dumps(result, indent=2))
40else:
41    print(f"Error: {response.status_code}")
42    print(response.text)

API Endpoint

POSThttps://api.segmind.com/v1/ai-product-photo-editor

Parameters

background_imagerequired
string (uri)

Background Reference Image

Default: "https://segmind-sd-models.s3.amazonaws.com/display_images/ppv3-test/bg6.png"
num_inference_stepsrequired
integer

Number of steps to generate image

Default: 21Range: 20 - 100
product_imagerequired
string (uri)

Product Image

Default: "https://segmind-sd-models.s3.amazonaws.com/display_images/ppv3-test/main-ip.jpeg"
promptrequired
string

Prompt for image generation

Default: "photo of a mixer grinder in modern kitchen"
samplerrequired
string

Sampler

Default: "dpmpp_3m_sde_gpu"
Allowed values (27 total):
"euler""euler_pp""euler_ancestral""euler_ancestral_pp""heun""heunpp2""dpm_2""dpm_2_ancestral""lms""dpm_fast"+17 more
base64optional
boolean

Output as base64

Default: false
cn_endoptional
number

ControlNet end value

Default: 0.8Range: 0 - 1
cn_startoptional
number

ControlNet start value

Default: 0Range: 0 - 1
cn_strenghtoptional
number

ControlNet strength

Default: 0.85Range: 0 - 2
dilationoptional
integer

Dilation value

Default: 10Range: -100 - 100
gaussblur_radiusoptional
integer

Gaussian blur radius

Default: 8Range: 0 - 20
guidance_scaleoptional
number

Scale for classifier-free guidance

Default: 6Range: 0 - 10
ipa_embeds_scalingoptional
string

IP Adapter embedding scaling

Default: "V only"
Allowed values :
"V only""K+V""K+V w/ C penalty""K+mean(V) w/ C penalty"
ipa_endoptional
number

IP Adapter end value

Default: 0.5Range: 0 - 1
ipa_startoptional
number

IP Adapter start value

Default: 0Range: 0 - 1
ipa_weightoptional
number

IP Adapter weight

Default: 0.3Range: 0 - 2
ipa_weight_typeoptional
string

Type of IP Adapter weight

Default: "linear"
Allowed values (14 total):
"linear""ease in""ease out""ease in-out""reverse in-out""weak input""weak output""weak middle""strong middle""style transfer"+4 more
mask_thresholdoptional
integer

Mask threshold value

Default: 220Range: 0 - 255
negative_promptoptional
string

Negative prompt

Default: "illustration, bokeh, low resolution, bad anatomy, painting, drawing, cartoon, bad quality, low quality"
samplesoptional
integer

Number of samples to generate

Default: 1
scheduleroptional
string

Scheduler

Default: "karras"
Allowed values :
"normal""karras""exponential""sgm_uniform""simple""ddim_uniform"
seedoptional
integer

Seed number for image generation

Default: 2566965

Response Type

Returns: Image

Common Error Codes

The API returns standard HTTP status codes. Detailed error messages are provided in the response body.

400

Bad Request

Invalid parameters or request format

401

Unauthorized

Missing or invalid API key

403

Forbidden

Insufficient permissions

404

Not Found

Model or endpoint not found

406

Insufficient Credits

Not enough credits to process request

429

Rate Limited

Too many requests

500

Server Error

Internal server error

502

Bad Gateway

Service temporarily unavailable

504

Timeout

Request timed out