Every garment,
on a model.
Dress a model in your product photo, keep the same face across every SKU, and swap the model without reshooting the outfit.


Virtual try-on from a product photo
Send the garment and the model you want to dress. The garment's cut, colour and fabric carry over onto the body.
{
"person_image": "https://cdn.brand.com/models/model-017.png",
"clothing_image": "https://cdn.brand.com/sku/tailored-blazer.png",
"gender": "woman",
"output_format": "webp",
"callback_url": "https://hooks.brand.com/lastshoot"
}

On-model shots from a face
Start from one face and describe the outfit, pose and backdrop. The output is a full styled shot of that person.
{
"input_face": "https://cdn.brand.com/models/face-01.png",
"prompt": "seated studio portrait, burgundy velvet suit, soft daylight",
"width": 768,
"height": 1024,
"output_format": "webp"
}

One model across the whole catalogue
Create a profile once, then lock the identity on every job. The same person appears in every scene and every SKU.
{
"input_image": "https://cdn.brand.com/models/face-02.png",
"prompt": "seated on a wooden block, burgundy shirt, khaki trousers, warm studio",
"profile_id": "prof_catalogue_m1",
"output_format": "webp"
}

Swap the model, keep the outfit
Replace the person in an existing shot while the garment, pose and lighting stay put. Show the same look on different models.
{
"input_image": "https://cdn.brand.com/looks/velvet-suit-01.png",
"prompt": "different model, dark skin, short natural hair, same outfit and pose",
"output_format": "webp"
}

One key. Async jobs.
Every call takes an X-API-Key header and returns a job_id. Poll the status endpoint, or pass a callback_url and get a webhook when the job completes or fails.
Try it on your own catalogue.
Bring a few product photos. We will run them through these endpoints with you.