Ecommerce Data API

Amazon Reviews API for Any ASIN

Amazon reviews API that returns any product's reviews by ASIN as JSON, with star filters, dates, variation SKUs, media flags and verified-purchase and Vine markers.
Sep 14, 2026

What the Amazon reviews API returns

The Product Reviews endpoint returns the customer reviews for an ASIN page by page, with the text and the metadata you need to separate one kind of review from another.

Each item in items[] is one review:

FieldWhat it tells you
star, title, contentStar rating and the review text
dateReview date as a millisecond timestamp (the documented example is 1772380800000)
skusThe variation the reviewer bought, such as a size or color
likesHow many shoppers marked the review as helpful
image, video, images, videosWhether the review has media, and the media links
verifiedWritten after a verified purchase
vineWritten by an Amazon Vine reviewer
free, experienceReceived free, or written through an early-experience program
author, authorLabelsReviewer name and profile labels

The full field list is in the Product Reviews reference.

See real responses

Saved responses captured from the live API on 2026-10-15, not live calls. Create a key to query any ASIN or keyword.

Run it on your own ASIN or keyword

POST/v1/amazon/review200 OK
Request
{
  "marketplace": "US",
  "asin": "B08CK5Z5Q1",
  "page": 1,
  "size": 2,
  "stars": [
    1,
    2
  ]
}
Response
{
  "request_id": "3abbd602-e5d3-4372-900a-d7cc927f9a31",
  "data": {
    "total": 345,
    "pages": 173,
    "page": 1,
    "size": 2,
    "items": [
      {
        "author": "D…",
        "title": "Do not buy this piece of crap collar",
        "content": "I bought this collar 2 months ago  It is falling apart. The stitches are coming apart. Do not buy this piece of crap collar. I wish I could give this collar a 50 below zero rating<br>",
        "date": 1788710400000,
        "star": 1,
        "authorLabels": null,
        "skus": [
          "Size: Large (Pack of 1)",
          "Color: Teal"
        ],
        "likes": 0,
        "verified": false,
        "vine": false
      },
      {
        "author": "A…",
        "title": "D rings are now plastic - not metal! Very unhappy with this change.",
        "content": "I have purchased this collar in the past and was satisfied, but am returning the two collars I just purchased because the product is not the same now. The Amazon description still says the D ring is made of metal, but the collars I received have plastic D rings which are not acceptable as I believe they are a safety hazard for my large dogs.<br>",
        "date": 1787673600000,
        "star": 1,
        "authorLabels": [
          "Verified Purchase"
        ],
        "skus": [
          "Size: Large (Pack of 1)",
          "Color: Hotpink"
        ],
        "likes": 0,
        "verified": true,
        "vine": false
      }
    ]
  }
}

Request example

curl --request POST \
  --url https://ecommercedataapi.com/v1/amazon/review \
  --header "Content-Type: application/json" \
  --header "X-API-Key: ${ECOMMERCE_DATA_API_KEY}" \
  --data '{
    "marketplace": "US",
    "asin": "B08CK5Z5Q1",
    "page": 1,
    "size": 20,
    "stars": [1, 2, 3]
  }'
  • asin is required; marketplace accepts US, JP, UK, DE, FR, IT, ES, CA, IN, MX, BR, AU and AE.
  • stars limits results to the listed star ratings. [1, 2, 3] returns only critical reviews, which is usually where analysis starts.
  • Page through results with page and size; the response carries total and pages.

A real response

This is a trimmed response to the request above with "stars": [1, 2] and "size": 2. Reviewer names are shortened here; the API returns them as shown on Amazon.

{
  "request_id": "3abbd602-e5d3-4372-900a-d7cc927f9a31",
  "data": {
    "total": 345,
    "pages": 173,
    "page": 1,
    "size": 2,
    "items": [
      {
        "author": "A…",
        "title": "D rings are now plastic - not metal! Very unhappy with this change.",
        "content": "I have purchased this collar in the past and was satisfied, but am returning the two collars I just purchased because the product is not the same now. …<br>",
        "date": 1787673600000,
        "star": 1,
        "authorLabels": ["Verified Purchase"],
        "skus": ["Size: Large (Pack of 1)", "Color: Hotpink"],
        "images": null,
        "videos": null,
        "likes": 0,
        "image": false,
        "video": false,
        "verified": true,
        "vine": false,
        "free": false,
        "experience": false
      }
    ]
  }
}

Two things to notice. total counts only the reviews that match stars, so this one call tells you the product has 345 one- and two-star reviews. And the review itself reports a change in the product (metal D rings replaced by plastic) that no rating or sales metric would show. That is the kind of signal the Amazon reviews API exists to surface.

Collecting every critical review for an ASIN

One page holds at most 20 reviews, and page goes up to 100, so a single star filter reaches up to 2,000 reviews. To pull all of them, read pages from the first response and loop:

import os
import requests

URL = "https://ecommercedataapi.com/v1/amazon/review"
HEADERS = {"X-API-Key": os.environ["ECOMMERCE_DATA_API_KEY"]}


def critical_reviews(asin, marketplace="US"):
    page, pages = 1, 1
    while page <= min(pages, 100):
        body = {
            "marketplace": marketplace,
            "asin": asin,
            "stars": [1, 2, 3],
            "page": page,
            "size": 20,
        }
        res = requests.post(URL, json=body, headers=HEADERS, timeout=30)
        res.raise_for_status()
        data = res.json()["data"]
        yield from data["items"]
        pages = data["pages"]
        page += 1

Budget it before you run it: every page is one call, so the 345 reviews above take 18 calls. Split the work by star rating ([1], then [2], then [3]) when one filter has more than 2,000 reviews.

Common workflows

  1. Find what to fix. Pull the 1–3 star reviews for your ASIN and your main competitors (the Amazon search API lists who ranks for your keyword), then sort complaints into product problems, listing problems and one-off issues. How to analyse Amazon reviews walks through the method.
  2. Split by variation. Group reviews on skus. When negatives concentrate on one size or color, the problem is probably that SKU, not the whole product line.
  3. Track review history. Store date with each review and compare periods, for example before and after a product change or a new listing version.
  4. Weight reviews by source. Keep verified, vine, free and experience reviews apart before counting sentiment. The four sources of an Amazon review explains why they should not be pooled, and exporting reviews for analysis covers the spreadsheet side.

Limits worth knowing

  • One ASIN's reviews are a sample of buyers who chose to write. A small or skewed set can overstate rare complaints, so read counts together with likes and dates.
  • Parent listings share reviews across variations. Check the product with product details before attributing a review to a specific version.
  • Review text is customer opinion. It can point to a problem but does not prove its cause, and it is not a basis for product claims.
  • content is the review as Amazon renders it and can contain HTML line breaks such as <br>. Strip them before counting words or sending the text to a model.
  • Empty fields come back as null, not as empty arrays: images, videos and authorLabels are null when a review has none.
  • Each successful call consumes one billing unit. Handle 429 responses as described in errors and rate limits.

Other ways to get Amazon reviews

OptionReviews of any ASINReview textNotes
Selling Partner API (Customer Feedback)NoNoSummarised review topics for approved developers, not individual reviews
Affiliate API (Product Advertising API)NoNoRating information for building product links
Scraping review pagesYesYesYou maintain parsers, proxies and CAPTCHA handling, and it breaks when the page changes
This Amazon reviews APIYesYesOne JSON contract across 13 marketplaces, filtered by star rating

Getting Amazon reviews through an API covers what each official API returns about reviews, and the hidden costs of scraping Amazon compares building a scraper with buying the data.

FAQ

Does Amazon offer an official reviews API? Amazon's seller and advertising APIs do not return the review text of arbitrary products. This endpoint returns reviews for any ASIN you pass, in the marketplaces listed above.

Can I get only negative reviews? Yes. Pass "stars": [1, 2] or [1, 2, 3].

How many reviews does one call return? Up to 20. Use page to walk through the rest, up to page 100.

Does it return the star rating and review count of the product? No. This endpoint returns individual reviews. The product's average rating and total rating count come from product details.

Can an AI agent analyse the reviews for me? Yes. The endpoint is exposed as a tool through the remote MCP server, so an agent in Claude Code or Cursor can fetch reviews and summarise them in the same conversation.