eBay API — Product Reviews and Ratings
Documentation menu
FetchLayer FetchLayer API

Read product reviews

Buyer reviews of an eBay catalogue product — the product page that groups every listing of the same item, not a single listing. The product summary carries the average rating out of five, rating and review counts, the count per star, and aspect agreement such as "Good sound quality: 100%". Each review has its rating, title (eBay truncates long titles), body, author, publication date as shown, whether it was a verified purchase, the condition bought, who sold it, and helpful and not-helpful votes. Reviews come in eBay's most-relevant order, the only order eBay publishes them in. A listing's item specifics carry its catalogue id as "eBay Product ID (ePID)". An unknown product is a 404.

POST /product-reviews Reviews & feedback
https://api.fetchlayer.dev/ebay/product-reviews
OpenAPI JSON

Headers

Authorization string required

Bearer token — your FetchLayer API key.

Parameters

product string required

eBay catalogue product id (for example 27061041202), or a product or reviews URL.

limit number optional

Maximum reviews returned (max 500), or -1 for the maximum. (default: 10)

pages number optional

Pages to collect in one request (max 50), or -1 for the maximum allowed. Defaults to as many as limit needs. Each page counts as one request.

cursor string optional

Resume from a previous response's nextCursor. A cursor is bound to the request that produced it, so send the same filters with it — a cursor replayed against different filters is a 400.

delayMs number optional

Milliseconds to wait between pages (max 30000).

format string optional

json or markdown. Markdown returns the same result rendered for a model to read. (default: json)

timeoutMs number optional

Time limit for each eBay page read, in milliseconds (max 120000).

Response Fields

product-reviews

Read product reviews

resultType string

Which shape this response is: search-listings, listing-details, price-check, seller-feedback or product-reviews.

requestedUrl string

The eBay page this result corresponds to.

scrapedAt string

ISO 8601 timestamp of when the data was read.

transport string

The upstream source. Always "ebay".

notes string[]

Caveats about this particular result — converted prices, a walk that stopped early, a continuation that may repeat listings. Read it on every call: it is where an incomplete answer announces itself.

product object

The catalogue product.

product.productId string

Catalogue product id, with title, url and imageUrl alongside it.

product.averageRating number

Average rating out of 5.

product.ratingCount number

Ratings, with the product's total reviewCount alongside it.

product.ratingDistribution object

Count per star, keyed "1" to "5".

product.aspects object[]

{ name, percent } — the share of buyers who agree with statements such as "Good sound quality".

reviews object[]

Reviews in eBay's most-relevant order.

reviews[].reviewId string

Stable id for the review.

reviews[].rating number

Star rating, 1 to 5.

reviews[].title string

Review title. eBay truncates long titles; body has the full text.

reviews[].body string

Review text.

reviews[].author string

Reviewer username.

reviews[].publishedOn string

Date as shown, for example "Nov 06, 2024".

reviews[].verifiedPurchase boolean

Whether the reviewer bought it on eBay.

reviews[].condition string

Condition bought: new, pre-owned, refurbished.

reviews[].soldBy string

The seller it was bought from.

reviews[].helpfulCount number

Helpful votes, with notHelpfulCount alongside it.

reviewCount number

Length of reviews in this response.

pagesScraped number

Pages actually collected. Each page counts as one request against your plan.

pagesRequested number

Pages this request asked for.

nextCursor string

Pass back as cursor to continue, or null when there is nothing further.

hasNextPage boolean

Whether more results are available beyond this response.

Request

curl -X POST "https://api.fetchlayer.dev/ebay/product-reviews" \
  -H "Authorization: Bearer ss-your-key" \
  -H "Content-Type: application/json" \
  -d '{"product":"27061041202","limit":10}'

Response

{
  "resultType": "product-reviews",
  "requestedUrl": "https://www.ebay.com/urw/product-reviews/27061041202?_ul=US",
  "transport": "ebay",
  "notes": [
    "Reviews are listed in eBay's most relevant order, the only order eBay publishes them in."
  ],
  "product": {
    "productId": "27061041202",
    "title": "Skullcandy Crusher ANC 2 Bluetooth Wireless Headphones - Black (S6CAW-R740)",
    "url": "https://www.ebay.com/p/27061041202",
    "averageRating": 4.9,
    "ratingCount": 27,
    "reviewCount": 27,
    "ratingDistribution": {
      "1": 0,
      "2": 0,
      "3": 1,
      "4": 1,
      "5": 25
    },
    "aspects": [
      {
        "name": "Good sound quality",
        "percent": 100
      },
      {
        "name": "Comfortable",
        "percent": 100
      }
    ]
  },
  "reviews": [
    {
      "reviewId": "10000000321829280",
      "rating": 5,
      "title": "Excellent headset. Better than JBL live6...",
      "body": "Excellent headset. Better than JBL live660 NC .audio adjustments are such a great feature",
      "author": "frankstro",
      "publishedOn": "Nov 06, 2024",
      "verifiedPurchase": true,
      "condition": "new",
      "soldBy": "jpop4me",
      "helpfulCount": 1,
      "notHelpfulCount": 0
    }
  ],
  "reviewCount": 10,
  "pagesScraped": 1,
  "pagesRequested": 1,
  "nextCursor": "eyJ2IjoxLCJwIjoyLCJvIjowLCJzIjoxMCwiYiI6ImVkOGIzOWQwNzJjZCJ9",
  "hasNextPage": true
}