API Reference
Upload Asset
Upload a product image and get back a hosted URL you can pass as image_url to the generate endpoints.
You only need this endpoint when your images aren't publicly reachable — if they already live on a public URL (your store's CDN, S3, etc.), pass that URL straight to Generate Image or Generate Video.
POST
/v1/api/upload-assetHeaders
x-api-keystringrequiredYour API key from the API Access page.
Body
Send multipart/form-data with a single field:
filefilerequiredImage file to upload. Supported formats: JPEG, PNG, WebP. Max size: 10MB.
Response fields
data.idintegerInternal asset ID.
data.image_urlstringHosted URL of the uploaded image — pass this as
image_url in generate requests.data.mimetypestringDetected content type of the stored file.
Rate limit
Uploads are limited to 1 per second per account.
Request
curl -X POST "https://api.productai.photo/v1/api/upload-asset" \
-H "x-api-key: YOUR_API_KEY" \
-F "file=@/path/to/product.jpg"Response · 200 OK
{
"status": "OK",
"data": {
"id": 190412,
"image_url": "https://…s3.amazonaws.com/api-uploads/1042/1755012345678.jpg",
"mimetype": "image/jpeg"
}
}Use the URL in a generate request
{
"model": "nanobanana2",
"image_url": "https://…s3.amazonaws.com/api-uploads/1042/1755012345678.jpg",
"prompt": "Place the product on a marble table with soft lighting"
}Next steps
Use the returned image_url in the Generate Image API.