Skip to content
Guides/Working with images
Guides

Working with images

Prepare clear product photos and accessible image URLs for analysis.

Choose photos of one item

Send between 1 and 6 photos, all showing the same product. A clear front view is a useful starting point. Add labels, model numbers, alternate angles, and close-ups of wear or defects to provide more context.

Use hint for details that are hard to see, such as the model or size. Keep hints within 500 UTF-8 bytes.

Supported files and limits

RequirementLimit
FormatsJPEG, PNG, WebP
Images per request1–6
File size per image10 MiB
Combined image size24 MiB
Image resolution25 megapixels
Width or height10,000 pixels per axis
Image URL length4,096 characters

Both the pixel count and each dimension must fit within the limits. The API checks the actual image content; changing a file extension does not convert its format.

Provide reachable URLs

Images must be accessible over public HTTPS. The API fetches them without your application’s cookies or authorization headers. URLs must not contain embedded credentials or fragments, and must use the standard HTTPS port.

Publicly accessible signed URLs are supported. Keep them valid long enough for the initial fetch and any new analysis. Keep the exact same URL and image order when retrying an accepted request with the same idempotency key.

Private network addresses and URLs that redirect to private destinations are not supported. Host images where they can be fetched promptly; image retrieval has bounded time and redirect limits.

JSON
{
  "images": [
    { "url": "https://example.com/item-front.jpg" },
    { "url": "https://example.com/item-label.jpg" }
  ],
  "hint": "Levi's 501 jeans, size 32x30",
  "currency": "USD"
}

Upload from the playground

The playground accepts local images and uploads them to a temporary image host, uguu.se, to obtain a URL for analysis. Local playground uploads have a 4 MiB per-file limit. You can also paste your own HTTPS URLs to use the API’s image limits.

Temporary upload URLs expire. For a lasting integration, use your own image hosting and supply its HTTPS URLs to Analyze.

Troubleshoot an image error

For 422 invalid_image, verify that each URL can be fetched publicly and that every file meets the format, size, and dimension limits. Fix the image input before starting a new analysis. If the failed attempt was already accepted, use a new idempotency key for the corrected request.