Skip to main content
POST
https://aigenstudio.app/api/v1
/
product-photo-jobs
curl --request POST \ --url https://aigenstudio.app/api/v1/product-photo-jobs \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --header 'Idempotency-Key: <idempotency-key>' \ --data ' { "images": [ { "source_url": "https://client.example/images/yogurt-001.jpg", "external_id": "yogurt-001" } ] } '
{
  "job": {
    "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
    "total_items": 2,
    "credits_reserved": 1,
    "sandbox": true
  },
  "remaining_paid_credits": 1,
  "request_id": "<string>"
}

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Headers

Idempotency-Key
string
required

Stable key for safely retrying one logical create request.

Required string length: 8 - 160
X-Request-Id
string

Optional client correlation id. AI Gen Studio also returns request_id.

Maximum string length: 160

Body

application/json
images
object[]
required
Required array length: 1 - 20 elements
operation
enum<string>
Available options:
product_photo_enhance,
remove_background,
studio_packshot,
marketplace_clean,
natural_lifestyle,
premium_ad
preset
string

Preset id returned by GET /product-photo-presets.

preservation_level
enum<string>
default:strict
Available options:
strict,
balanced,
creative
instructions
string
Required string length: 1 - 4000
webhook_url
string<uri>
Maximum string length: 2048

Response

Existing idempotent Product Photo job returned.

job
object
required
remaining_paid_credits
integer
required
Required range: x >= 0
request_id
string
required