Skip to main content
POST
/
tryon
/
v1
/
products
curl -X POST "https://api.genlook.app/tryon/v1/products" \
  -H "x-api-key: gk_your_api_key" \
  -H "Content-Type: application/json" \
  -d '{
    "externalId": "product-001",
    "title": "Classic Blue T-Shirt",
    "description": "A comfortable cotton t-shirt in navy blue",
    "imageUrls": ["https://example.com/images/blue-tshirt-front.jpg"]
  }'
{
  "success": true,
  "productId": "cm8abc123def",
  "externalId": "product-001",
  "imageUrls": ["https://example.com/images/blue-tshirt-front.jpg"]
}
Creates a new product or updates an existing one (matched by externalId). Products must have at least one image URL. Images are fetched and processed at generation time.

Request

externalId
string
required
Your unique product identifier. Used for upsert matching.
title
string
required
Product title, used for AI product type classification.
description
string
required
Product description, used for AI product type classification.
imageUrls
string[]
required
Array of publicly accessible image URLs. The first image is the primary product image.
metadata
object
Optional metadata object for your own use.
curl -X POST "https://api.genlook.app/tryon/v1/products" \
  -H "x-api-key: gk_your_api_key" \
  -H "Content-Type: application/json" \
  -d '{
    "externalId": "product-001",
    "title": "Classic Blue T-Shirt",
    "description": "A comfortable cotton t-shirt in navy blue",
    "imageUrls": ["https://example.com/images/blue-tshirt-front.jpg"]
  }'

Response

success
boolean
required
true if the product was created or updated.
productId
string
required
Internal product ID.
externalId
string
required
Your external product ID (echoed back).
imageUrls
string[]
required
The stored image URLs.
{
  "success": true,
  "productId": "cm8abc123def",
  "externalId": "product-001",
  "imageUrls": ["https://example.com/images/blue-tshirt-front.jpg"]
}