Look up a product by UPC, ASIN, URL or model number

Last updated · Changelog · OpenAPI spec · Markdown

Cost: 1 credit per product found. Identifiers that match nothing cost nothing.

You can retrieve product details by using the GET /products?ids={identifiers} endpoint.

The identifiers parameter can be a comma-separated list of one or more identifiers. You can mix and match any combination of different identifiers, like GET /products?ids=B07G14HTBZ,611247369449,3ONn300xybP3y66ibqc1.

An identifier can be any of the following:

  • UPC
  • EAN
  • ISBN
  • GTIN
  • Amazon ASIN
  • Model Number
  • Product Name
  • URL at any Retailer
  • ShopSavvy Product ID

Examples

Example with barcodes:

curl -X GET "https://api.shopsavvy.com/v1/products?ids=611247373064,611247369449" \
  -H "Authorization: Bearer ss_live_your_api_key_here"

Example with product name:

curl -X GET "https://api.shopsavvy.com/v1/products?ids=iPhone%2015%20Pro" \
  -H "Authorization: Bearer ss_live_your_api_key_here"

Note: When using a product name, the API uses full-text search to find the best matching product based on relevance and offer availability.

How Identifiers Are Matched

Each identifier is tried against these fields, in order, and the first field that matches wins:

  1. Barcode (UPC / EAN / ISBN / GTIN). A full-length barcode (UPC-A, EAN-13, ISBN-13, GTIN-14) with a valid check digit is looked up only as a barcode (and a ShopSavvy Product ID). It is never re-interpreted as a model number, so a UPC can't come back as an unrelated product whose model number happens to be the same digits.
  2. ShopSavvy Product ID
  3. Model number, then MPN (skipped for inputs that look like product names, i.e. contain spaces)
  4. Amazon ASIN
  5. Product URL at any retailer (tracking parameters such as utm_* are stripped before matching)
  6. Product name (full-text search, a best guess)

Some identifiers are shared by more than one product in the catalog, such as a barcode a manufacturer reused or a model number used across several listings. When that happens the API returns the product with the most evidence behind it (the most verified offers on file, then the most watched), and the result is the same every time you ask.

Every product in a response carries a match object that tells you which identifier produced it and how:

"match": { "identifier": "611247373064", "by": "barcode", "candidates": 1 }
FieldDescription
identifierThe identifier exactly as you sent it. Use this to line results up with your request, because identifiers that match nothing are left out of data.
byWhich field matched: barcode, shopsavvy_id, asin, url, model, mpn, or name. Everything except name is an exact match. Treat name as low confidence.
candidatesHow many products matched on that field. More than 1 means the identifier is shared and the best-evidence product was chosen. Always 1 for name.

Response Format

The response will be a JSON object with success status, data array, and metadata including credits used.

Products will each have the following fields. (Note: not all fields are available on all products).

FieldDescription
titleThe name of the product.
title_shortA shorter, human-friendly version of the title (when available).
slugURL-friendly slug for the product.
categoryA comma separated list of categories for the product.
brandThe brand of the product.
colorThe color of the product.
modelThe model of the product.
shopsavvyThe ShopSavvy Product ID of the product. This can optionally be used alongside any other identifier when retrieving products, offers, etc.
barcodeThe barcode of the product. Will always be a number.
amazonThe Amazon ASIN of the product.
mpnThe manufacturer's part number of the product.
imagesAn array of image URLs pointing to images of the product.
identifiersAll known identifiers for the product (barcode, amazon, walmart, bestbuy, newegg, etc.).
descriptionProduct description text (single best available description).
categoriesArray of category path strings.
attributesProduct specifications as a flat object (e.g., {"Color": "Black", "Weight": "250g"}).
ratingAggregated customer rating with value (out of 5) and count (total reviews).
scoreExpert quality scores on a 0-1 scale: overall, customer, professional, plus an aspects object of per-aspect scores keyed by free-form aspect names drawn from the product's professional reviews (e.g. value, features, reliability, quality — the set varies per product). Only populated fields are included. Multiply by 10 or 100 if you want to display a /10 or /100 score.
keywordsArray of relevant search keywords for the product.
matchHow your identifier matched this product: identifier, by, and candidates (see How Identifiers Are Matched). Present on every endpoint that takes identifiers.

All response meta objects now include a request_id field — a unique identifier for every API request. Include this in any support inquiries.

Error Responses include both a human-readable error string and a structured error_detail object with code, message, action (what to do), and docs_url (link to relevant documentation).

Example Response

{
  "success": true,
  "data": [
    {
      "title": "Keurig K-Mini Single Serve Coffee Maker, Black",
      "category": "Grocery & Gourmet Food > Beverages > Coffee, Tea & Cocoa > Coffee > Single-Serve Capsules & Pods",
      "brand": "Keurig",
      "color": "Black",
      "model": "K-MINI",
      "shopsavvy": "products/3ONn300xybP3y66ibqc1",
      "barcode": 611247373064,
      "amazon": "B07G14HTBZ",
      "mpn": "5000200237",
      "images": [
        "https://images-na.ssl-images-amazon.com/images/I/31jy5fSzyRL.jpg",
        "https://images-na.ssl-images-amazon.com/images/I/411uxu%2Bg17L.jpg",
        "https://images-na.ssl-images-amazon.com/images/I/41jEx1YoTQL.jpg",
        "https://images-na.ssl-images-amazon.com/images/I/41CanelWIlL.jpg"
      ]
    },
    {
      "title": "Keurig K-Elite Single Serve K-Cup Pod Maker with Strength and Temperature Control, Iced Coffee Capability, 12oz Brew Size, Brushed Silver",
      "category": "Home & Kitchen > Kitchen & Dining > Coffee, Tea & Espresso > Coffee Makers > Single-Serve Brewers",
      "brand": "Keurig",
      "color": "Silver",
      "model": "K-Elite",
      "shopsavvy": "products/DrKWneG0MpFlZpwZXNYa",
      "barcode": 611247369449,
      "amazon": "B0788F3R8X",
      "mpn": "5000197492",
      "images": [
        "https://images-na.ssl-images-amazon.com/images/I/411fEW99TlL.jpg",
        "https://images-na.ssl-images-amazon.com/images/I/51bdqFw6lNL.jpg",
        "https://images-na.ssl-images-amazon.com/images/I/51-NbDX9S7L.jpg",
        "https://images-na.ssl-images-amazon.com/images/I/412o2pQ-swL.jpg"
      ]
    }
  ],
  "meta": {
    "credits_used": 2,
    "credits_remaining": 998,
    "rate_limit_remaining": 58
  }
}
Was this page helpful?