Nimbryxo Studio

Amazon Multi-Domain Product Price & Detail Scraper

Pull pricing, ratings, seller, variant and technical detail for Amazon products by URL or ASIN, across 21 country domains, with optional delivery postal-code targeting.

Input schema

Input fields, types, required flags, descriptions, defaults, and prefills come from the published definition. Prefill examples are distinct from defaults.

FieldTypeRequiredDescription
productUrlsarrayoptionalAmazon product URLs to scrape. Any mix of the 21 supported country domains is allowed, e.g. https://www.amazon.com/dp/B0B8PD8TTP.
asinsarrayoptionalBare 10-character Amazon ASINs. Builds /dp/{ASIN} URLs on the selected marketplace, or on every domain listed in `domains` for cross-marketplace runs.
searchTermsarrayoptionalKeyword queries to run on Amazon search pages. Price/rating/deal/condition/sort filters are applied as URL parameters.
Show all input fields
FieldTypeRequiredDescription
productUrlsarrayoptionalAmazon product URLs to scrape. Any mix of the 21 supported country domains is allowed, e.g. https://www.amazon.com/dp/B0B8PD8TTP.
asinsarrayoptionalBare 10-character Amazon ASINs. Builds /dp/{ASIN} URLs on the selected marketplace, or on every domain listed in `domains` for cross-marketplace runs.
searchTermsarrayoptionalKeyword queries to run on Amazon search pages. Price/rating/deal/condition/sort filters are applied as URL parameters.
searchUrlsarrayoptionalFull Amazon search URLs to pass through, including your own `i=`, `rh=`, `low-price`, and `s=` parameters. Pagination is added automatically.
bestsellerUrlsarrayoptionalAmazon bestseller /zgbs/ or /gp/bestsellers/ list URLs. Returns the ranked product cards, optionally enriched with product-detail fields.
marketplacestringoptionalMarketplace used for bare ASINs and keyword search terms. `auto` uses the first product URL's domain, or amazon.com.
domainsarrayoptionalOptional list of marketplaces (e.g. amazon.com, amazon.de) to run bare ASINs and search terms across. Leave empty to use `marketplace` only.
languagestringoptionalPage language. `auto` uses the marketplace's own default. Explicit values set `?language=` and the matching Accept-Language header.
currencystringoptionalISO currency for the displayed price. `auto` uses the marketplace currency. Note: Amazon converts display currency; it is not guaranteed local retail pricing.
deliveryCountrystringoptionalOptional country hint. When `postalCode` is empty, a representative local ZIP for that country is used. A country alone is not sent to Amazon.
postalCodestringoptionalLocal ZIP/postal code for the delivery location. The actor validates it against the marketplace format and skips the location change if it does not match.
minPricenumberoptionalMinimum price for discovery (search) results. Leave empty for no lower bound.
maxPricenumberoptionalMaximum price for discovery (search) results. Leave empty for no upper bound.
minRatingstringoptionalMinimum star rating for discovery results. `4` is the live-validated 4+ stars filter; lower values are best effort.
dealsOnlybooleanoptionalApply Amazon's deals filter to keyword searches. Only affects discovery.
primeOnlybooleanoptionalApply Amazon's Prime filter to keyword searches. Prime eligibility itself is not emitted because the page does not expose a reliable per-item signal.
conditionstringoptionalItem condition filter for keyword searches. `new` is live-validated; other values are best effort.
brandstringoptionalOptional brand word added to keyword search terms and used as a title/brand post-filter. This is not a structured Amazon brand-facet resolver.
stockstringoptionalBest-effort stock filter applied after parsing. Records with unknown stock pass through.
sortBystringoptionalSort order for keyword searches. Search-URL pass-through keeps its own sort.
maxItemsintegeroptionalMaximum number of search/bestseller rows across all discovery inputs. Explicit product URLs/ASINs are always processed.
maxPagesintegeroptionalMaximum search-result pages to read per keyword or search URL (1-20).
includeDetailsbooleanoptionalFetch each discovery result's product page for full price, seller, variants, specs, reviews, and media fields. Disable for a cheaper search-card-only run.
includeSponsoredbooleanoptionalKeep sponsored search cards. The isSponsored flag is always preserved.
includeVariantsbooleanoptionalInclude parent ASIN, child ASINs, and variant dimensions. Per-variant price and stock are not available from the product page.
includeTopReviewsbooleanoptionalInclude the inline top-review snippets Amazon renders publicly. Full review pagination is login-gated and is not supported.
includeFailedbooleanoptionalEmit an error row (recordType=error, reason, httpStatus) when a product or discovery input fails instead of silently dropping it.
failOnEmptybooleanoptionalMark the run as FAILED when no product/search records are emitted.
rateLimitDelayintegeroptionalBase pause in seconds between product/search requests (0-10). A random value between this and twice this is used.
proxyConfigurationobjectoptionalOptional. The actor starts direct and escalates through Apify Proxy automatically only if Amazon blocks the request. No setup is required.
proxyCountrystringoptionalOptional proxy exit country. `AUTO` uses the marketplace's own country for every domain.

Download the published input schema

View complete JSON
{
  "description": "Provide products (URLs or ASINs) and/or discovery inputs (keyword terms, search URLs, bestseller lists). Locale, currency, delivery ZIP, and search filters are optional.",
  "properties": {
    "asins": {
      "default": [],
      "description": "Bare 10-character Amazon ASINs. Builds /dp/{ASIN} URLs on the selected marketplace, or on every domain listed in `domains` for cross-marketplace runs.",
      "editor": "stringList",
      "example": [
        "B0B8PD8TTP"
      ],
      "items": {
        "type": "string"
      },
      "prefill": [
        "B09X7MPX8L"
      ],
      "title": "ASINs",
      "type": "array"
    },
    "bestsellerUrls": {
      "default": [],
      "description": "Amazon bestseller /zgbs/ or /gp/bestsellers/ list URLs. Returns the ranked product cards, optionally enriched with product-detail fields.",
      "editor": "stringList",
      "example": [
        "https://www.amazon.com/gp/bestsellers/kitchen/"
      ],
      "items": {
        "type": "string"
      },
      "prefill": [],
      "title": "Bestseller List URLs",
      "type": "array"
    },
    "brand": {
      "default": "",
      "description": "Optional brand word added to keyword search terms and used as a title/brand post-filter. This is not a structured Amazon brand-facet resolver.",
      "editor": "textfield",
      "example": "Anker",
      "prefill": "",
      "title": "Brand / Keyword Refinement",
      "type": "string"
    },
    "condition": {
      "default": "any",
      "description": "Item condition filter for keyword searches. `new` is live-validated; other values are best effort.",
      "editor": "select",
      "enum": [
        "any",
        "new",
        "used",
        "renewed",
        "collectible"
      ],
      "enumTitles": [
        "Any condition",
        "New",
        "Used",
        "Renewed",
        "Collectible"
      ],
      "prefill": "any",
      "title": "Condition",
      "type": "string"
    },
    "currency": {
      "default": "auto",
      "description": "ISO currency for the displayed price. `auto` uses the marketplace currency. Note: Amazon converts display currency; it is not guaranteed local retail pricing.",
      "editor": "select",
      "enum": [
        "auto",
        "USD",
        "EUR",
        "GBP",
        "JPY",
        "CAD",
        "AUD",
        "INR",
        "BRL",
        "MXN",
        "SEK",
        "PLN",
        "TRY",
        "AED",
        "SAR",
        "EGP",
        "SGD",
        "CNY",
        "CHF",
        "HKD",
        "NZD",
        "ZAR",
        "NOK",
        "DKK",
        "CZK",
        "HUF",
        "ILS",
        "KRW",
        "THB",
        "MYR",
        "PHP",
        "IDR",
        "VND"
      ],
      "enumTitles": [
        "Auto (marketplace currency)",
        "US Dollar",
        "Euro",
        "British Pound",
        "Japanese Yen",
        "Canadian Dollar",
        "Australian Dollar",
        "Indian Rupee",
        "Brazilian Real",
        "Mexican Peso",
        "Swedish Krona",
        "Polish Zloty",
        "Turkish Lira",
        "UAE Dirham",
        "Saudi Riyal",
        "Egyptian Pound",
        "Singapore Dollar",
        "Chinese Yuan",
        "Swiss Franc",
        "Hong Kong Dollar",
        "New Zealand Dollar",
        "South African Rand",
        "Norwegian Krone",
        "Danish Krone",
        "Czech Koruna",
        "Hungarian Forint",
        "Israeli Shekel",
        "South Korean Won",
        "Thai Baht",
        "Malaysian Ringgit",
        "Philippine Peso",
        "Indonesian Rupiah",
        "Vietnamese Dong"
      ],
      "prefill": "auto",
      "title": "Display Currency",
      "type": "string"
    },
    "dealsOnly": {
      "default": false,
      "description": "Apply Amazon's deals filter to keyword searches. Only affects discovery.",
      "prefill": false,
      "title": "Deals Only",
      "type": "boolean"
    },
    "deliveryCountry": {
      "default": "auto",
      "description": "Optional country hint. When `postalCode` is empty, a representative local ZIP for that country is used. A country alone is not sent to Amazon.",
      "editor": "select",
      "enum": [
        "auto",
        "AU",
        "BE",
        "BR",
        "CA",
        "DE",
        "EG",
        "ES",
        "FR",
        "GB",
        "IN",
        "IT",
        "JP",
        "MX",
        "NL",
        "PL",
        "SA",
        "SE",
        "SG",
        "TR",
        "AE",
        "US"
      ],
      "enumTitles": [
        "Auto (marketplace default)",
        "Australia",
        "Belgium",
        "Brazil",
        "Canada",
        "Germany",
        "Egypt",
        "Spain",
        "France",
        "United Kingdom",
        "India",
        "Italy",
        "Japan",
        "Mexico",
        "Netherlands",
        "Poland",
        "Saudi Arabia",
        "Sweden",
        "Singapore",
        "Turkey",
        "United Arab Emirates",
        "United States"
      ],
      "prefill": "auto",
      "sectionCaption": "Delivery",
      "title": "Delivery Country",
      "type": "string"
    },
    "domains": {
      "default": [],
      "description": "Optional list of marketplaces (e.g. amazon.com, amazon.de) to run bare ASINs and search terms across. Leave empty to use `marketplace` only.",
      "editor": "stringList",
      "example": [
        "amazon.com",
        "amazon.de"
      ],
      "items": {
        "type": "string"
      },
      "prefill": [],
      "title": "Additional Domains",
      "type": "array"
    },
    "failOnEmpty": {
      "default": false,
      "description": "Mark the run as FAILED when no product/search records are emitted.",
      "prefill": true,
      "title": "Fail on Empty",
      "type": "boolean"
    },
    "includeDetails": {
      "default": true,
      "description": "Fetch each discovery result's product page for full price, seller, variants, specs, reviews, and media fields. Disable for a cheaper search-card-only run.",
      "prefill": true,
      "sectionCaption": "Output",
      "title": "Fetch Product Details",
      "type": "boolean"
    },
    "includeFailed": {
      "default": true,
      "description": "Emit an error row (recordType=error, reason, httpStatus) when a product or discovery input fails instead of silently dropping it.",
      "prefill": true,
      "title": "Include Failure Rows",
      "type": "boolean"
    },
    "includeSponsored": {
      "default": true,
      "description": "Keep sponsored search cards. The isSponsored flag is always preserved.",
      "prefill": true,
      "title": "Include Sponsored Results",
      "type": "boolean"
    },
    "includeTopReviews": {
      "default": true,
      "description": "Include the inline top-review snippets Amazon renders publicly. Full review pagination is login-gated and is not supported.",
      "prefill": false,
      "title": "Include Top Reviews",
      "type": "boolean"
    },
    "includeVariants": {
      "default": true,
      "description": "Include parent ASIN, child ASINs, and variant dimensions. Per-variant price and stock are not available from the product page.",
      "prefill": false,
      "title": "Include Variants",
      "type": "boolean"
    },
    "language": {
      "default": "auto",
      "description": "Page language. `auto` uses the marketplace's own default. Explicit values set `?language=` and the matching Accept-Language header.",
      "editor": "select",
      "enum": [
        "auto",
        "en_US",
        "en_GB",
        "en_CA",
        "en_AU",
        "en_IN",
        "en_SG",
        "de_DE",
        "fr_FR",
        "it_IT",
        "es_ES",
        "es_MX",
        "pt_BR",
        "nl_NL",
        "nl_BE",
        "sv_SE",
        "pl_PL",
        "tr_TR",
        "ja_JP",
        "ar_AE",
        "ar_SA",
        "ar_EG"
      ],
      "enumTitles": [
        "Auto (marketplace default)",
        "English (US)",
        "English (UK)",
        "English (Canada)",
        "English (Australia)",
        "English (India)",
        "English (Singapore)",
        "German",
        "French",
        "Italian",
        "Spanish (Spain)",
        "Spanish (Mexico)",
        "Portuguese (Brazil)",
        "Dutch (Netherlands)",
        "Dutch (Belgium)",
        "Swedish",
        "Polish",
        "Turkish",
        "Japanese",
        "Arabic (UAE)",
        "Arabic (Saudi Arabia)",
        "Arabic (Egypt)"
      ],
      "prefill": "auto",
      "title": "Language",
      "type": "string"
    },
    "marketplace": {
      "default": "auto",
      "description": "Marketplace used for bare ASINs and keyword search terms. `auto` uses the first product URL's domain, or amazon.com.",
      "editor": "select",
      "enum": [
        "auto",
        "amazon.com",
        "amazon.ca",
        "amazon.com.mx",
        "amazon.com.br",
        "amazon.co.uk",
        "amazon.de",
        "amazon.fr",
        "amazon.it",
        "amazon.es",
        "amazon.nl",
        "amazon.com.be",
        "amazon.se",
        "amazon.pl",
        "amazon.com.tr",
        "amazon.ae",
        "amazon.sa",
        "amazon.eg",
        "amazon.in",
        "amazon.co.jp",
        "amazon.com.au",
        "amazon.sg"
      ],
      "enumTitles": [
        "Auto (from input URLs)",
        "United States",
        "Canada",
        "Mexico",
        "Brazil",
        "United Kingdom",
        "Germany",
        "France",
        "Italy",
        "Spain",
        "Netherlands",
        "Belgium",
        "Sweden",
        "Poland",
        "Turkey",
        "United Arab Emirates",
        "Saudi Arabia",
        "Egypt",
        "India",
        "Japan",
        "Australia",
        "Singapore"
      ],
      "prefill": "auto",
      "sectionCaption": "Marketplace & Locale",
      "title": "Marketplace",
      "type": "string"
    },
    "maxItems": {
      "default": 50,
      "description": "Maximum number of search/bestseller rows across all discovery inputs. Explicit product URLs/ASINs are always processed.",
      "maximum": 1000,
      "minimum": 1,
      "prefill": 1,
      "sectionCaption": "Limits",
      "title": "Max Discovery Items",
      "type": "integer"
    },
    "maxPages": {
      "default": 3,
      "description": "Maximum search-result pages to read per keyword or search URL (1-20).",
      "maximum": 20,
      "minimum": 1,
      "prefill": 1,
      "title": "Max Pages per Query",
      "type": "integer"
    },
    "maxPrice": {
      "description": "Maximum price for discovery (search) results. Leave empty for no upper bound.",
      "editor": "number",
      "maximum": 1000000,
      "minimum": 0,
      "title": "Maximum Price",
      "type": "number"
    },
    "minPrice": {
      "description": "Minimum price for discovery (search) results. Leave empty for no lower bound.",
      "editor": "number",
      "maximum": 1000000,
      "minimum": 0,
      "sectionCaption": "Discovery Filters",
      "title": "Minimum Price",
      "type": "number"
    },
    "minRating": {
      "default": "any",
      "description": "Minimum star rating for discovery results. `4` is the live-validated 4+ stars filter; lower values are best effort.",
      "editor": "select",
      "enum": [
        "any",
        "4",
        "3",
        "2",
        "1"
      ],
      "enumTitles": [
        "Any rating",
        "4 stars and up",
        "3 stars and up",
        "2 stars and up",
        "1 star and up"
      ],
      "prefill": "any",
      "title": "Minimum Rating",
      "type": "string"
    },
    "postalCode": {
      "default": "",
      "description": "Local ZIP/postal code for the delivery location. The actor validates it against the marketplace format and skips the location change if it does not match.",
      "editor": "textfield",
      "example": "10001",
      "prefill": "",
      "title": "Postal Code",
      "type": "string"
    },
    "primeOnly": {
      "default": false,
      "description": "Apply Amazon's Prime filter to keyword searches. Prime eligibility itself is not emitted because the page does not expose a reliable per-item signal.",
      "prefill": false,
      "title": "Prime Only",
      "type": "boolean"
    },
    "productUrls": {
      "default": [],
      "description": "Amazon product URLs to scrape. Any mix of the 21 supported country domains is allowed, e.g. https://www.amazon.com/dp/B0B8PD8TTP.",
      "editor": "stringList",
      "example": [
        "https://www.amazon.com/dp/B0B8PD8TTP",
        "https://www.amazon.de/dp/B008F7WGCK"
      ],
      "items": {
        "type": "string"
      },
      "prefill": [],
      "sectionCaption": "Inputs",
      "title": "Product URLs",
      "type": "array"
    },
    "proxyConfiguration": {
      "default": {
        "useApifyProxy": true
      },
      "description": "Optional. The actor starts direct and escalates through Apify Proxy automatically only if Amazon blocks the request. No setup is required.",
      "editor": "proxy",
      "prefill": {
        "useApifyProxy": true
      },
      "sectionCaption": "Proxy",
      "title": "Proxy Configuration",
      "type": "object"
    },
    "proxyCountry": {
      "default": "AUTO",
      "description": "Optional proxy exit country. `AUTO` uses the marketplace's own country for every domain.",
      "editor": "select",
      "enum": [
        "AUTO",
        "US",
        "GB",
        "DE",
        "FR",
        "ES",
        "IT",
        "CA",
        "AU",
        "JP",
        "IN",
        "BR",
        "MX",
        "NL",
        "SE",
        "PL",
        "TR",
        "AE",
        "SA",
        "SG",
        "BE",
        "EG"
      ],
      "enumTitles": [
        "Auto (per marketplace)",
        "United States",
        "United Kingdom",
        "Germany",
        "France",
        "Spain",
        "Italy",
        "Canada",
        "Australia",
        "Japan",
        "India",
        "Brazil",
        "Mexico",
        "Netherlands",
        "Sweden",
        "Poland",
        "Turkey",
        "United Arab Emirates",
        "Saudi Arabia",
        "Singapore",
        "Belgium",
        "Egypt"
      ],
      "prefill": "AUTO",
      "title": "Proxy Country",
      "type": "string"
    },
    "rateLimitDelay": {
      "default": 1,
      "description": "Base pause in seconds between product/search requests (0-10). A random value between this and twice this is used.",
      "maximum": 10,
      "minimum": 0,
      "prefill": 0,
      "sectionCaption": "Performance",
      "title": "Delay Between Requests",
      "type": "integer"
    },
    "searchTerms": {
      "default": [],
      "description": "Keyword queries to run on Amazon search pages. Price/rating/deal/condition/sort filters are applied as URL parameters.",
      "editor": "stringList",
      "example": [
        "air fryer",
        "noise cancelling headphones"
      ],
      "items": {
        "type": "string"
      },
      "prefill": [],
      "sectionCaption": "Discovery",
      "title": "Search Terms",
      "type": "array"
    },
    "searchUrls": {
      "default": [],
      "description": "Full Amazon search URLs to pass through, including your own `i=`, `rh=`, `low-price`, and `s=` parameters. Pagination is added automatically.",
      "editor": "stringList",
      "example": [
        "https://www.amazon.com/s?k=air+fryer&rh=p_72:1248909011"
      ],
      "items": {
        "type": "string"
      },
      "prefill": [],
      "title": "Search URLs",
      "type": "array"
    },
    "sortBy": {
      "default": "relevance",
      "description": "Sort order for keyword searches. Search-URL pass-through keeps its own sort.",
      "editor": "select",
      "enum": [
        "relevance",
        "price-asc",
        "price-desc",
        "review-rank",
        "newest"
      ],
      "enumTitles": [
        "Relevance",
        "Price: low to high",
        "Price: high to low",
        "Average review",
        "Newest arrivals"
      ],
      "prefill": "relevance",
      "title": "Sort By",
      "type": "string"
    },
    "stock": {
      "default": "any",
      "description": "Best-effort stock filter applied after parsing. Records with unknown stock pass through.",
      "editor": "select",
      "enum": [
        "any",
        "inStock",
        "outOfStock"
      ],
      "enumTitles": [
        "Any stock",
        "In stock only",
        "Out of stock only"
      ],
      "prefill": "any",
      "title": "Stock",
      "type": "string"
    }
  },
  "required": [],
  "schemaVersion": 1,
  "title": "Amazon Multi-Domain Product Price & Detail Scraper Input",
  "type": "object"
}

Output schema

Published result links and storage locations. This schema is not an exhaustive contract for every field in a dataset record.

FieldTypeRequiredDescription
productsstringoptionalDataset containing product, searchResult, bestseller, and error records.

Download the published output schema

View complete JSON
{
  "actorOutputSchemaVersion": 1,
  "description": "One record per product, search result, or bestseller entry, plus explicit error rows. Fields include ASIN/parent ASIN, price/list price/coupon/deal, rating/review count, BSR, seller/buybox, offers, availability, variants, images/videos/specs/A+ text, top review snippets, marketplace, URL, and scrapedAt. Empty fields are omitted.",
  "properties": {
    "products": {
      "description": "Dataset containing product, searchResult, bestseller, and error records.",
      "template": "{{links.apiDefaultDatasetUrl}}/items",
      "title": "Amazon products and discovery results",
      "type": "string"
    }
  },
  "title": "Amazon Multi-Domain Product Price & Detail Scraper Output"
}

Dataset schema

Published dataset views and any declared field definitions. A view can select only a subset of the returned record fields.

Download the published dataset schema

View complete JSON
{
  "actorSpecification": 1,
  "views": {
    "overview": {
      "display": {
        "component": "table",
        "properties": {
          "asin": {
            "format": "text",
            "label": "ASIN"
          },
          "brand": {
            "format": "text",
            "label": "Brand"
          },
          "inStock": {
            "format": "boolean",
            "label": "In Stock"
          },
          "price": {
            "format": "text",
            "label": "Price"
          },
          "recordType": {
            "format": "text",
            "label": "Type"
          },
          "reviewsCount": {
            "format": "number",
            "label": "Reviews"
          },
          "stars": {
            "format": "number",
            "label": "Rating"
          },
          "title": {
            "format": "text",
            "label": "Product Title"
          },
          "url": {
            "format": "link",
            "label": "URL"
          }
        }
      },
      "title": "Products & discovery",
      "transformation": {
        "fields": [
          "recordType",
          "title",
          "asin",
          "price",
          "stars",
          "reviewsCount",
          "inStock",
          "brand",
          "url"
        ]
      }
    }
  }
}

Key-value schema

Published key-value store definitions, when provided by this build.

This definition is not present in the default published build. See the published README for available documentation.

Published README

Read the full published documentation

Amazon Multi-Domain Product Price & Detail Scraper

Scrape Amazon products and discovery lists across 21 country marketplaces. Give it product URLs or ASINs and get back price, coupon, deal badges, rating, review count, bestseller rank, seller and buy-box details, offers, availability, variants, images, videos, specs, A+ text, and public top-review snippets. You can also start from keyword terms, full search URLs, or bestseller list URLs. No login, cookies, or API key is needed.

What this actor does

  • Products by URL or ASIN across amazon.com, .co.uk, .de, .fr, .it, .es, .ca, .com.au, .co.jp, .in, .com.br, .com.mx, .nl, .se, .pl, .com.tr, .ae, .sa, .sg, .com.be, and .eg.
  • Discovery by keyword, search URL, or bestseller list with price, rating, deal, condition, and sort filters on keyword searches.
  • Locale-aware output: marketplace language, display currency, delivery ZIP, and the rendered locationText are carried on every record.
  • Commercial fields: coupon, deal badge, status badges, bought-past-month, list price, discount percent, offer count, and lowest offer.
  • Explicit failure rows with a reason code instead of silently dropping an input.
  • Empty fields are omitted from each record.

Output per product

  • recordType - product, searchResult, bestseller, or error
  • asin, parentAsin, title, brand, url, marketplace, status, warnings[]
  • price (value, currency, display), listPrice, currency, discountPercent, onSale, savingsPercentage
  • coupon (text, percent, amount, type), dealBadge, badges[]
  • stars, reviewsCount, starsBreakdown, ratingHistogram, customersSay
  • topReviews[] - inline public snippets (author, rating, title, date, text, verified, variant, helpful)
  • boughtPastMonth (text, value)
  • bestsellerRanks[] (rank, category), category, categories[]
  • inStock, inStockText, availability, delivery, fastestDelivery, locationText
  • seller (name, id, url, soldById, sellerRatingText)
  • buybox (shipsFrom, soldBy, soldByAmazon, isFBA)
  • offers (count, lowestPrice), offerCount, lowestOfferPrice
  • variantAsins[], variants[] (asin, isCurrent), variantAttributes[]
  • images[], thumbnailImage, videos[], features[], description, aplusText
  • details[], specifications (upc, ean, gtin, modelNumber, dimensions, and more)
  • documents[], sizeChart[], returnPolicy, support, sustainabilityFeatures
  • productType, book for book listings
  • manufacturer, modelNumber, weight, productDimensions, countryOfOrigin, dateFirstAvailable
  • scrapedAt - ISO-8601 UTC timestamp

Output per search or bestseller row

Search rows also carry query, page, position, isSponsored, and searchUrl. Bestseller rows carry rank, listUrl, and listType: "bestseller". When includeDetails is on, the row is enriched with the full product fields above and foundVia is set.

Output per failure

  • recordType: "error"
  • reason - INVALID_INPUT, NOT_FOUND, BLOCKED_WAF, BLOCKED_CAPTCHA, UNAVAILABLE, NO_BUYBOX, PARSE_DEGRADED, TIMEOUT, or SEARCH_NO_RESULTS
  • asin, url, marketplace, httpStatus, attempts, retryable, message, scrapedAt

Input

Field Type Default Description
productUrls array - Product URLs to scrape. Any mix of supported domains
asins array - Bare 10-character ASINs. Built into /dp/ URLs
searchTerms array - Keyword searches, e.g. air fryer
searchUrls array - Full search URLs, with your own i=, rh=, and s= parameters
bestsellerUrls array - /zgbs/ or /gp/bestsellers/ list URLs
marketplace string auto Marketplace for bare ASINs and keyword terms
domains array - Run ASINs and keyword terms across several marketplaces at once
language string auto Page language, or the marketplace default
currency string auto Display currency, or the marketplace default
deliveryCountry string auto Country hint used to choose a representative ZIP
postalCode string - Local delivery ZIP; validated against the marketplace format
minPrice / maxPrice number - Discovery price range
minRating string any 4, 3, 2, or 1 stars and up
dealsOnly boolean false Apply Amazon's deals filter to keyword searches
primeOnly boolean false Apply Amazon's Prime filter to keyword searches
condition string any new, used, renewed, or collectible
brand string - Added to keyword terms and used as a title/brand post-filter
stock string any inStock or outOfStock post-filter; unknown stock passes through
sortBy string relevance price-asc, price-desc, review-rank, or newest
maxItems integer 50 Cap on discovery rows (1-1000). Product inputs are not capped
maxPages integer 3 Pages per keyword/search URL (1-20)
includeDetails boolean true Fetch the product page for each discovery result
includeSponsored boolean true Keep sponsored search cards; isSponsored is always kept
includeVariants boolean true Include parent/child ASINs and variant dimensions
includeTopReviews boolean true Include inline public review snippets
includeFailed boolean true Emit error rows for failed inputs
failOnEmpty boolean false Mark the run failed when no records are emitted
rateLimitDelay integer 1 Base pause between requests (0-10 seconds)
proxyConfiguration object automatic Optional proxy override; the actor works without changing it
proxyCountry string AUTO Optional proxy exit country; AUTO uses each marketplace's own country

Example: one product

{
  "asins": ["B0B8PD8TTP"],
  "postalCode": "10001"
}

Example: products across three marketplaces

{
  "productUrls": [
    "https://www.amazon.com/dp/B0B8PD8TTP",
    "https://www.amazon.de/dp/B008F7WGCK",
    "https://www.amazon.co.uk/dp/B09B7SB46R"
  ],
  "includeTopReviews": true,
  "includeVariants": true
}

Example: keyword discovery with filters

{
  "searchTerms": ["air fryer"],
  "marketplace": "amazon.com",
  "minPrice": 20,
  "maxPrice": 100,
  "minRating": "4",
  "dealsOnly": true,
  "sortBy": "price-asc",
  "maxItems": 100,
  "maxPages": 3,
  "includeDetails": true
}

Example: cross-marketplace ASIN comparison and a bestseller list

{
  "asins": ["B0B8PD8TTP"],
  "domains": ["amazon.com", "amazon.co.uk", "amazon.de"],
  "bestsellerUrls": ["https://www.amazon.com/gp/bestsellers/kitchen/"],
  "maxItems": 30
}

Use cases

  • Price and buy-box monitoring - track price, list price, coupon, seller, offers, and stock per marketplace
  • Catalog enrichment - pull images, specs, variants, A+ text, and identifiers into your own catalog
  • Keyword and category research - find products by search filters or bestseller rank, then enrich the winners
  • Cross-marketplace comparison - run the same ASIN across several country sites in one job
  • Review and reputation tracking - monitor star ratings, review counts, rating breakdowns, and public review snippets
  • Deal monitoring - surface coupons, limited-time deals, and discount percentages

FAQ

Which marketplaces are supported? 21 country domains: amazon.com, amazon.ca, amazon.com.mx, amazon.com.br, amazon.co.uk, amazon.de, amazon.fr, amazon.it, amazon.es, amazon.nl, amazon.com.be, amazon.se, amazon.pl, amazon.com.tr, amazon.ae, amazon.sa, amazon.eg, amazon.in, amazon.co.jp, amazon.com.au, and amazon.sg.

Do I need cookies or an API key? No. Everything the actor returns comes from public Amazon pages. There is no login step and no credential input.

Do I need to set up a proxy? No. The actor chooses a working connection automatically and only escalates when Amazon blocks a request. You can leave proxyConfiguration at its default.

Why does the displayed price differ from the local shelf price? Amazon converts display currency when you request a different currency from the marketplace. The record always carries currency and locationText so you can see which currency and delivery location were used. For exact local retail pricing, keep currency on auto and set a local postalCode.

Can I get Prime eligibility? No. The 2026 Amazon page exposes only promotional or hidden Prime icons, not a reliable per-item eligibility signal. primeOnly applies Amazon's own search filter, but no Prime field is emitted.

Can I get full reviews or per-variant prices? No. Full review pages require a login, so only the inline public snippets are returned. Variants expose parent and child ASINs plus dimensions, but the product page does not carry per-variant prices or stock.

Why is a field missing from a record? Empty values are omitted. Fields such as coupon, dealBadge, aplusText, videos, topReviews, and specifications only appear when that product or marketplace actually renders them.

What happens to a bad ASIN or a blocked page? With includeFailed on, the actor emits an error row with a reason code and continues with the rest of the batch. A 404, a WAF challenge, and an out-of-stock product are reported as different reasons.

Does the brand filter use Amazon's brand facets? No. brand is added to the keyword text and used as a title/brand post-filter. It is not a structured Amazon brand-ID resolver; use searchUrls when you already have a facet URL.

Can I scrape category browse pages? Not directly. Category /b?node= pages do not expose product cards reliably. Use a keyword search URL with the category parameter (/s?k=...&i=...) or a bestseller list URL instead.

Why are some commercial fields only best effort? Coupons, deal badges, bought-past-month, A+ text, videos, and top-review snippets are rendered only for some products, marketplaces, or session variants. When Amazon does not render one, the field is omitted rather than guessed.

Is this affiliated with Amazon? No. This is a third-party actor that reads publicly available Amazon pages. It is not affiliated with, endorsed by, or sponsored by Amazon.

Python quickstart

Use a schema-derived input and the Python standard library to start a run. An Apify account and token are required for execution.

Open the step-by-step Python guide →

Source build 0Bfb9bnO1sEJObmDM. Documentation is regenerated from the default published build; private drafts are not included.