# Amazon Reviews API. Top customer reviews, page by page.

Top customer reviews of a product, by marketplace. We handle the proxies, blocks and platform changes.

[Get API key](https://socialtap.dev/signup/?next=%2Fplayground%2F%3Fendpoint%3Damazon.reviews)

## Amazon Reviews API at a glance

Returns the top customer reviews an Amazon product page shows, from the product's link, short link or ASIN, on any Amazon marketplace outside the US. Each review has its star rating, title, full text and language, the reviewer with their profile link, the variation bought, whether the purchase is verified, how many people found it helpful, its photos and videos, and the date and country it was written in.

GET `/v1/amazon/reviews`

[Read the API reference](https://socialtap.dev/docs/reference/amazon/reviews/index.md)

- **1 credit** per page, $0.75–$1.97 per 1,000 pages
- **19 typed fields** null when unknown
- **20** top customer reviews per page, Amazon's top reviews: the marketplace's own first, then other countries'
- **`url`** is all it needs, e.g. `https://www.amazon.co.uk/dp/B003AIF4Q4`

## Send one request. Get up to 20 top customer reviews back.

Copy the request in your language, or hand it to your agent. Sign up for an API key and your first 100 credits are free.

`$ npm install socialtap`

`url = https://www.amazon.co.uk/dp/B003AIF4Q4`

[Open in playground](https://socialtap.dev/playground/?endpoint=amazon.reviews)

cURL:

```shell
curl -G 'https://socialtap.dev/v1/amazon/reviews' \
  --data-urlencode 'url=https://www.amazon.co.uk/dp/0735211299' \
  -H "x-api-key: $SOCIALTAP_API_KEY"
```

TypeScript SDK:

```typescript
import { SocialTap } from "socialtap";

const client = new SocialTap(); // apiKey defaults to process.env.SOCIALTAP_API_KEY

const res = await client.amazon.reviews.list({ url: "https://www.amazon.co.uk/dp/0735211299" });
console.log(res.data);
console.log(res.credits.charged, res.meta.request_id);
```

Node.js (fetch):

```javascript
const params = new URLSearchParams({
  url: "https://www.amazon.co.uk/dp/0735211299",
});
const res = await fetch(`https://socialtap.dev/v1/amazon/reviews?${params}`, {
  headers: { "x-api-key": process.env.SOCIALTAP_API_KEY ?? "" },
});
const body = await res.json();
if (!res.ok) throw new Error(`${body.error.code}: ${body.error.message}`);
const { data, page, meta } = body;
console.log(data, meta.credits_charged);
```

Python (requests):

```python
import os

import requests

res = requests.get(
    "https://socialtap.dev/v1/amazon/reviews",
    params={"url": "https://www.amazon.co.uk/dp/0735211299"},
    headers={"x-api-key": os.environ["SOCIALTAP_API_KEY"]},
)
body = res.json()
if not res.ok:
    raise RuntimeError(f"{body['error']['code']}: {body['error']['message']}")
data, page, meta = body["data"], body["page"], body["meta"]
print(data, meta["credits_charged"])
```

Go (net/http):

```go
package main

import (
	"encoding/json"
	"fmt"
	"log"
	"net/http"
	"net/url"
	"os"
)

func main() {
	q := url.Values{}
	q.Set("url", "https://www.amazon.co.uk/dp/0735211299")
	req, err := http.NewRequest("GET", "https://socialtap.dev/v1/amazon/reviews?"+q.Encode(), nil)
	if err != nil {
		log.Fatal(err)
	}
	req.Header.Set("x-api-key", os.Getenv("SOCIALTAP_API_KEY"))
	res, err := http.DefaultClient.Do(req)
	if err != nil {
		log.Fatal(err)
	}
	defer res.Body.Close()
	var body struct {
		Data  json.RawMessage `json:"data"`
		Page  json.RawMessage `json:"page"`
		Meta  map[string]any  `json:"meta"`
		Error *struct {
			Code    string `json:"code"`
			Message string `json:"message"`
		} `json:"error"`
	}
	if err := json.NewDecoder(res.Body).Decode(&body); err != nil {
		log.Fatal(err)
	}
	if body.Error != nil {
		log.Fatalf("%s: %s", body.Error.Code, body.Error.Message)
	}
	fmt.Println(string(body.Data), body.Meta["credits_charged"])
}
```

200 OK:

```json
{
  "data": [
    {
      "approximate_fields": [
        "published_at"
      ],
      "author": {
        "avatar_url": null,
        "display_name": "A B Hann",
        "id": "amzn1.account.AFOIQIFVHELUIDZNA3PZAAHUQH6A",
        "is_verified": null,
        "url": "https://www.amazon.co.uk/gp/profile/amzn1.account.AFOIQIFVHELUIDZNA3PZAAHUQH6A",
        "username": null
      },
      "country_code": "GB",
      "id": "R26NWF54CTYPDH",
      "is_incentivized": false,
      "is_verified_purchase": true,
      "language": "en",
      "media": [],
      "metrics": {
        "helpful_count": 25
      },
      "platform": "amazon",
      "platform_specific": {},
      "product_id": "0735211299",
      "published_at": "2026-03-04T00:00:00Z",
      "rating": 5,
      "text": "Atomic Habits completely changed the way I think about progress and self-improvement. Instead of focusing on huge life overhauls, it breaks everything down into small, practical changes that actually feel manageable.\n\nWhat I appreciated most is how actionable the advice is. The s…",
      "title": "Simple Ideas, Powerful Results",
      "unknown_fields": [],
      "url": "https://www.amazon.co.uk/gp/customer-reviews/R26NWF54CTYPDH",
      "variant_id": "1847941834",
      "variant_title": "Format: Paperback"
    },
    {
      "approximate_fields": [
        "published_at"
      ],
      "author": {
        "avatar_url": "https://m.media-amazon.com/images/S/amazon-avatars-global/ce2aa141-d825-444f-859e-e735d5e639d2._CR0%2C0%2C500%2C500_SX460_SX48_.jpeg",
        "display_name": "John M",
        "id": "amzn1.account.AGRCKXSEGOJY6VKWXVUZBOSJ35SA",
        "is_verified": null,
        "url": "https://www.amazon.co.uk/gp/profile/amzn1.account.AGRCKXSEGOJY6VKWXVUZBOSJ35SA",
        "username": null
      },
      "country_code": "GB",
      "id": "R2R5XY27STL9YL",
      "is_incentivized": false,
      "is_verified_purchase": true,
      "language": "en",
      "media": [],
      "metrics": {
        "helpful_count": 12
      },
      "platform": "amazon",
      "platform_specific": {},
      "product_id": "0735211299",
      "published_at": "2026-09-10T00:00:00Z",
      "rating": 5,
      "text": "Atomic Habits has genuinely changed the way I look at several areas of my life. Rather than focusing on dramatic overnight transformations, it helped me understand the power of small, consistent actions and how they gradually shape our identity and future.\n\nOne of the most impact…",
      "title": "A Powerful Book That Changed My Outlook",
      "unknown_fields": [],
      "url": "https://www.amazon.co.uk/gp/customer-reviews/R2R5XY27STL9YL",
      "variant_id": "1847941834",
      "variant_title": "Format: Paperback"
    },
    {
      "approximate_fields": [
        "published_at"
      ],
      "author": {
        "avatar_url": null,
        "display_name": "Rodrigo Ferreira",
        "id": "amzn1.account.AECVB7TIUUBFDS43YI24MB2B6ILQ",
        "is_verified": null,
        "url": "https://www.amazon.co.uk/gp/profile/amzn1.account.AECVB7TIUUBFDS43YI24MB2B6ILQ",
        "username": null
      },
      "country_code": "GB",
      "id": "RQW3OS75ABF74",
      "is_incentivized": false,
      "is_verified_purchase": true,
      "language": "en",
      "media": [
        {
          "alt_text": null,
          "duration_ms": null,
          "expires_at": null,
          "height": null,
          "thumbnail_url": "https://m.media-amazon.com/images/I/61ezPtvAdKL._SY500_.jpg",
          "type": "image",
          "url": "https://m.media-amazon.com/images/I/61ezPtvAdKL.jpg",
          "width": null
        },
        {
          "alt_text": null,
          "duration_ms": null,
          "expires_at": null,
          "height": null,
          "thumbnail_url": "https://m.media-amazon.com/images/I/517WaERYwEL._SY500_.jpg",
          "type": "image",
          "url": "https://m.media-amazon.com/images/I/517WaERYwEL.jpg",
          "width": null
        },
        {
          "alt_text": null,
          "duration_ms": null,
          "expires_at": null,
          "height": null,
          "thumbnail_url": "https://m.media-amazon.com/images/I/61+X8YMvgVL._SY500_.jpg",
          "type": "image",
          "url": "https://m.media-amazon.com/images/I/61+X8YMvgVL.jpg",
          "width": null
        }
      ],
      "metrics": {
        "helpful_count": 7
      },
      "platform": "amazon",
      "platform_specific": {},
      "product_id": "0735211299",
      "published_at": "2026-07-09T00:00:00Z",
      "rating": 4,
      "text": "I haven’t finished the entire book yet, but I’ve read enough to understand its core message. The idea that tiny, consistent changes compound into major long‑term transformation is genuinely useful, and it’s helped me pay more attention to small wins I normally overlook. I’ve alre…",
      "title": "Helpful framework for small improvements, but oversimplifies the mental side of habit change",
      "unknown_fields": [],
      "url": "https://www.amazon.co.uk/gp/customer-reviews/RQW3OS75ABF74",
      "variant_id": "1847941834",
      "variant_title": "Format: Paperback"
    }
  ],
  "page": {
    "has_more": false,
    "next_cursor": null,
    "next_cursor_expires_at": null,
    "end_reason": "platform_limit"
  },
  "meta": {
    "request_id": "req_3f9c2a7d1e8b4c6a9f0e2d4b6a8c0e1f",
    "platform": "amazon",
    "source": "page",
    "is_cached": false,
    "credits_charged": 1,
    "latency_ms": 0,
    "fetched_at": "2026-10-25T12:00:00Z",
    "input": {
      "kind": "product",
      "id": "0735211299",
      "url": "https://www.amazon.co.uk/dp/0735211299"
    },
    "credits_remaining": 9999,
    "client_request_id": null,
    "warnings": []
  }
}
```

Long arrays and strings are shortened here. Real responses are complete.

## One schema on 2 platforms.

The [response reference](https://socialtap.dev/docs/reference/amazon/reviews/index.md#response) lists every field, its type and when it is `null`. [See the full schema](https://socialtap.dev/resources/review/index.md).

- ### Null means unknown

  A field Amazon doesn't show is null, never zero or an empty string, so a real zero always means zero.
- ### What it accepts

  The product: its link on any Amazon marketplace (amazon.co.uk/dp/B003AIF4Q4, with or without the title before /dp/, /gp/product/, /gp/aw/d/, /product-reviews/ and the older /exec/obidos/ASIN/ links), a short link (amzn.to, a.co/d/, amzn.eu/d/, amzn.asia/d/, amzn.com), or its ASIN alone (B003AIF4Q4, or a book's ISBN-10) with country.
- ### Write one parser

  Amazon and TikTok Shop answer in these fields, so the code that reads one reads them all.

- **`platform`string**: Platform ID (tiktokshop, …).
- **`id`string**: Platform-native review ID (string).
- **`product_id`string**: ID of the product reviewed (equals product.id); null only for a review of something other than a product.
- **`url`string**: Permalink, when the platform has one (TikTok Shop reviews have none).
- **`rating`integer**: Star rating, 1 to 5; null when the review gives none.
- **`title`string**: The review's headline; null when it has none.
- **`text`string**: Review body as plain text; null for a rating without text.
- **`language`string**: BCP-47 language of text, when the platform states it.

Live data from 33 platforms.

[TikTok](https://socialtap.dev/apis/tiktok/index.md) · [Instagram](https://socialtap.dev/apis/instagram/index.md) · [Facebook](https://socialtap.dev/apis/facebook/index.md) · [YouTube](https://socialtap.dev/apis/youtube/index.md) · [Reddit](https://socialtap.dev/apis/reddit/index.md) · [Threads](https://socialtap.dev/apis/threads/index.md) · [Spotify](https://socialtap.dev/apis/spotify/index.md) · [Amazon](https://socialtap.dev/apis/amazon/index.md) · [Apple Music](https://socialtap.dev/apis/applemusic/index.md) · [Pinterest](https://socialtap.dev/apis/pinterest/index.md) · [Rumble](https://socialtap.dev/apis/rumble/index.md) · [X](https://socialtap.dev/apis/x/index.md) · [Bluesky](https://socialtap.dev/apis/bluesky/index.md) · [Twitch](https://socialtap.dev/apis/twitch/index.md) · [LinkedIn](https://socialtap.dev/apis/linkedin/index.md) · [Telegram](https://socialtap.dev/apis/telegram/index.md) · [TikTok Shop](https://socialtap.dev/apis/tiktokshop/index.md) · [Kwai](https://socialtap.dev/apis/kwai/index.md) · [Snapchat](https://socialtap.dev/apis/snapchat/index.md) · [SoundCloud](https://socialtap.dev/apis/soundcloud/index.md) · [Truth Social](https://socialtap.dev/apis/truthsocial/index.md) · [Kick](https://socialtap.dev/apis/kick/index.md) · [Komi](https://socialtap.dev/apis/komi/index.md) · [Lnk.Bio](https://socialtap.dev/apis/linkbio/index.md) · [Linkme](https://socialtap.dev/apis/linkme/index.md) · [Linktree](https://socialtap.dev/apis/linktree/index.md) · [Pillar](https://socialtap.dev/apis/pillar/index.md) · [TikTok Ad Library](https://socialtap.dev/apis/tiktok-ad-library/index.md) · [Facebook Ad Library](https://socialtap.dev/apis/facebook-ad-library/index.md) · [Facebook Events](https://socialtap.dev/apis/facebook-events/index.md) · [Facebook Marketplace](https://socialtap.dev/apis/facebook-marketplace/index.md) · [Google Ads Transparency Center](https://socialtap.dev/apis/google-ads-transparency/index.md) · [LinkedIn Ad Library](https://socialtap.dev/apis/linkedin-ad-library/index.md)

## What teams build with the Amazon Reviews API.

- ### Read what buyers say about a product in each country
- ### Collect review photos and videos for product research
- ### Watch the top reviews on a competitor's listing
- ### Compare how a product is received across marketplaces

## Good to know before you build.

- Amazon shows reviews to signed-out visitors on every marketplace but amazon.com, which asks them to sign in: an amazon.com product answers private_or_unavailable. Send its link or ASIN with country set to another marketplace (GB, CA, DE, …) to read that marketplace's reviews of it.
- You get the reviews the product page shows, in its order: the marketplace's own top reviews, then top reviews from other countries. Amazon's full review pages need a login, so when a product has more reviews the list ends with page.end_reason platform_limit.
- Texts are in the language the reviewer wrote them in: language says which. Dates are days, listed in approximate_fields.
- A review can be of another variation or edition of the product: variant_id is the item bought and variant_title its options.
- The review's own link (url) opens for signed-in visitors only. The reviewer's profile link is public.

## 1 credit per page. Failed requests are free.

Buy credits once and spend them on any endpoint, on any platform.

[Plans and packs](https://socialtap.dev/pricing/index.md) · [How this endpoint is priced](https://socialtap.dev/docs/reference/amazon/reviews/index.md#pricing) · [How credits work](https://socialtap.dev/docs/credits/index.md)

| Source | Price per successful page | Per 1,000 pages |
| --- | --- | --- |
| Public page `page` | 1 credit | $0.75–$1.97 |

- Cache hits are free.
- Credits from packs and top-ups never expire.
- A monthly plan's credits are spent first, and what is left of them ends at each renewal.
- Prices exclude tax: sales tax is added at checkout where it applies.
- Outside the US, plans and packs are sold to businesses: checkout asks for your VAT, GST or other business tax ID.

## Questions about the Amazon Reviews API.

More in the [API reference](https://socialtap.dev/docs/reference/amazon/reviews/index.md).

**Why does an amazon.com product return no reviews?**

Amazon shows individual reviews on amazon.com only to signed-in visitors. Other marketplaces show them to everyone, so send country to read the product's reviews there, including top reviews from other countries.

**Can I get every review of a product?**

No: the full review pages need a login on every marketplace. You get the top reviews the product page shows. The product's rating and its exact number of ratings are in the Amazon Product API.

**How much does the Amazon Reviews API cost?**

A page of up to 20 top customer reviews costs 1 credit. Every successful page is charged, empty pages included. SocialTap credits cost $0.75–$1.97 per 1,000, depending on the plan or pack.

**How do I get the next page?**

Repeat the same request with cursor set to page.next_cursor from the previous response, keeping the other parameters. When page.has_more is false there are no more pages. Cursors expire after 24 hours.

Other platforms

## Reviews on 1 more platform.

- [TikTok Shop Reviews API](https://socialtap.dev/apis/tiktokshop/reviews/index.md) (1 credit / page · `GET /v1/tiktokshop/reviews`)

More Amazon

## Amazon API. 10 endpoints, one key.

- [Amazon Shop Posts API](https://socialtap.dev/apis/amazon/shop_posts/index.md) (1 credit / page · `GET /v1/amazon/shop_posts`)
- [Amazon Shop API](https://socialtap.dev/apis/amazon/shop/index.md) (1 credit · `GET /v1/amazon/shop`)
- [Amazon Seller API](https://socialtap.dev/apis/amazon/seller/index.md) (1 credit · `GET /v1/amazon/seller`)
- [Amazon Shop Lists API](https://socialtap.dev/apis/amazon/shop_lists/index.md) (1 credit / page · `GET /v1/amazon/shop_lists`)
- [Amazon Product API](https://socialtap.dev/apis/amazon/product/index.md) (1 credit · `GET /v1/amazon/product`)
- [Amazon Deals API](https://socialtap.dev/apis/amazon/deal_products/index.md) (1 credit / page · `GET /v1/amazon/deal_products`)
- [Amazon Best Sellers API](https://socialtap.dev/apis/amazon/top_products/index.md) (1 credit / page · `GET /v1/amazon/top_products`)
- [Amazon Product Search API](https://socialtap.dev/apis/amazon/search_products/index.md) (1 credit / page · `GET /v1/amazon/search_products`)
- [Amazon Offers API](https://socialtap.dev/apis/amazon/offers/index.md) (1 credit / page · `GET /v1/amazon/offers`)

## Try it on a link you already have.

Paste it in the playground, or copy the request into your code.

100free credits

- No credit card
- Failed requests are free
- Works on all 218 endpoints

[Start for free](https://socialtap.dev/signup/) [Read the docs](https://socialtap.dev/docs/index.md)

---

[HTML version](https://socialtap.dev/apis/amazon/reviews/) · [Docs index for AI agents](https://socialtap.dev/llms.txt) · [All docs in one file](https://socialtap.dev/llms-full.txt)
