Generate a marketplace-ready listing
Generate a complete listing from product images using AI. Returns core listing data, marketplace mappings (eBay, Depop, Grailed, Shopify), pricing recommendations, and image URLs.
Modes:
- sync (default for API tokens): Returns the generated listing in the HTTP response. No enrichment — fast path for API consumers.
- async (default for JWT/frontend): Returns { jobId, displayId } immediately. Listing is persisted and enriched in the background.
The mode is auto-detected from your auth type, or you can set it explicitly via mode.
Idempotency (sync mode): Pass an Idempotency-Key header to safely retry requests. If a response was already generated for this key within the last 24 hours, the cached response is returned.
Usage limits: This endpoint checks your organisation's monthly allowance and billing status before generation. Returns 402 if your monthly limit has been reached or billing is blocked; read the returned error.
Request
- Base URLhttps://api.shopfront.app
- AuthHTTP bearer
Headers
Idempotency key for safe retries (sync mode only). Cached results are returned for 24 hours.
Request body
Example request
{
"imageUrls": [
"https://i.ebayimg.com/images/g/abc/front.jpg",
"https://i.ebayimg.com/images/g/abc/back.jpg",
"https://i.ebayimg.com/images/g/abc/tag.jpg"
],
"images": [
"/9j/4AAQSkZJRg...",
"/9j/4AAQSkZJRg..."
]
}Response
Sync mode — full listing returned
Example response
{
"data": {
"listing": {
"conditionNotes": "Minor surface wear; fully functional.",
"packageWeight": 0.45,
"packageWeightConfidence": 0.7,
"packageDimensions": {
"height": 15,
"width": 25,
"length": 35
},
"packageDimensionsConfidence": 0.7,
"identificationConfidence": 0.95
}
}
}Changes
No recorded changes to this operation across all 1 revision of this API.