Product to Model
Powered by best-in-class image editing AI, the Product to Model endpoint transforms product images into people wearing those products. It supports dual-mode operation: standard product-to-model (generates new person) and try-on mode (adds product to existing person).
This endpoint is designed specifically for wearable fashion items such as clothing, shoes, hats, jewelry, bags, and accessories.
- Model Name:
product-to-model - Lifecycle: preview
- Dual-Mode Operation: Product-only or Product + Model images
- Processing Time: 12 seconds
- Output Formats: PNG, JPEG
- Delivery Methods: URL or Base64 encoding
- Credits: 1 per image (4 per image with
face_reference)
Request
Generate product-to-model images by submitting your product and optional model images to the universal /v1/run endpoint:
Request Parameters
product_imageRequiredimage URL | base64
URL or base64 encoded image of the product to be worn. Supports clothing, accessories, shoes, and other wearable fashion items.
image_promptimage URL | base64
Optional URL or base64 encoded inspiration image that guides pose, environment, and lighting while keeping the product centered in the final output.
Mutually exclusive with model_image.
Default: None
model_imageimage URL | base64
URL or base64 encoded image of the person to wear the product. When provided, enables try-on mode. When omitted, generates a new person wearing the product.
Mutually exclusive with image_prompt and face_reference.
Default: None
face_referenceimage URL | base64
Optional face identity reference to guide who the generated person should look like. When provided, the pipeline refines identity to match the reference while keeping product fidelity.
Mutually exclusive with model_image.
Default: None
face_reference_mode'match_base' | 'match_reference'
Controls how the identity from face_reference influences pose and expression.
-match_reference favors the reference face’s pose and expression for maximum resemblance.
-match_base gives more weight to the prompt (or system default prompt if omitted) when generating the person's pose and expression.
Default: match_reference
promptstring
Additional instructions for person appearance (when model_image is not provided), styling preferences or background.
Examples: "man with tattoos", "tucked-in", "open jacket", "rolled-up sleeves", "studio background".
Default: None
aspect_ratiostring
Desired aspect ratio for the output image. If omitted, the generation inherits the aspect ratio from the most specific image supplied (model_image or image_prompt first, otherwise product_image). Provide an explicit ratio to override that default even when using model_image or image_prompt.
Supported ratios: "1:1", "3:4", "4:3", "9:16", "16:9", "2:3", "3:2", "4:5", "5:4"
Default: Aspect ratio of the available reference image (model_image or image_prompt first, otherwise product_image)
resolutionstring
Chooses the generation profile. "1k" produces precise, instruction-following results suited for consistent catalog imagery. "4k" unlocks creative, ultra high-definition renders with richer product detail but slightly less control over pose and styling.
Supported values: "1k", "4k"
Default: "1k"
seedinteger
Seed for reproducible results. Must be between 0 and 2^32-1.
Default: 42
num_imagesinteger
Number of images to generate in a single request. Must be between 1 and 4. Additional images consume more compute (and credits) and can increase processing time.
Default: 1
output_formatstring
Output image format.
"png"- PNG format, original quality"jpeg"- JPEG format, smaller file size
Default: "png"
return_base64boolean
When set to true, the API will return the generated image as a base64-encoded string instead of a CDN URL. The base64 string will be prefixed data:image/png;base64,....
This option offers enhanced privacy as user-generated outputs are not stored on our servers when return_base64 is enabled.
Default: false
Response Polling
After submitting your request, poll the status endpoint using the returned prediction ID. See API Fundamentals for complete polling details.
Successful Response
When your product-to-model generation completes successfully, the status endpoint will return:
Runtime Errors
If an error occurs during inference (while running the model), the API will return a 200 status code with a prediction status: failed.
Additionally, an error object will be included under the error key in the response.
| Name | Cause | Solution |
|---|---|---|
ImageLoadError | The pipeline was unable to load the product image or model image from the provided inputs. | For Image URLs:
|
ContentModerationError | Prohibited content detected in the provided product or model image. Content moderation is more sensitive when model_image contains an actual person (virtual try-on mode). |
|
PipelineError | An unexpected error occurred during the execution of the pipeline. | Retry the request (you will not be charged for failed attempts). If the issue persists, please reach out to us at support@fashn.ai and include the prediction ID from the failed attempt to help us locate and address the issue promptly. |
ThirdPartyError | A third-party processor failed or refused to handle the request. | Most likely caused by content restrictions enforced by supporting services (e.g., image captioning). If that’s the case, try modifying your image inputs. If the issue persists across different inputs, contact support@fashn.ai with the prediction ID. |
The Error Object
Example of an error when polling the /status endpoint:
If you encounter an unrecognized error, please contact us at support@fashn.ai.
Related Guides
- Image Preprocessing Best Practices - Optimize your input images for better results
- Data Retention & Privacy - Understand how FASHN handles your data