Docs / Amazon

Retailers

Amazon

Amazon product data by ASIN in three tiers, from a 0.25-credit change scan to the full listing, with delivery dates from lite up. Offers and offer check are live too.

At a glance

PropertyValue
platformamazon (the default when omitted)
Item idThe ASIN: 10 letters or digits, after /dp/ in a product URL. Books use their ISBN-10. Send in ids (or asins); upper-cased for you.
MarketplacesLive: us. More are coming soon.
Tierspulse (0.25), lite (1), full (5) credits per ASIN. tier is required.
Ids per call2,000; 10,000 at pulse
Also liveOffers (every seller, 1–3 credits) and offer check (0.5 per offer)

Requests, the response envelope and billing work as on every platform (Products). Amazon results keep their detailed fields at the top level (buybox, offers, delivery, full) and carry the neutral price, availability, seller and fulfillment beside them. Every result also has asin, equal to id.

Example

curl -X POST "https://api.scrapelyserp.com/v1/products" \
  -H "Authorization: Bearer $SCRAPELY_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "platform": "amazon",
    "ids": ["0060094664", "B0009KNLV6", "BZZZZZZZZZ"],
    "tier": "lite"
  }'
Response
{
  "platform": "amazon",
  "marketplace": "us",
  "tier": "lite",
  "results": [
    {
      "asin": "0060094664",
      "id": "0060094664",
      "status": "ok",
      "fetchedAt": "2026-10-15T18:04:11.412Z",
      "buybox": {
        "price": 4.74,
        "currency": "USD",
        "priceDisplay": "$4.74",
        "listPrice": 8.99,
        "savings": {
          "percent": 47,
          "amount": 4.25
        },
        "inStock": true,
        "availabilityType": "IN_STOCK",
        "fulfillerName": "Amazon.com",
        "isFba": true,
        "availabilityMessage": "In Stock",
        "condition": "NEW",
        "merchant": {
          "id": "ATVPDKIKX0DER",
          "name": "Amazon.com"
        },
        "offerListingId": "Xh7+qT2b/kLm9wQ=="
      },
      "title": "The Lion, the Witch and the Wardrobe",
      "category": "Books",
      "offers": {
        "newCount": 38,
        "newMinPrice": 3.98,
        "usedCount": 112,
        "usedMinPrice": 1.07,
        "currency": "USD"
      },
      "reviews": {
        "rating": 4.8,
        "count": "41,872"
      },
      "isParent": false,
      "delivery": {
        "standard": {
          "earliest": "2026-10-19T07:00:00Z",
          "latest": "2026-10-19T07:00:00Z",
          "free": true,
          "cost": 0
        },
        "fastest": {
          "earliest": "2026-10-16T07:00:00Z",
          "latest": "2026-10-16T07:00:00Z",
          "free": false,
          "cost": 2.99,
          "orderBy": "2026-10-15T23:16:00Z"
        },
        "isPrime": true,
        "currency": "USD"
      },
      "price": {
        "amount": 4.74,
        "currency": "USD"
      },
      "availability": {
        "inStock": true,
        "message": "In Stock"
      },
      "seller": {
        "id": "ATVPDKIKX0DER",
        "name": "Amazon.com"
      },
      "fulfillment": {
        "byPlatform": true,
        "name": "Amazon.com"
      },
      "url": "https://www.amazon.com/dp/0060094664"
    },
    {
      "asin": "B0009KNLV6",
      "id": "B0009KNLV6",
      "status": "ok",
      "fetchedAt": "2026-10-15T18:04:11.412Z",
      "buybox": {
        "price": 12.99,
        "currency": "USD",
        "priceDisplay": "$12.99",
        "deal": "Limited time deal",
        "inStock": true,
        "availabilityType": "IN_STOCK",
        "fulfillerName": "Lumen Direct",
        "isFba": false,
        "availabilityMessage": "Only 3 left in stock - order soon.",
        "condition": "NEW",
        "merchant": {
          "id": "A3QF8VQX2L7MZN",
          "name": "Lumen Direct"
        },
        "offerListingId": "pQ4/z9Lr0sT="
      },
      "title": "Lumen 6-Outlet Surge Protector, 4 ft",
      "brand": "Lumen",
      "category": "Electronics",
      "offers": {
        "newCount": 4,
        "newMinPrice": 12.49,
        "usedCount": 0,
        "currency": "USD"
      },
      "reviews": {
        "rating": 4.6,
        "count": "1,204"
      },
      "isParent": false,
      "delivery": {
        "standard": {
          "earliest": "2026-10-20T07:00:00Z",
          "latest": "2026-10-23T07:00:00Z",
          "free": false,
          "cost": 5.99
        },
        "freeOver": 35,
        "currency": "USD"
      },
      "price": {
        "amount": 12.99,
        "currency": "USD"
      },
      "availability": {
        "inStock": true,
        "message": "Only 3 left in stock - order soon."
      },
      "seller": {
        "id": "A3QF8VQX2L7MZN",
        "name": "Lumen Direct"
      },
      "fulfillment": {
        "byPlatform": false,
        "name": "Lumen Direct"
      },
      "url": "https://www.amazon.com/dp/B0009KNLV6"
    },
    {
      "asin": "BZZZZZZZZZ",
      "id": "BZZZZZZZZZ",
      "status": "not_found",
      "fetchedAt": "2026-10-15T18:04:12.077Z",
      "delivery": null,
      "deliveryError": "not_fetched"
    }
  ],
  "stats": {
    "requested": 3,
    "ok": 2,
    "partial": 0,
    "notFound": 1,
    "unavailable": 0,
    "elapsedMs": 1640,
    "delivery": {
      "requested": 2,
      "ok": 2,
      "failed": 0
    }
  },
  "credits": 3
}

BZZZZZZZZZ does not exist, so it comes back not_found: a definitive answer, charged like ok.

Tiers

Each tier is a superset of the one before. Pick the cheapest that has the fields you need.

TierCredits per ASINASINs per callTypical full-size callWhat you getUse it for
pulse0.2510,00010–20 s for 10,000 ASINsNew-offer count and lowest new price. Nothing else.Sweeping a whole catalogue for change, as often as you like.
lite12,00035–45 s for 2,000 ASINsTitle, brand, category, the whole buy box (price, list price, savings, deal, stock, seller, FBA, offer listing id), used offers, rating, review count and delivery dates.Repricing and monitoring: everything about the offer, with delivery dates.
full52,00060–90 s for 2,000 ASINsEverything in lite, plus description, images, attributes, binding, other editions, and refurbished and collectible offers.The first read of a new ASIN: building a listing.

Smaller calls finish proportionally faster. The retired tier name standard is still accepted and answered as lite.

Fields by tier

Fieldpulselitefull
id, asin, status, fetchedAtyesyesyes
offers.newCount, offers.newMinPrice (lowest new price, any seller), offers.currencyyesyesyes
Product
title, url, brand, category—yesyes
reviews.rating (0–5), reviews.count (as printed, e.g. "12,345")—yesyes
isParent—parent ASINsalso listings with no buyable offer
Buy box
buybox.price, buybox.currency, buybox.priceDisplay—yesyes
buybox.listPrice (the "was" price, only when above price), buybox.savings, buybox.deal—yesyes
buybox.inStock, buybox.availabilityType, buybox.availabilityMessage—yesyes
buybox.merchant (id, name), buybox.fulfillerName, buybox.isFba—yesyes
buybox.condition (NEW, USED, PARENT_ASIN), buybox.offerListingId—yesyes
price, availability, seller, fulfillment (neutral fields)—yesyes
Other offers
offers.usedCount, offers.usedMinPrice—yesyes
offers.refurbishedCount / MinPrice, offers.collectibleCount / MinPrice——yes
Delivery
delivery, deliveryError, stats.delivery (Delivery dates)—yesyes
Listing
description[], images, full.images[]——yes
full.attributes, full.binding——yes
full.variationChildren[] (other editions of a title; books and media)——yes

A field Amazon does not show for a product is left out rather than sent empty. No tier returns sellers other than the buy box (use Offers), size or colour variations, or feature bullets.

Pulse: change detection

pulse returns only the new-offer count and the lowest new price per ASIN. That makes it the cheapest tier (0.25 credits) and the largest (10,000 ASINs per call).

Response (pulse)
{
  "platform": "amazon",
  "marketplace": "us",
  "tier": "pulse",
  "results": [
    {
      "asin": "0060094664",
      "id": "0060094664",
      "status": "ok",
      "fetchedAt": "2026-10-15T18:04:11.412Z",
      "offers": {
        "newCount": 38,
        "newMinPrice": 3.98,
        "currency": "USD"
      }
    },
    {
      "asin": "B0009KNLV6",
      "id": "B0009KNLV6",
      "status": "ok",
      "fetchedAt": "2026-10-15T18:04:11.412Z",
      "offers": {
        "newCount": 4,
        "newMinPrice": 12.49,
        "currency": "USD"
      }
    },
    {
      "asin": "BZZZZZZZZZ",
      "id": "BZZZZZZZZZ",
      "status": "not_found",
      "fetchedAt": "2026-10-15T18:04:12.077Z"
    }
  ],
  "stats": {
    "requested": 3,
    "ok": 2,
    "partial": 0,
    "notFound": 1,
    "unavailable": 0,
    "elapsedMs": 1180
  },
  "credits": 1
}

Not a buy-box price

newMinPrice is the lowest new price from any seller. It equals the buy-box price for about 92% of bestsellers; the rest (mostly books) have a pricier buy box. Use pulse to notice that something moved, never to reprice from.

Scan with pulse, read with lite on change. Store newCount and newMinPrice per ASIN, then on every cycle:

  1. Scan everything with pulse (10,000 per call).
  2. Send to lite the ASINs whose newCount or newMinPrice changed, the partial ones, and those whose last lite buy box was above the lowest new price (pulse cannot see that buy box move).
  3. Read every ASIN at lite at a slower cadence (for example every 8th cycle) to catch a buy-box seller change at the same price.
  4. Delist on not_found: it is as reliable at pulse as at the other tiers.

Watchlists run exactly this strategy for you by default.

Delivery dates

lite and full results carry the buy-box offer's delivery promise at no extra cost: nothing to ask for. Promises are for an anonymous shopper in the marketplace, not a specific postcode.

FieldDescription
delivery.standard.earliest / .latestThe promise under the buy box (ISO 8601). Equal for a single-day promise.
delivery.standard.free, .costWhether it is free, and what it costs in delivery.currency. Absent when not stated.
delivery.standard.orderByOrder before this time to get this promise. Absent when there is no cut-off.
delivery.standard.messageAmazon's own line, e.g. "FREE delivery Monday, October 19".
delivery.fastestSame shape: the faster option, when there is one.
delivery.isPrime, delivery.shipsFromPrime eligibility (true or absent) and where the offer ships from.
delivery.freeOver, delivery.currencyOrders at or over this amount ship free (only when the standard option is not free).
deliveryErrorOnly when delivery is null: not_fetched, no_offer (no buy-box offer), no_promise, fetch_failed (retry later) or deadline.
stats.deliveryrequested, ok and failed counts for the call.

Delivery never changes an item's status or price: a product can be ok with delivery: null. include: ["delivery"] is still accepted and echoed back, and changes nothing.

Statuses on Amazon

  • partial: the product came back but some of its fields could not be read. Do not trust price or stock; read it again, or at a higher tier.
  • not_found: Amazon says the ASIN does not exist. Delist it.
  • isParent: true: the ASIN is a variation parent with no buyable offer of its own. Track a child ASIN instead.

Billing

TierCredits per ASIN1,000 ASINsLargest call
pulse0.252502,500 (10,000 ASINs)
lite11,0002,000 (2,000 ASINs)
full55,00010,000 (2,000 ASINs)

Pulse's fractional rate is rounded up once per call: 3 pulse ASINs cost 1 credit, even if one is refunded. Everything else is as on every platform: see What you pay for. A new ASIN's full read costs 5 credits; read it once, then track it with pulse and lite.

Marketplaces

marketplaceNameCurrencyStatus
usAmazon USUSDLive
ukAmazon UKGBPComing soon
deAmazon GermanyEURComing soon
frAmazon FranceEURComing soon
itAmazon ItalyEURComing soon
esAmazon SpainEURComing soon
caAmazon CanadaCADComing soon
mxAmazon MexicoMXNComing soon
jpAmazon JapanJPYComing soon
auAmazon AustraliaAUDComing soon
inAmazon IndiaINRComing soon
brAmazon BrazilBRLComing soon
nlAmazon NetherlandsEURComing soon
seAmazon SwedenSEKComing soon
plAmazon PolandPLNComing soon

A coming-soon marketplace answers 501 with "coming_soon": true and charges nothing.