# ScrapingBee Amazon Search API > Search Amazon and receive structured product results. ## Endpoint and authentication - Endpoint: `https://app.scrapingbee.com/api/v1/amazon/search` - Required input: `query`, a product text query. - Authentication: `Authorization: Bearer YOUR_API_KEY`. - The `api_key` query parameter remains supported for backward compatibility but is deprecated for new integrations. - Response format: structured JSON. ## Request controls | Parameter | Default / behavior | | --- | --- | | `query` | Required product search text; URL-encode special characters. | | `light_request` | `true`; use `false` for browser-rendered results. | | `start_page`, `pages` | `1`, `1`; fetches consecutive pages starting at `start_page`. | | `domain` | `com`; one of `com`, `ae`, `ca`, `cn`, `co.jp`, `co.uk`, `com.au`, `com.be`, `com.br`, `com.mx`, `com.tr`, `de`, `eg`, `es`, `fr`, `in`, `it`, `nl`, `pl`, `sa`, `se`, or `sg`. | | `country`, `zip_code` | ISO country and postal-code localization; controls availability, shipping, and regional pricing. | | `language`, `currency` | ISO language and ISO 4217 display currency. Currency conversion may be unavailable for a domain or product. | | `device` | `desktop` (default), `mobile`, or `tablet`; layouts and results can differ. | | `sort_by` | `most_recent`, `price_low_to_high`, `price_high_to_low`, `average_review`, `bestsellers`, or `featured`; availability depends on search category. | | `category_id`, `merchant_id` | Restrict results to an Amazon category or seller. | | `autoselect_variant` | `false` by default; when true, selects the default/most-popular variant. | | `add_html` | `false` by default; set `true` to include page HTML. | | `screenshot` | Forces a browser screenshot. | | `tag` | Response-header label only. | ## Pagination, localization, and rendering - `start_page=2&pages=3` fetches pages 2, 3, and 4. Cost is assessed per fetched page. - Do not send `country` matching the selected Amazon-domain country, for example `country=fr&domain=fr`; use `zip_code` instead. The matching pair returns `400`. - Light requests do not use a browser and may omit data available in rendered requests. Use `light_request=false` when you require dynamic data. - `screenshot=true` costs 15 credits, ignores `light_request`, and returns a base64-encoded image. - The source front matter claims that `parse=false` returns HTML, but its parameter contract does not define it. Use `add_html=true` for supported HTML output; do not depend on `parse=false` without live verification. ## Cost, retries, and response - The quick-start response and pricing table specify 5 credits for each light-request page and 15 for each rendered page. A later light-request paragraph says 10 credits; this contradiction is documented in [reference notes](https://www.scrapingbee.com/llms/reference-notes.txt). Verify billing-sensitive workloads in the dashboard. - Failed searches are retried by ScrapingBee for up to 30 seconds. Allow for this server-side retry window in client timeouts. - Responses provide `products`, `products_count`, `refinements`, `page`, `url`, and optional `html`. Products can include ASIN, title, price/currency, rating, sponsorship, image URL, and organic position.