amzn APIamzn.in ↗
Access Amazon India product search, details, specifications, and category bestsellers via a single REST API. Returns ASINs, prices, ratings, and specs.
What is the amzn API?
The amzn.in API exposes 4 endpoints for retrieving product data from Amazon India, covering search results, full product detail pages, technical specifications, and category bestseller rankings. The get_product_details endpoint returns up to 10 fields per product including price, MRP, availability, feature bullet points, and high-resolution image URLs — enough to build a complete product card or price comparison view.
curl -X GET 'https://api.parse.bot/scraper/f76ff521-a502-4da2-acf5-e409ce0aff4c/search_products?page=1&query=headphones' \ -H 'X-API-Key: $PARSE_API_KEY'
Typed, relational, agent-ready
A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.
- Fully typed · autocompletes
- Objects link to objects
- Typed errors & pagination
Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:
uv add parse-sdk uv run parse init uv run parse add --marketplace amzn-in-api
uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.
from parse_apis.amazon_india_scraper_api import AmazonIndia, Product, ProductSummary, BestsellerProduct, Specifications
amazon = AmazonIndia()
# Search for products
for item in amazon.products.search(query="wireless headphones"):
print(item.asin, item.title, item.price, item.rating)
# Drill into full product details from a search result
product = item.details()
print(product.title, product.brand, product.price, product.availability)
# Get technical specifications
specs = product.specifications()
print(specs.asin, specs.specifications)
break
# Fetch a product directly by ASIN
headphones = amazon.products.get(asin="B0BS1QCFHX")
print(headphones.title, headphones.brand, headphones.price, headphones.mrp)
# Browse category bestsellers
for bestseller in amazon.category("electronics").bestsellers():
print(bestseller.rank, bestseller.asin, bestseller.title, bestseller.price)
# Navigate to full details
full = bestseller.details()
print(full.title, full.rating, full.review_count)
break
Full-text search over Amazon India's product catalog. Returns a paginated list of products matching the query keyword, each with basic info (title, price, rating, ASIN). Pages beyond 1 may be unreliable due to upstream limitations. Each result carries an ASIN usable for detail/spec lookups.
| Param | Type | Description |
|---|---|---|
| page | integer | Page number for results. Pages beyond 1 may return errors due to upstream limitations. |
| queryrequired | string | Search keyword (e.g. 'headphones', 'laptop under 50000'). |
{
"type": "object",
"fields": {
"page": "page number echoed back",
"query": "search keyword echoed back",
"results": "array of product objects with asin, title, price, mrp, rating, reviews_count, image_url, url",
"total_results": "number of results returned on this page"
},
"sample": {
"data": {
"page": 1,
"query": "headphones",
"results": [
{
"mrp": "5999",
"url": "https://www.amazon.in/dp/B0F9YV4KDD",
"asin": "B0F9YV4KDD",
"price": "1999",
"title": "GOBOULT Soniq Over Ear Bluetooth Headphones with 70H Playtime",
"rating": "3.8",
"image_url": "https://m.media-amazon.com/images/I/71TF0d31ZtL._AC_UY218_.jpg",
"reviews_count": "1.3K"
}
],
"total_results": 22
},
"status": "success"
}
}About the amzn API
What the API Returns
The search_products endpoint accepts a query string — natural language phrases like 'laptop under 50000' are supported — and returns an array of matching products, each with an asin, title, price, mrp, rating, reviews_count, image_url, and direct url. The page parameter allows basic pagination, though results beyond page 1 may be unreliable depending on upstream availability.
Product Details and Specifications
get_product_details takes a single asin and returns the full product record: brand, title, current price, mrp, rating, review_count, availability status, a description array of feature bullet points, and an images array of high-resolution URLs. For structured technical data, get_product_specifications returns a flat specifications object of key-value pairs extracted from the product overview and technical details tables — useful for attribute-level comparisons (e.g. battery capacity, resolution, weight).
Bestseller Rankings
get_category_bestsellers accepts a category path string matching Amazon India's bestseller URL structure (e.g. 'electronics', 'books', 'kitchen'). It returns a ranked list of products with rank, asin, title, price, rating, reviews_count, image_url, and url. The total_products field tells you how many items were returned for that category page.
Scope and Limitations
All endpoints are scoped to Amazon India (amazon.in) and return prices in Indian Rupees. Price and availability fields are nullable — null is returned when a product is unavailable or the field is not listed on the source page. Search pagination beyond page 1 is documented as potentially unreliable. Customer review text, seller information, and Q&A content are not exposed by the current endpoint set.
The amzn API is a managed, monitored endpoint for amzn.in — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when amzn.in changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.
This isn't an official amzn.in API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.
Will this API break when the source site changes?+
Is this an official API from the source site?+
Can I fix or extend this API myself if I need a new endpoint or field?+
What happens if I call an endpoint that has an issue?+
- Track price and MRP gaps for products by ASIN to identify discount depth over time
- Build category bestseller feeds for electronics, books, or kitchen using
get_category_bestsellers - Populate product catalog pages with titles, images, bullet-point descriptions, and availability from
get_product_details - Extract technical specification tables for side-by-side product comparisons using
get_product_specifications - Run keyword-based product discovery across Amazon India using natural-language
querystrings - Monitor rating and review count changes across a list of ASINs for competitive analysis
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does Amazon India have an official developer API?+
What does `get_product_specifications` return that `get_product_details` doesn't?+
get_product_details returns marketing-oriented data: bullet-point descriptions, brand, images, price, and rating. get_product_specifications returns a structured key-value object from the technical details tables — fields like connector type, model number, battery capacity, or dimensions — which are separate from the feature bullets and not included in the detail endpoint.How reliable is pagination in `search_products`?+
page parameter is accepted for higher pages, but the endpoint documentation explicitly notes that results beyond page 1 may return errors due to upstream limitations. Applications that need deep result sets should account for this with error handling.