apiwren
Amazon Data API · GET /product-offers

Amazon offers API

GET /product-offers returns every offer Amazon shows for one ASIN on one marketplace. The featured (Buy Box) offer comes first, then the other sellers, each with condition, price, list price, seller name, ID and rating, ships-from, whether it is sold or fulfilled by Amazon, and the delivery text. About 10 sellers per page, up to page 20.

Part of Amazon Data API, sold on RapidAPI with a free plan of 100 requests a month. Endpoint details checked 2026-11-03.

Get a free key on RapidAPIAll 17 endpoints

What GET /product-offers returns

Every offer Amazon shows for one ASIN on one marketplace: the featured (pinned) offer first, then the other sellers, each with condition, price, list price, seller name, ID and rating, ships-from, sold/fulfilled by Amazon, and delivery text. Null where Amazon shows no value. offers is [] when Amazon lists none. total_offers is Amazon's count of offers besides the pinned one (null on page 2 and later, which list only the next sellers, about 10 per page; the pinned offer is returned on page 1 only). Every response is checked to come from the requested marketplace; a page from another country is never returned.

Parameters

NameRequiredValuesNotes
asinyesmatches ^[A-Za-z0-9]{10}$10-character Amazon product ID (ASIN). Case and surrounding spaces are ignored.
pageno1 to 20 (default 1)Page of other offers, 1 to 20. Default 1.
countrynoUS, CA, MX, BR, GB, DE, FR, IT, ES, NL, SE, PL, BE, TR, AE, SA, EG, IN, JP, SG, AU, IE, ZAAmazon marketplace, as an ISO country code. GB is amazon.co.uk. Default US (amazon.com).

Example request

Every parameter that has an example, with country set explicitly. Send your key in X-RapidAPI-Key.

curl --request GET \
  --url 'https://amazon-data-api-search-product-reviews-best-sellers.p.rapidapi.com/product-offers?asin=0735211299&country=US' \
  --header 'X-RapidAPI-Key: YOUR_RAPIDAPI_KEY' \
  --header 'X-RapidAPI-Host: amazon-data-api-search-product-reviews-best-sellers.p.rapidapi.com'
import requests

resp = requests.get(
    "https://amazon-data-api-search-product-reviews-best-sellers.p.rapidapi.com/product-offers",
    params={"asin": "0735211299", "country": "US"},
    headers={
        "X-RapidAPI-Key": "YOUR_RAPIDAPI_KEY",
        "X-RapidAPI-Host": "amazon-data-api-search-product-reviews-best-sellers.p.rapidapi.com",
    },
    timeout=30,
)
resp.raise_for_status()
body = resp.json()
if "error" in body:  # bad input or not found: HTTP 200 with an error body
    raise RuntimeError(f"{body['error']['code']}: {body['error']['message']}")
print(body["data"])
const url = new URL('https://amazon-data-api-search-product-reviews-best-sellers.p.rapidapi.com/product-offers');
url.search = new URLSearchParams({ asin: '0735211299', country: 'US' });

const res = await fetch(url, {
  headers: {
    'X-RapidAPI-Key': process.env.RAPIDAPI_KEY,
    'X-RapidAPI-Host': 'amazon-data-api-search-product-reviews-best-sellers.p.rapidapi.com',
  },
});
const { data, meta } = await res.json();
console.log(data, meta.fetched_at);

Example response

A recorded response, shortened to 3 items per list.

200 OK
{
  "data": {
    "asin": "0735211299",
    "page": 1,
    "total_offers": 176,
    "offers": [
      {
        "is_pinned": false,
        "condition": "New",
        "condition_note": null,
        "price": 8.55,
        "original_price": 27,
        "currency": "USD",
        "seller": {
          "id": "A19VQHYZW00VUY",
          "name": "Amazing Books and Toys",
          "rating": 5,
          "positive_percent": 96,
          "ratings_count": 27678
        },
        "ships_from": "Amazing Books and Toys",
        "is_sold_by_amazon": false,
        "is_fulfilled_by_amazon": false,
        "is_prime": null,
        "delivery": "FREE delivery Thursday, November 5 . Details"
      },
      {
        "is_pinned": false,
        "condition": "Used - Acceptable",
        "condition_note": "Used - Acceptable: All pages and the cover are intact, but shrink wrap, dust covers, or boxed set case may be missing. Pages may include limited notes, highlighting, or minor water damage but the text is readable. Pages may include limited notes and highlighting, but the text cannot be obscured or u…",
        "price": 6.09,
        "original_price": null,
        "currency": "USD",
        "seller": {
          "id": "A34BMBVKYMFPWL",
          "name": "Missouri_Goodwill_Industries",
          "rating": 5,
          "positive_percent": 94,
          "ratings_count": 55455
        },
        "ships_from": "Missouri_Goodwill_Industries",
        "is_sold_by_amazon": false,
        "is_fulfilled_by_amazon": false,
        "is_prime": null,
        "delivery": "$3.99 delivery Wednesday, November 4 . Details"
      },
      {
        "is_pinned": false,
        "condition": "Used - Good",
        "condition_note": "All items listed are USED unless noted otherwise. Fast Shipping - Safe and Secure 5 days week, Mon-Fri. Cover, binding, and pages have normal wear and tear. May have some light highlighting, writing, and or underlining.",
        "price": 6.1,
        "original_price": null,
        "currency": "USD",
        "seller": {
          "id": "AQ2FUU028G1WB",
          "name": "Goodwill Industries of Houston",
          "rating": 4.5,
          "positive_percent": 90,
          "ratings_count": 36925
        },
        "ships_from": "Goodwill Industries of Houston",
        "is_sold_by_amazon": false,
        "is_fulfilled_by_amazon": false,
        "is_prime": null,
        "delivery": "$3.99 delivery November 4 - 9 . Details"
      }
    ]
  },
  "meta": {
    "country": "US",
    "cached": false,
    "fetched_at": "2026-10-27T08:12:19.096Z"
  }
}

What people use it for

FAQ

Does the offers API show the Buy Box winner?
Yes. The featured (pinned) offer is first in the list on page 1. Later pages list only the next sellers.
Can I tell FBA offers from merchant-fulfilled ones?
Yes. Each offer says whether it ships from and is sold or fulfilled by Amazon. Fields Amazon does not show are null.
Could I get offers from the wrong country?
No. Every response is checked to come from the requested marketplace. A page from another country is never returned.

Related endpoints

See all 17 endpoints and 23 marketplaces on the Amazon product API page.

Try GET /product-offers. The free plan covers 100 requests a month.

Get Amazon Data API on RapidAPI