Amazon Price API — Check Prices for 20 ASINs
Documentation menu
FetchLayer FetchLayer API

Check current prices for up to 20 products

Send up to 20 ASINs or product URLs and get back the current price of each, in the marketplace’s own currency, for a delivery postal code. This is the route built for price monitoring. In fast mode, the default, a whole batch is priced for a small fraction of what reading each product page costs; seller and stock status are included only where they come at no extra cost. Full mode reads every product page and returns seller and stock status for every product. Both modes return the same price. One product failing never fails the batch: it comes back with status failed, and only when no product at all could be retrieved is the call an error. Amazon shows current prices only — to build a price history, call this on a schedule. Billing: each product that gets a definitive result — a price, or a status such as out of stock, ended, unavailable or not found — counts as one request, so pricing 20 products bills 20. Products that fail on our side (blocked, timed out, not reached) are not billed, and duplicates count once.

POST /price-check Prices
https://api.fetchlayer.dev/amazon/price-check
OpenAPI JSON

Headers

Authorization string required

Bearer token — your FetchLayer API key.

Parameters

asins string[] required

1–20 products, each an ASIN or an Amazon product URL, all on the same marketplace.

mode string optional

fast: price, currency, status and hasFeaturedOffer for every product, in the fewest page loads. full: also availability and seller for every product, with a full product-page load per product. (default: fast)

marketplace string optional

Amazon marketplace as its domain suffix: com, co.uk, de, fr, it, es, nl, com.be, se, pl, ca, com.mx, com.br, com.au, co.jp, in, sg, com.tr, ae, sa. amazon.co.uk and uk are accepted too. A product URL carries its own marketplace, and naming a different one here is a 400. (default: com)

postalCode string optional

The delivery postal code prices and stock are quoted for. Defaults to a central postal code in the marketplace's country: 10001 for com, SW1A 1AA for co.uk, 10115 for de.

format string optional

json or markdown. (default: json)

timeoutMs number optional

Per-request time limit in milliseconds (max 600000).

Response Fields

price-check

Check current prices for up to 20 products

pagesScraped number

Products that received a definitive result. Each counts as one request against your plan; failed products and duplicates do not.

marketplace string

The Amazon marketplace, as its domain suffix.

deliveryLocation object

Where the prices apply: postalCode and Amazon’s own label for it. postalCode is null when a price could not be quoted for the postal code you asked for — notes says so.

notes string[]

Caveats about this particular result — a price quoted for a different location than asked for, a filter that could not be applied, products to retry. Read it on every call.

transport string

The source this data came from. Always "amazon".

scrapedAt string

ISO 8601 timestamp of when the data was collected.

mode string

The mode this batch was priced in.

requested number

Products in the request.

succeeded number

Products that came back ok or unavailable.

items object[]

One entry per requested product, in request order.

items[].asin string

The product’s ASIN.

items[].url string

The product page URL.

items[].status string

ok — a current offer was found. unavailable — the product exists but has no current offer. not_found — no such product on this marketplace. failed — this one product could not be retrieved; retry it.

items[].price object

{ amount, currency, display } in the currency the page actually quoted, or null.

items[].availability object

{ status, text }. status is one of in_stock, low_stock, out_of_stock, undeliverable, preorder, unknown — undeliverable means not offered to the delivery location, not sold out. null when not included (fast mode) or not shown.

items[].seller object

{ name, id } of the featured offer’s seller. Usually null in fast mode.

items[].hasFeaturedOffer boolean

Whether there is an offer that Add to Cart buys.

Request

curl -X POST "https://api.fetchlayer.dev/amazon/price-check" \
  -H "Authorization: Bearer ss-your-key" \
  -H "Content-Type: application/json" \
  -d '{"asins":["B09B8V1LZ3","B00FLYWNYQ","B07S98411N"],"marketplace":"com"}'

Response

{
  "marketplace": "com",
  "mode": "fast",
  "deliveryLocation": {
    "postalCode": "10001",
    "label": "New York 10001"
  },
  "requested": 3,
  "succeeded": 3,
  "items": [
    {
      "asin": "B09B8V1LZ3",
      "url": "https://www.amazon.com/dp/B09B8V1LZ3",
      "status": "ok",
      "price": {
        "amount": 79.99,
        "currency": "USD",
        "display": "$79.99"
      },
      "availability": null,
      "seller": null,
      "hasFeaturedOffer": true
    },
    {
      "asin": "B00FLYWNYQ",
      "url": "https://www.amazon.com/dp/B00FLYWNYQ",
      "status": "ok",
      "price": {
        "amount": 109.99,
        "currency": "USD",
        "display": "$109.99"
      },
      "availability": null,
      "seller": null,
      "hasFeaturedOffer": true
    },
    {
      "asin": "B07S98411N",
      "url": "https://www.amazon.com/dp/B07S98411N",
      "status": "ok",
      "price": {
        "amount": 89.99,
        "currency": "USD",
        "display": "$89.99"
      },
      "availability": null,
      "seller": null,
      "hasFeaturedOffer": true
    }
  ],
  "notes": [
    "Seller and stock status are not included for every product in fast mode; use mode \"full\" for them"
  ],
  "transport": "amazon",
  "scrapedAt": "2026-09-12T22:08:04.231Z"
}