Amazon Product Search: prices, ratings, ASINs avatar

Amazon Product Search: prices, ratings, ASINs

Pricing

from $2.60 / 1,000 product extracteds

Go to Apify Store
Amazon Product Search: prices, ratings, ASINs

Amazon Product Search: prices, ratings, ASINs

Amazon product data at $0.004 per product, 20% below the alternative we tested (free plan), with 41 filled fields per product in that test. Search by keyword, URL or ASIN: price, list price, rating, reviews, Prime, badges, bought-in-past-month, images and specs. No login.

Pricing

from $2.60 / 1,000 product extracteds

Rating

0.0

(0)

Developer

Detroit Web Agent - Open Data

Detroit Web Agent - Open Data

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

12 hours ago

Last modified

Share

Amazon Product Search: prices, ratings and ASINs from public pages

Amazon Product Search: features, price and a real output row

Run it free on Apify

Price per 1,000 productsFree planStarterScaleBusiness
This Actor$4.00$3.40$3.00$2.60
Most-used alternative$5.00$4.00$3.50$3.00

Amazon Product Search sample output table from a real run

Turn Amazon keyword searches, category pages, search URLs, product URLs or ASINs on 19 Amazon sites into a clean product table, optionally priced for a delivery zip code: price, list price, rating, review count, Prime, sponsored flag, badges, bought-in-past-month, best-seller rank, seller, breadcrumbs, images, bullet features, variants, dimensions and weight. Public pages only. No login.

  • In short: Amazon Product Search (Apify actor transparent_meteorite/amazon-product-search) reads public Amazon search-result and product pages and returns one structured row per unique product.
  • Who it is for: sellers and brands tracking competitors, price monitors, affiliate and comparison sites, market researchers.
  • Input: keywords, Amazon search, category or product URLs, ASINs, country (19 Amazon sites), delivery zip code, sort, price range, minimum rating, Prime only, department, max products (total and per query), product-page details (on by default), seller offers, proxy.
  • Output: one row per unique product (deduped by marketplace and ASIN) with up to 63 fields (including stars, reviewsCount, inStock, delivery, breadCrumbs, highResolutionImages, isAmazonChoice, isBestSeller, offers), as JSON, CSV or Excel.
  • Pricing: pay per event. Per product delivered: $0.004 on the Apify free plan, $0.0034 Bronze, $0.003 Silver, $0.0026 Gold, Platinum and Diamond. Plus a start event of $0.00005 per GB of run memory.
  • Limits: public pages only, no login, no reviews or reviewer data. Amazon blocks some IPs; a blocked page is retried on a fresh session and a search that stays blocked delivers nothing and costs nothing.

Give it a keyword or a list of ASINs; get a clean Amazon product table without a login.

Run in 30 seconds

  1. Open the prefilled run (free Apify account; it creates a saved task with a working input).
  2. Press Start. The input is small on purpose, so the first run is quick and costs a few cents at most.
  3. Open the Output tab, switch to Table view, download as CSV, Excel or JSON.

Prefilled input:

{
"keywords": [
"coffee grinder"
],
"marketplace": "US",
"maxItems": 10
}

Ready-made presets by use case (each opens as a saved task you can edit):

Why choose this over alternatives

  • Price per product is lower on the free, Bronze, Silver and Gold plans than the alternative we tested. On Platinum and Diamond the alternative is cheaper.
  • Unique products only: duplicates are never charged, and a search that stays blocked is not charged.
  • Search by keyword, search URL, product URL or ASIN. No login.
  • The alternative returns more columns (63 flattened fields against our 42 in the same test). If you need a column we do not have, check the field table first.
This actorTypical alternatives
Products returned, page 1 of one search16 of 1616 of 16
Time for 16 products with full details15 to 20 s23 s
Fields per product4263 (flattened)
Price per product, free plan$0.004$0.005
Price per product, Platinum / Diamond$0.0026 / $0.0026$0.0017 / $0.0008

Measured 2026-10-11 (source: head-to-head test runs on the same query, "wireless mouse", amazon.com, page 1, one run per side, both runs succeeded). One run each is a small sample.

What it does and who it is for

You give the actor searches (keywords or search URLs) and/or specific products (ASINs or product URLs). It reads the public search pages in Amazon's own ranking order, opens each product page for the full detail set, removes duplicates and writes one row per product to an Apify dataset. You can download the dataset as JSON, CSV, Excel, XML or HTML, or read it through the API.

It is built for people who need Amazon listings as data:

  • Sellers and brands watching competitor prices, ratings, badges and search position for their keywords.
  • Price monitors that re-check a fixed list of ASINs on a schedule.
  • Affiliate and comparison sites that need titles, images, prices and features for a category.
  • Market researchers sizing a niche from review counts, best-seller ranks and Amazon's "bought in past month" figure.

It reads product data only. It does not collect customer reviews, reviewer names or profiles, and it never logs in.

Quick start

Press Start with the prefilled form (keyword "wireless mouse"), or paste:

{
"keywords": ["wireless mouse", "usb c cable"],
"countryCode": "US",
"maxItems": 100,
"maxPages": 3,
"scrapeProductDetails": true
}

ASINs and URLs work too: "asins": ["B07CMS5Q6P"], "urls": ["https://www.amazon.co.uk/s?k=kettle"].

What you get: output fields

Open each product page too (includeDetails) is on by default so every row has the full field set. In our test run each row had 42 fields. Switch it off for a faster, lighter run with the 17 search-card fields only (price, rating, reviews, badges, image, position and the like).

Fields marked "details" come from the product page and need includeDetails on. A field is null or empty when Amazon does not show it for that product, and a few optional keys (brandStory, dateFirstAvailable) appear only when the page has them.

FieldTypeMeaning
asinstringAmazon's product id. With marketplace it is the unique key
title, urlstringProduct title and canonical /dp/ASIN link
brandstringBrand (details)
price, listPrice, currencynumber, number, stringCurrent price, the struck-through price when Amazon shows one, and the currency code
rating, reviewCountnumberStar rating and number of ratings
starsBreakdownobjectPercentage of ratings at each star level, 5star to 1star (details)
isPrime, isSponsoredbooleanPrime badge; whether the search placement was an ad
badgesarrayFor example "Amazon's Choice", "Best Seller"
boughtInPastMonthstringAmazon's text, for example "10K+ bought in past month", when shown
monthlyPurchaseVolumenumberThe same figure as a number: the lower bound Amazon shows ("1K+" = 1000, "10K+" = 10000, "200+" = 200). Null when Amazon shows none
bestsellerRanksarrayBest Sellers Rank entries, each {rank, category} (details)
availabilitystringStock text, for example "In Stock" (details)
sellerstringThe seller named on the product page (details)
categoriesarrayBreadcrumb path, top level first (details)
imagesarrayProduct image URLs (details; without details, the one search-card image)
featuresarrayThe bullet points (details)
attributesarrayThe product attribute list as {key, value} pairs (details)
productDescriptionstringThe long description when the seller provides one (details)
aPlusContent, brandStorystringText of the enhanced brand content blocks when present (details)
aiReviewsSummarystringAmazon's AI-generated review summary text when shown (details)
variantsarrayVariant ASINs with their selectable attributes and thumbnail (details)
variantDetailsarrayOne entry per variant: asin, label (for example "Blue / 1"), dimensions (colour, size, pack) and thumbnail. Empty when the product has no variants (details)
dimensions, weightstringAs listed in the specs table, when present (details)
manufacturer, modelNumber, upc, dateFirstAvailablestringFrom the product details table, when listed (details)
fastestDelivery, deliveryMessagestringDelivery texts as shown to an anonymous visitor at the default location (details)
videosCountnumberNumber of videos on the product page (details)
sustainabilityFeaturesarrayRaw text of the sustainability badges block, when present (details)
position, page, querynumber, number, stringRank within the search (running across pages), result page, and the keyword. Null for ASIN and product-URL lookups
marketplace, countryCodestringSite key (US, UK, DE, JP, ...) and the same site as an ISO country code (UK becomes GB)
stars, reviewsCountnumberSame values as rating and reviewCount, under the names other Amazon tools use
inStock, inStockTextboolean, stringIn stock true / false (from the stock text and the buy button; null when the page shows neither) and the stock text as shown
delivery, deliveryDatestringDelivery promise text and the first delivery date shown, for the delivery location in effect
locationText, zipCodestringThe "Deliver to" location the page was priced for and the zip you set (only when a zip was set and Amazon accepted it)
breadCrumbsstringCategory path joined with " › " (details)
thumbnailImage, highResolutionImagesstring, arrayFirst image and all full-size image URLs
isAmazonChoice, isBestSellerbooleanBadge flags, any site language (Amazon's Choice, Amazons Tipp, ...)
descriptionstringProduct description, or the feature bullets joined when there is none
sellerIdstringMerchant ID of the buy-box seller (details)
offers, offersCountarray, numberOther sellers when maxOffers > 0: each {price, currency, condition, seller, sellerId, shipsFrom, deliveryDate, isPinned}
categoryUrlstringThe category search the row came from (category URL input)
sourcestringsearch (search card only), search+detail (search card merged with the product page) or detail (ASIN or product-URL lookup)
scrapedAtstringISO timestamp of extraction

Sample output

A real row from a test run on 2026-10-11 (build 0.1.10), abridged: long text is cut with ..., long lists show their first entries, and seven bulky fields (attributes, variants, aPlusContent, productDescription, aiReviewsSummary, sustainabilityFeatures, upc) are left out. Values shown are as delivered.

{
"asin": "B004YAVF8I",
"title": "Logitech M185 Compact Ambidextrous 2.4 GHz Wireless Mouse - Swift Grey",
"brand": "Logitech",
"price": 14.85,
"listPrice": 17.99,
"currency": "USD",
"rating": 4.4,
"reviewCount": 45315,
"isPrime": true,
"isSponsored": false,
"badges": ["Amazon's Choice"],
"availability": "In Stock",
"seller": "Slam-Dunk",
"categories": ["Electronics", "Computers & Accessories", "Computer Accessories & Peripherals", "Keyboards, Mice & Accessories", "Mice"],
"images": ["https://m.media-amazon.com/images/I/51WN5aXZWIL._AC_SL1500_.jpg", "https://m.media-amazon.com/images/I/61Ti5DDDOYL._AC_SL1500_.jpg"],
"features": ["Compact Mouse: With a comfortable and contoured shape, this Logitech ambidextrous wireless mouse feels great in either right or left hand and is far superior to a touchpad"],
"dimensions": "1.54\"L x 3.89\"W",
"weight": "4.8 ounces",
"boughtInPastMonth": "10K+ bought in past month",
"monthlyPurchaseVolume": 10000,
"url": "https://www.amazon.com/dp/B004YAVF8I",
"position": 1,
"page": 1,
"query": "wireless mouse",
"marketplace": "US",
"source": "search+detail",
"fastestDelivery": "Tomorrow, October 12",
"starsBreakdown": {"5star": 76, "4star": 11, "3star": 5, "2star": 1, "1star": 7},
"bestsellerRanks": [{"rank": 1, "category": "Computer Mice"}],
"manufacturer": "Logitech, Inc",
"modelNumber": "910-002225",
"videosCount": 13,
"deliveryMessage": "FREE delivery Friday, October 16 on orders shipped by Amazon over $35",
"variantDetails": [
{"asin": "B004YAVF8I", "label": "Swift Grey / 1", "dimensions": {"color_name": "Swift Grey", "number_of_items": "1"}, "thumbnail": "https://m.media-amazon.com/images/I/31U-r5U5hoL._SS64_.jpg"}
],
"scrapedAt": "2026-10-11T05:23:15.171Z"
}

The 2026-10-13 version adds countryCode, stars, reviewsCount, inStock, delivery, breadCrumbs, highResolutionImages and the other fields listed above to every row.

Input options

No field is required. With no keywords, URLs or ASINs the run searches "wireless mouse" as an example (and says so in the log), so an empty input still returns data. You can mix keywords, URLs and ASINs in one run.

InputDefaultWhat it does
keywordsnoneOne search per line, for example wireless mouse. Results come in Amazon's own ranking order
startUrlsnoneSearch pages (/s?k=...), category pages (/b?node=..., /s?rh=n:...) or product pages (/dp/ASIN) on any supported site. The site is read from each URL; filters in a search URL are kept
urlsnoneThe same as startUrls as plain text lines (older field, still works)
asinsnone10-character product ids, for example B07CMS5Q6P, fetched from the country chosen below
countryCodeUSAmazon site for keywords and ASINs: US, CA, UK (or GB), DE, IT, ES, NL, SE, PL, BE, IN, JP, AU, MX, BR, AE, SA, SG, TR. URLs carry their own
marketplacenoneOlder name for countryCode, still works. countryCode wins when both are set
zipCodenoneDelivery zip / postcode, set before scraping so prices, stock and delivery dates match that area. See the section below
maxItems20Stop after this many products in total, 1 to 5,000. Set it explicitly when you call the actor from the API
maxItemsPerQuery0 (no cap)Cap per keyword or URL, so one broad search does not use the whole maxItems budget. maxItemsPerStartUrl is accepted too
maxPages1Result pages to read per keyword or URL, 1 to 20 (about 16 to 60 products each). maxSearchPagesPerStartUrl is accepted too
sortAmazon defaultrelevance, price-asc, price-desc, avg-rating, newest or best-sellers, for keyword and category searches
minPrice, maxPricenonePrice range in the site currency, sent to Amazon and checked again on each row
minRatingnoneDrop products rated below 1, 2, 3, 4 or 4.5 stars (unrated products are dropped too)
primeOnlyfalseKeep only rows with a Prime badge. Reliable on amazon.com; other sites rarely show Prime to a logged-out visitor, so it can return nothing there
departmentnoneAmazon search alias such as electronics, kitchen, beauty (the i= value of an Amazon search URL)
scrapeProductDetailstrueOpen each product page for the full field set. One extra request per product, fetched 8 at a time. includeDetails is the older name; if either is off, product pages are skipped
maxOffers0 (off)Add up to this many seller offers per product from Amazon's "Other sellers" panel. One extra request per product
autoProxyFallbacktrueIf you left the proxy off and Amazon blocks two attempts in a row, switch to Apify residential proxy for the rest of the run. Turn it off to never use a proxy you did not pick
proxyConfigurationno proxyYour own choice of Apify Proxy group or custom proxies. Each retry uses a fresh session

Input examples

Track a fixed list of products (price, stock, rating) in the UK:

{ "asins": ["B07CMS5Q6P", "B004YAVF8I"], "countryCode": "UK", "maxItems": 2 }

Three pages of search results, search cards only, for a fast rank check:

{ "keywords": ["standing desk"], "countryCode": "DE", "maxPages": 3, "maxItems": 150, "scrapeProductDetails": false }

A search you built on Amazon with its own filters and sort order, pasted as it is, plus one product page:

{ "urls": ["https://www.amazon.com/s?k=wireless+mouse", "https://www.amazon.com/dp/B07CMS5Q6P"], "maxItems": 60 }

ASIN and product-URL lookups are fetched first, then the searches. If the same product turns up twice (two keywords, or an ASIN that is also in a search), it is delivered once.

Countries, zip & URL input

19 Amazon sites. Set countryCode for keywords and ASINs, or paste URLs from any of these sites (the site is read from each URL). Prices come in the site's own currency (currency is the ISO code, for example JPY, BRL, PLN).

CodeSiteCodeSiteCodeSite
USamazon.comSEamazon.seMXamazon.com.mx
CAamazon.caPLamazon.plBRamazon.com.br
UK (GB)amazon.co.ukBEamazon.com.beAEamazon.ae (English pages)
DEamazon.deINamazon.inSAamazon.sa (English pages)
ITamazon.itJPamazon.co.jpSGamazon.sg
ESamazon.esAUamazon.com.auTRamazon.com.tr
NLamazon.nl

Each site was checked on 2026-10-13 with a live search page through the same fetch code (price, currency, rating and review count filled on 90% or more of the cards). amazon.fr is not offered: it answered every automated request with a challenge page through datacenter IPs, residential IPs and browser-like requests, so a run there would deliver nothing.

Delivery zip code. zipCode sets the "Deliver to" location once per site before the first page, the way the location box on Amazon does, and every later request carries it. Rows then show locationText (for example "New York 10001", "London SW1A1AA", "10115 Berlin") and zipCode, and prices, stock and delivery dates are the ones Amazon shows for that area. Tested live on 2026-10-13 for the US (10001, 99501), UK (SW1A 1AA) and DE (10115). If Amazon refuses the code, the run carries on at Amazon's default location and the log and OUTPUT.warnings say so; rows then have no zipCode.

URL input. startUrls takes any mix of:

  • search pages: https://www.amazon.de/s?k=kaffeemaschine (your own filters and sort in the URL are kept),
  • category pages: https://www.amazon.com/b?node=172282 or https://www.amazon.com/s?rh=n:172282 (read as a node search, so rows have the full search-card fields),
  • product pages: https://www.amazon.co.jp/dp/B0XXXXXXXX.

Best-seller list pages (/gp/bestsellers/...) are skipped with a warning; use the category URL for that node instead.

{ "countryCode": "DE", "startUrls": [{ "url": "https://www.amazon.de/b?node=340843031" }], "zipCode": "10115", "sort": "avg-rating", "minRating": "4", "maxItems": 20 }

Pricing

Pay per event. There is no subscription and no rental fee for this actor.

EventFreeBronzeSilverGoldPlatinumDiamond
Product extracted (one per product row delivered)$0.004$0.0034$0.003$0.0026$0.0026$0.0026
Actor start (one per GB of run memory, minimum one)$0.00005$0.00005$0.00005$0.00005$0.00005$0.00005

The default run memory is 2 GB, so the start costs $0.0001 per run unless you change the memory in the run options. The price per product is the same with details on or off.

Worked examples at the default memory:

Products deliveredFreeBronzeSilverGold and above
20 (the form default)20 x $0.004 + $0.0001 = $0.0801$0.0681$0.0601$0.0521
100$0.4001$0.3401$0.3001$0.2601
1,000$4.0001$3.4001$3.0001$2.6001
5,000 (the maximum for one run)$20.0001$17.0001$15.0001$13.0001

A daily price check on 50 ASINs delivers 1,500 rows in 30 days: on the Bronze plan that is 1,500 x $0.0034 + 30 x $0.0001 = $5.103.

Apify's free plan includes $5 of monthly platform credit, which covers about 1,200 products with this actor at the free-plan price.

What is and is not charged:

  • One event per product row written to the dataset.
  • Duplicates are not delivered and not charged.
  • A search page or ASIN lookup that stays blocked after all retries delivers no row and is not charged.
  • If a search found a product but its product page could not be read, the row is still delivered with the search-card fields (source is search) and is charged.

To cap spend, set Maximum cost per run in the run options; the actor stops when the limit is reached.

How to run it

In Apify Console

Open the actor, fill in the form and press Start. Rows appear in the Output tab while the run is going. When the run ends, use Export for JSON, CSV, Excel, XML or HTML.

From the API or a client library

Set APIFY_TOKEN to your token from Apify Console > Settings > API & Integrations.

curl -X POST "https://api.apify.com/v2/acts/transparent_meteorite~amazon-product-search/runs?token=$APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"keywords":["wireless mouse"],"countryCode":"US","maxItems":20}'

Python (pip install apify-client)

import os
from apify_client import ApifyClient
client = ApifyClient(os.environ["APIFY_TOKEN"])
run_input = {"keywords": ["wireless mouse"], "countryCode": "US", "maxItems": 20}
run = client.actor("transparent_meteorite/amazon-product-search").call(run_input=run_input)
for p in client.dataset(run["defaultDatasetId"]).iterate_items():
print(p["asin"], p["price"], p["rating"], p["title"][:60])

JavaScript / Node.js (npm install apify-client)

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('transparent_meteorite/amazon-product-search').call({
keywords: ['wireless mouse'], countryCode: 'US', maxItems: 20,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items.length, 'products');

On a schedule

Create a schedule in Apify Console (Schedules > Create new), add this actor with your saved input, and pick a cron expression such as 0 8 * * * for 08:00 every day. Each run writes a new dataset; join runs on marketplace + asin and compare price, availability, rating and position over time using scrapedAt.

With n8n, Make, Zapier or AI agents

Start the actor with the Apify API (POST /v2/acts/<actor>/runs) or the Apify node in n8n, Make or Zapier, wait for the run, then read GET /v2/datasets/<id>/items. Any MCP-capable agent can call it as a tool through the Apify MCP server. Webhooks work as for any Apify actor: add one for the "run succeeded" event and your endpoint receives the run id and dataset id when the data is ready.

Reliability and blocking

Amazon blocks a share of automated traffic, and how much depends on the IP and the day. This is what the actor does about it and what we have measured.

  • Requests use browser-like TLS and headers.
  • When Amazon answers with a robot or captcha page, the actor retries on a new session (a new IP when a proxy is set), up to 6 attempts per page with exponential backoff, and warms up anonymous cookies from the home page after the first block. It never solves captchas.
  • If you left the proxy off and two attempts in a row are blocked, the run switches itself to Apify residential proxy for the rest of the run (autoProxyFallback, on by default).
  • A search that stays blocked is listed in the run's OUTPUT record and in the log.

Measured on the Apify platform with no proxy set, 2026-10-11, across amazon.com, .co.uk and .de: in 2 batches totalling 162 requests, 1 was blocked and every search and ASIN lookup delivered rows. Before the retry, referer and cookie changes, UK and DE search pages were blocked on almost every request from datacenter IPs (2 clean out of 62). Both sets of batches ran on one day, so the cause of the improvement is not isolated, and we have no measurement over weeks or at thousands of lookups. The automatic residential fallback is covered by tests against a local server but was not triggered in a live run. For heavy volumes, expect to need a residential proxy.

Run summary record

Each run writes a record named OUTPUT to its key-value store:

KeyMeaning
jobsHow many searches and product lookups the input produced
requests, ok, blocked, errors, retriesPage requests made and how they ended
successRatePctok as a percentage of requests
delivered, chargedRows written and events charged (these match)
duplicatesProducts found more than once and delivered once
failedJobsSearches or lookups that produced nothing
escalatedToResidentialPresent when the automatic proxy fallback was used
chargeLimitReachedTrue when your maximum cost stopped the run
warningsPlain-language notes, for example ASIN B0...: not found

Limits and honest caveats

  • Product data only. No customer reviews, questions or reviewer profiles.
  • Public pages as an anonymous visitor sees them. Prices, Prime and delivery texts can vary by location and session. Treat each row as a snapshot at scrapedAt.
  • Search cards are thin. Brand, seller, breadcrumbs and most other fields come from the product page, so keep details on (the default) when you need them.
  • Delivery location: without zipCode, prices and delivery dates are for Amazon's default location for an anonymous visitor (for amazon.com, often outside the US).
  • sustainabilityFeatures is raw text from the badge block and can include filler entries such as "icon".
  • Sites: 19 Amazon sites with the same parser (list above). US, UK and DE are tested most; amazon.fr is not supported.
  • Prime on non-US sites: logged-out pages outside amazon.com rarely show the Prime badge, so isPrime is mostly false there and primeOnly can return nothing.
  • Seller contact details (phone, address) are not collected.
  • One run delivers at most 5,000 products and reads at most 20 result pages per search. Split bigger jobs across keywords or runs.
  • Amazon can change its pages at any time, which can empty a field until the actor is updated.

New to Apify? Create a free account and run this Actor in under a minute. Some links are affiliate links.

More tools from the same publisher that fit this workflow:

Use from AI agents: every actor here is callable through the Apify MCP server (mcp.apify.com) and our open-data-actors MCP endpoint.

FAQ

Do I need an Amazon account, cookies or an API key? No. The actor does not log in and you supply no cookies.

Why did I get fewer products than maxItems? The search had fewer results on the pages you asked for (raise maxPages), duplicates were removed, a search was blocked (see OUTPUT.warnings), or your maximum cost was reached.

Why is brand or seller empty? Those come from the product page. Either includeDetails is off or that product page could not be read; in both cases source is search.

Are sponsored results included? Yes, with isSponsored: true, in the position Amazon showed them. Filter on that flag if you want organic results only.

What is monthlyPurchaseVolume? Amazon shows a rounded lower bound such as "10K+ bought in past month" on some products. The actor copies the text to boughtInPastMonth and the number (10000) to monthlyPurchaseVolume. It is Amazon's figure, not an estimate of ours. In our 16-product test run 14 products showed one.

Can I track a price over time? Yes. Schedule a run on a list of ASINs and compare price across datasets by asin.

How fast is it? A 16-product search with full details took 15 to 23 seconds in our test runs. Detail pages are fetched 8 at a time.

Does it work for other Amazon marketplaces? Yes, 19 sites: see Countries, zip & URL input. amazon.fr is the exception. Open an issue if you need another.

Can I get prices for a specific delivery area? Yes, set zipCode. Rows show the location Amazon priced them for in locationText.

Troubleshooting

SymptomLikely cause and fix
Run fails with Nothing to fetchEvery keyword, URL and ASIN was invalid or unsupported (see OUTPUT.warnings). Fix them
Rows have no zipCodeAmazon did not accept the zip for that site; the warning names the reason. Check the format (US 5 digits, UK full postcode)
Run fails with No products matched your filtersminRating, the price range or primeOnly removed every row. Loosen them
Run fails with No products deliveredEvery page was blocked. Run again, or choose a residential proxy in the Proxy setting
Rows have only about 17 fieldsincludeDetails is off, or product pages were blocked (source is search)
Warning ASIN ...: not foundThat ASIN does not exist on the chosen site. Check countryCode
Warning no results parsedAmazon returned a page with no product cards for that search. Check the keyword or URL in a browser
Fewer rows than expected from the APImaxItems was not sent. Set it explicitly

Terms & responsible use

This actor reads public Amazon pages that anyone can open without logging in. Amazon's Conditions of Use restrict automated access, so you are responsible for how you use the data: respect Amazon's terms, applicable law and rate limits, do not resell Amazon content as your own, and keep volumes reasonable. The actor collects no login data, no cookies of yours and no reviewer names or profiles. It is an independent tool and is not affiliated with or endorsed by Amazon. Prices and availability change quickly and vary by location; treat each row as a snapshot at scrapedAt.

More resources

Works well with

Other actors from Detroit Web Agent - Open Data that pair with this one:

Changelog

  • 2026-10-09: First version (private).
  • 2026-10-11: Product-page details on by default and fetched 8 at a time (build 0.1.8).
  • 2026-10-11: Retries with exponential backoff, cookie warm-up and automatic residential fallback; added monthlyPurchaseVolume and variantDetails (builds 0.1.9 to 0.1.11).
  • 2026-10-12: README expanded: full field table, sample output, pricing examples, API and scheduling guides, limits, FAQ and troubleshooting.
  • 2026-10-13: Added a Run in 30 seconds section with a one-click prefilled run link, saved use-case presets and cross-links to pairing actors.
  • 2026-10-13: 19 Amazon sites (countryCode), delivery zipCode, category and startUrls input, sort / price / rating / Prime / department filters, maxItemsPerQuery, seller offers, and new fields stars, reviewsCount, inStock, delivery, breadCrumbs, highResolutionImages, isAmazonChoice, isBestSeller, description, sellerId, countryCode. Empty input now runs an example search.

Support

A product that should have been returned, a field that parsed wrongly, or a field you need added? Open an issue on this actor's Issues tab with the run URL and what you expected. The run URL lets us see the exact input and the OUTPUT record.

Need more than the data?

This actor is built by Detroit Web Agent, a small Detroit studio that builds websites, lead pages and simple data tools for small businesses. If you want these results turned into a working website, a landing page or a CRM import, or you need a field this actor does not cover yet, open an issue on the Issues tab or visit detroitwebagent.com.


Built and maintained by Detroit Web Agent - Open Data (Detroit, Michigan). Questions, bugs or a field you need: open an issue on this Actor's Issues tab and we will reply there.

Use it from AI assistants (MCP)

Amazon Product Search works as a tool for AI assistants through the official Apify MCP server. Add this server URL to any MCP client (Claude Desktop, Claude Code, Cursor, ChatGPT connectors, VS Code):

https://mcp.apify.com/?actors=transparent_meteorite/amazon-product-search
{
"mcpServers": {
"apify": {
"url": "https://mcp.apify.com/?actors=transparent_meteorite/amazon-product-search",
"headers": { "Authorization": "Bearer <YOUR_APIFY_TOKEN>" }
}
}
}