Retrieve PDP scores by id
Fetch the current state and scores for a PDP submitted by id.
/v1/pdps/id/{id}Returns the current scores and processing state for a PDP submitted
via Submit a PDP by id.
Poll until status reaches a terminal COMPLETED or ERROR.
During a rescore the previous scores remain visible alongside
status: PROCESSING and the prior scored_at timestamp, so clients
can keep showing the last known result while a new one is computed.
Use the optional retailer query parameter to disambiguate the same id
submitted under different retailers. The score_url returned by the PUT
already includes it.
Authorization
bearerAuth Short-lived access token issued by Create a token.
Send it on every request as Authorization: Bearer <token>.
In: header
Path Parameters
Arbitrary caller-supplied PDP identifier — a stable id from your own system (for example a SKU or PIM id). Any non-empty string up to 512 characters; it is not a GTIN and is not format-validated. It must not contain a slash.
1 <= length <= 512Query Parameters
Retailer the id was submitted under. Disambiguates the same id
across retailers. Defaults to amazon_us.
"amazon_us"Response Body
application/json
application/json
application/json
application/json
curl -X GET "https://ext.vizit.com/v1/pdps/id/SKU-12345"{ "id": "SKU-12345", "retailer": "amazon_us", "pdp_id": "2ed2d86b-85b6-49b8-bfaf-11ce19f11301", "status": "PROCESSING", "error_code": "string", "name": "string", "category": "string", "pdp_score": 0, "listing_score_at_ingest": 0, "score_change": 0, "vizit_certified": true, "carousel_score": 0, "hero": { "image_id": "84c230fd-5520-4984-8119-37365b66fd80", "image_url": "string", "hero_score": 0.1, "vizit_certified": true, "hero_gs1_components": { "four_ws.brand": 92, "four_ws.product_type": 88, "four_ws.variant": 74, "four_ws.size_and_count": 75, "image_quality.background_separation": 95, "image_quality.product_centered": 90, "image_quality.product_prominent": 93, "image_quality.product_cropping": 97, "image_quality.product_tilt": 98, "image_quality.no_off_pack_text": 100, "composition": 84, "layout_staging": 81 }, "hero_gs1_component_statuses": { "four_ws.brand": "PASS", "four_ws.product_type": "REVIEW", "four_ws.variant": "REVIEW", "four_ws.size_and_count": "REVIEW", "image_quality.background_separation": "REVIEW", "image_quality.product_centered": "REVIEW", "image_quality.product_prominent": "REVIEW", "image_quality.product_cropping": "REVIEW", "image_quality.product_tilt": "REVIEW", "image_quality.no_off_pack_text": "PASS", "composition": "HIGH", "layout_staging": "HIGH" }, "hero_gs1_group_statuses": { "shopper_clarity": "REVIEW", "image_quality": "REVIEW", "composition": "HIGH", "product_staging": "HIGH" }, "agent_ready": true, "mobile_ready": true, "classification": "Lifestyle" }, "carousel_images": [ { "image_id": "84c230fd-5520-4984-8119-37365b66fd80", "image_url": "string", "position": 1, "vizit_score": 0, "vizit_certified": true, "classification": "Lifestyle" } ], "asset_mix": { "total_images": 0, "by_classification": { "Packshot": 1, "Lifestyle": 2, "Feature highlight": 1 }, "ideal_by_classification": { "Lifestyle": 2, "Feature highlight": 1, "Multi-Pack": 1 } }, "images_matching_ideal_mix": 0, "is_ideal_content_mix": true, "score_penalty": true, "image_count_penalty": true, "image_mix_penalty": true, "image_order_penalty": true, "high_scoring_asset_count": 0, "scored_at": "2019-08-24T14:15:22Z"}{ "detail": "string", "status_code": 0, "error_code": "IMAGE_DOWNLOAD_FAILED", "request_id": "266ea41d-adf5-480b-af50-15b940c2b846", "extra": { "failed_urls": [ { "url": "https://cdn.example.com/broken.jpg", "reason": "IMAGE_DOWNLOAD_TIMEOUT" }, { "url": "https://cdn.example.com/icon.svg", "reason": "UNSUPPORTED_IMAGE_FORMAT" } ] }, "timestamp": "2019-08-24T14:15:22Z"}{ "detail": "string", "status_code": 0, "error_code": "IMAGE_DOWNLOAD_FAILED", "request_id": "266ea41d-adf5-480b-af50-15b940c2b846", "extra": { "failed_urls": [ { "url": "https://cdn.example.com/broken.jpg", "reason": "IMAGE_DOWNLOAD_TIMEOUT" }, { "url": "https://cdn.example.com/icon.svg", "reason": "UNSUPPORTED_IMAGE_FORMAT" } ] }, "timestamp": "2019-08-24T14:15:22Z"}{ "detail": "string", "status_code": 0, "error_code": "IMAGE_DOWNLOAD_FAILED", "request_id": "266ea41d-adf5-480b-af50-15b940c2b846", "extra": { "failed_urls": [ { "url": "https://cdn.example.com/broken.jpg", "reason": "IMAGE_DOWNLOAD_TIMEOUT" }, { "url": "https://cdn.example.com/icon.svg", "reason": "UNSUPPORTED_IMAGE_FORMAT" } ] }, "timestamp": "2019-08-24T14:15:22Z"}GETList product retailers
Lists the retailer regions you can use to scope product category discovery. Pass a returned retailer's `id` (e.g. `amazon_us`, `walmart_us`) as the `retailer` query parameter on [list product categories](/api/product-details/listProductCategories).
PUTSubmit a PDP by id
Submitting a PDP by id sends its hero and carousel images for scoring. If the submission changes the PDP, it will be processed and the response is 202 with status PROCESSING. Use [Retrieve a PDP by id](/api/product-details/getPdpById) to watch the scores come in. If nothing has changed, the PDP won't be processed and the response is 200 with status COMPLETED or ERROR. The `id` in the path is your own stable identifier and is echoed back on the corresponding GET so you can correlate records. Optionally supply `gtin` or `asin` in the body to help Vizit resolve the product category; they are used only for category resolution and are never echoed back. Subsequent submissions are reconciled by filename: a filename already on the PDP is reused (no re-download, no re-score), while a new filename replaces the previous image in that slot. An identical payload is a no-op. Use this endpoint when you can supply your own image URLs (for example, from a PIM). To have Vizit scrape an Amazon listing instead, use [Submit a PDP by ASIN](/api/product-details/upsertPdpByAsin).