Amazon Scraper API
View as MarkdownExtract structured product data from Amazon at scale

The Amazon Scraper API is a specialized plugin that extracts structured data from Amazon.com and all international Amazon marketplaces. Unlike raw HTML scraping that requires parsing, this API returns clean, structured JSON responses with product details, pricing, seller offers, and search results (ready to use in your applications).
Credit Usage: Each successful Amazon Scraper API request costs 1 credit. For bulk processing, use the Async API with plugins.
Key Features
- Structured JSON Output: Get parsed product data including ASIN, title, price, ratings, images, and technical details without writing HTML parsers.
- Location Targeting: Pass a
zipcodefor ZIP-level marketplaces orcountryNamefor marketplaces without ZIP-level delivery to localize pricing, stock availability, and shipping information. - Multi-Marketplace Support: Scrape from 23 Amazon marketplaces including US, UK, Germany, Ireland, and more.
- Language Selection: Request pages in specific languages supported by each marketplace, including all nine display languages available on Amazon.com.
- Currency Conversion: Ask Amazon to display prices in any of its roughly 76 supported ISO 4217 currencies.
- Include HTML Option: Add
include_html=trueto any structured endpoint to receive the full raw HTML alongside the parsed JSON data. - Automatic Session Management: Sessions are automatically maintained for each marketplace and supported location combination.
- No Blocks or CAPTCHAs: All anti-bot measures are handled automatically by Scrape.do.
Endpoints
| Endpoint | Method | Output | Description | Details |
|---|---|---|---|---|
/plugin/amazon/pdp | GET | JSON | Extract product details, descriptions, pricing, images, and specifications | more |
/plugin/amazon/offer-listing | GET | JSON | Get all seller offers with prices and shipping info | more |
/plugin/amazon/search | GET | JSON | Search results with product listings and rankings | more |
/plugin/amazon/deals | GET | JSON | Discounted products with current and pre-deal prices, filterable by category and price | more |
/plugin/amazon/bestsellers | GET | JSON | Best Sellers and New Releases chart for a category, with ranks, prices, and ratings | more |
/plugin/amazon/seller | GET | JSON | Seller profile: display name, business details, and feedback percentage | more |
/plugin/amazon/ | GET | HTML | Raw HTML from any Amazon URL with geo-targeting | more |
Location Parameters
Amazon displays different prices, stock levels, and shipping options based on the delivery location. Use zipcode for marketplaces that support ZIP-level delivery localization, or countryName for marketplaces where Amazon uses country-level delivery settings.
Use only one location parameter per request. Passing countryName that just names the marketplace's own home country (for example, countryName=Turkey with geocode=tr) is unnecessary and ignored because that marketplace is already localized to it. The structured endpoints (/pdp, /offer-listing, /search) return parsed JSON for both ZIP-level and country-level requests.
ZIP-Level Marketplaces
| Geocode | Country | Format | Example ZIP Codes |
|---|---|---|---|
us | United States | Numeric | 14217, 32216, 90210 |
gb / uk | United Kingdom | Alphanumeric | AB44 1LE, SW1A 1AA, M1 1AE |
de | Germany | Numeric | 10115, 80331, 20095 |
fr | France | Numeric | 75001, 13001, 69001 |
it | Italy | Numeric | 00100, 20121, 80100 |
es | Spain | Numeric | 28001, 08001, 41001 |
ca | Canada | Alphanumeric | K1W 0C8, M5V 3L9, V6B 4Y8 |
jp | Japan | Numeric | 100-0001, 530-0001, 460-0008 |
in | India | Numeric | 560001, 400001, 110001 |
ie | Ireland | Eircode | D02 AF30 |
za | South Africa | Numeric | 2000 |
Country-Level Marketplaces
For tr, br, au, mx, nl, be, pl, se, ae, sa, sg, and eg, pass countryName when you need a country-level delivery location instead of a ZIP code.
ZIP code format is validated per marketplace. Invalid formats are rejected with an error message showing the expected format.
Language Parameter
The language parameter allows you to request Amazon pages in a specific language. This is useful when scraping international marketplaces where multiple languages are available.
Supported Languages by Country
| Country | Geocode | Supported Languages |
|---|---|---|
| United States | us | EN, ES, AR, DE, HE, KO, PT, ZH, ZH-TW |
| United Kingdom | gb | EN |
| Germany | de | DE, EN, CS, NL, PL, TR, DA |
| France | fr | FR, EN |
| Italy | it | IT, EN |
| Spain | es | ES, PT, EN |
| Canada | ca | EN, FR |
| Australia | au | EN |
| Japan | jp | JA, EN, ZH |
| India | in | EN, HI, TA, TE, KN, ML, BN, MR |
| Brazil | br | PT |
| Mexico | mx | ES |
| Turkey | tr | TR |
| Netherlands | nl | NL, EN |
| Singapore | sg | EN |
| UAE | ae | EN, AR |
| Saudi Arabia | sa | AR, EN |
| Poland | pl | PL |
| Sweden | se | SV, EN |
| Belgium | be | NL, FR, EN |
| Egypt | eg | EN, AR |
Language codes use uppercase ISO 639-1 values, except ZH-TW for Traditional Chinese. ZH selects Simplified Chinese. The aliases ZH_TW and zh-tw are also accepted. If a language is unavailable for the selected marketplace, the API returns 400 language_not_supported with the supported values.
Amazon.com serves AR, DE, HE, KO, PT, ZH, and ZH-TW only when the shopper's delivery country is outside the United States. If you request one of these languages without a location, the API automatically selects a cross-border delivery country. Pass countryName when you need a specific country.
A US zipcode can be combined only with EN or ES. Combining a US ZIP code with another Amazon.com language returns 400 zipcode_language_conflict and a languages_with_zipcode list instead of silently ignoring either setting.
Currency Conversion
Use the currency parameter with an ISO 4217 code to request Amazon's converted display prices. Amazon supports roughly 76 currencies, including USD, EUR, GBP, ILS, AED, KRW, CZK, and TWD. Parsed price fields report the converted code in currencyCode; PDP responses also return currency and currency_symbol.
When a currency has no dedicated glyph, Amazon displays the code itself and currency_symbol may repeat that code. For example, ILS uses ₪, while CZK may use CZK as the symbol.
Error Handling
All endpoints return errors in a consistent format:
{
"error": "error_code",
"message": "Human readable error message"
}Common Error Codes
| Status Code | Error | Description |
|---|---|---|
400 | invalid_zipcode | ZIP code format doesn't match country requirements |
400 | language_not_supported | Requested language not available for the geocode |
400 | token is required | Missing authentication token |
429 | concurrent limit exceeded | Too many simultaneous requests |
502 | amazon session client timeout | Session expired; retry the request |

