FASHN Try-On v1.6 API
https://api.hiapi.ai /v1/tasks Image, video, and audio models are called through theUnified Async API POST /v1/tasks endpoint; only the input fields differ (see input parameters below).
Model summary
| Model name | fashn-tryon-v1.6 |
|---|---|
| Type | Virtual try-on (image-to-image) |
| Endpoint | POST /v1/tasks |
| Pricing | See HiAPI Pricing |
FASHN Try-On v1.6: upload one person photo and one garment image to generate a natural on-body try-on result, supporting tops, bottoms and one-pieces with no prompt.
Production guidance
- For production, pass callback.url at the top level of the request body so HiAPI can notify your service when the task reaches a terminal state.
- GET /v1/tasks/:id is better for local debugging, low-volume jobs, or fallback reconciliation if a callback is missed.
- Result URLs expire — copy the output to your own storage once the task succeeds.
Best suited for
Turn flat-lay or hanging product shots into on-model try-ons and avoid another photoshoot.
model_imagegarment_imagecategoryTry many garments on the same person photo and batch-produce outfit previews.
model_imagegarment_imageseedPick the garment category or let auto detection handle mixed catalogs.
categorygarment_photo_typeRequest parameters
model string required Fixed value fashn-tryon-v1.6.
input object required Business parameters.
model_image string required Public http(s) URL of the person photo. A front-facing, single-person photo with the body clearly visible works best.
garment_image string required Public http(s) URL of the garment photo. Flat-lay, hanging and on-model product shots all work.
category enum optional Garment category. Auto detects it from the garment image; set it explicitly when detection may be ambiguous.
mode enum optional Generation mode. performance is faster, balanced trades a little speed for quality, and quality is slower with more detail.
garment_photo_type enum optional Garment photo type. Use model for on-model shots, flat-lay for flat-lay or hanging shots, or auto to detect it.
moderation_level enum optional Moderation strength for the garment image. permissive blocks explicit content; conservative also blocks underwear and swimwear.
seed integer optional Random seed. The same seed and inputs reproduce the result; change it for another version.
segmentation_free boolean optional Skips human parsing, which helps with complex poses, occlusion or non-standard body proportions.
output_format enum optional Output image format. PNG is highest quality; JPEG is faster.
callback object optional Optional callback configuration. When set, HiAPI notifies your service when the task reaches a terminal state.
url string required Required when callback is set; HTTPS URL that receives terminal task notifications.
when enum optional Callback trigger timing. Use final.
Example requests
The flat-lay corduroy jacket is put on the person photo while the pose and face stay unchanged; output 972 × 1296.
{
"model": "fashn-tryon-v1.6",
"input": {
"model_image": "https://dev-static.hiapi.ai/model-onboarding/fashn-tryon-v1.6/2026/10/19/1792426518394-764c4dd31c38a98f-fashn-person.webp",
"garment_image": "https://dev-static.hiapi.ai/model-onboarding/fashn-tryon-v1.6/2026/10/19/1792426519642-61b39dc0f55655a0-fashn-garment.jpg",
"category": "tops",
"mode": "balanced",
"garment_photo_type": "auto",
"moderation_level": "permissive",
"segmentation_free": true,
"output_format": "png"
}
}An on-model wedding dress with quality mode and JPEG output; verified at 972 × 1296.
{
"model": "fashn-tryon-v1.6",
"input": {
"model_image": "https://dev-static.hiapi.ai/model-onboarding/fashn-tryon-v1.6/2026/10/19/1792426518394-764c4dd31c38a98f-fashn-person.webp",
"garment_image": "https://dev-static.hiapi.ai/model-showcases/fashn-tryon-v1.6/2026/10/20/1792476966558-ca2f7b295dc5c30b-fashn-input-dress-hiapi.jpg",
"category": "one-pieces",
"mode": "quality",
"garment_photo_type": "model",
"moderation_level": "permissive",
"segmentation_free": true,
"output_format": "jpeg"
}
}A 2:3 person photo with high-waisted trousers; the output matches the person photo at 768 × 1152.
{
"model": "fashn-tryon-v1.6",
"input": {
"model_image": "https://dev-static.hiapi.ai/model-showcases/fashn-tryon-v1.6/2026/10/20/1792476965429-37164b74b97733c1-fashn-input-person-2x3-hiapi.jpg",
"garment_image": "https://dev-static.hiapi.ai/model-showcases/fashn-tryon-v1.6/2026/10/20/1792477400517-e3ec2addf4b078a9-fashn-input-trousers-hiapi.jpg",
"category": "bottoms",
"mode": "balanced",
"garment_photo_type": "model",
"moderation_level": "permissive",
"segmentation_free": true,
"output_format": "png"
}
}A hanging white T-shirt used as a flat-lay garment input; output 972 × 1296.
{
"model": "fashn-tryon-v1.6",
"input": {
"model_image": "https://dev-static.hiapi.ai/model-onboarding/fashn-tryon-v1.6/2026/10/19/1792426518394-764c4dd31c38a98f-fashn-person.webp",
"garment_image": "https://dev-static.hiapi.ai/admin-assets/2026/10/20/1792460217068-8a3b142473db580e-fashn-input-tee-flatlay.jpg",
"category": "tops",
"mode": "balanced",
"garment_photo_type": "flat-lay",
"moderation_level": "permissive",
"segmentation_free": true,
"output_format": "png"
}
}Getting the result
- The response returns a taskId immediately without waiting for generation to finish.
- In production, prefer waiting for callback.url to receive the terminal notification. For local debugging, poll GET /v1/tasks/:id.
- When status=success, download the image from output[].url.
- When status=fail, fix the request based on the returned error instead of retrying the same invalid payload.
FAQ
Does FASHN Try-On v1.6 need a prompt?
No. It takes a person photo and a garment image only; the try-on result comes from those images plus optional category and mode settings.
Do I need both images?
Yes. model_image and garment_image are both required; a request missing either one fails parameter validation.
Which garment categories are supported?
Tops, bottoms and one-pieces, plus automatic detection. Start with auto when the category is unclear, then set it explicitly if detection is wrong.
Which mode should I choose?
performance is faster for batch previews; balanced trades a little speed for quality; quality is slower and intended for final images.
How do I handle flat-lay vs on-model photos?
Set garment_photo_type to model or flat-lay, or leave it on auto. Flat-lay, hanging and on-model product photos are all supported.
What size and format is the output?
Each request returns one portrait image whose size follows the person photo. Verified runs returned 972 × 1296 from a 3:4 photo and 768 × 1152 from a 2:3 photo. PNG is the default; JPEG is optional. Do not assume a single fixed pixel size.
Why does the same input produce a different result?
Generation has a random element. Pass a fixed seed to reproduce a result, or change the seed for another version.
What makes a good person photo?
A front-facing, single-person photo with the body clearly visible works best. Small subjects, heavy occlusion or group photos reduce fit quality.
What does conservative moderation block?
conservative additionally blocks underwear and swimwear. permissive is enough for regular garment photos.