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.
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.
Cannot be combined with other image inputs (image_prompt, face_reference, or background_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.
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 → background_reference → image_prompt → product_image). Provide an explicit ratio to override that default even when using these image references.
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 most specific image supplied
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'
background_referenceimage URL | base64
Background image used as the backdrop for generation. Ensures location consistency across generations. If a person appears in the image, they will be ignored and only the background will be used.
Default: None
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. | FASHN AI relies on external providers for tasks like captioning, moderation, and compute. These services can fail, be unavailable, or experience heavy load. Please retry, and if the issue persists, contact support@fashn.ai. |
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