Amazon API

Turn an ASIN into Amazon price, rating and review data

The Amazon Product Data API returns product, review, offer and search data across Amazon marketplaces as clean JSON.

no credit card1,000 free credits · instant API key · pay by card or crypto
Missing a Amazon endpoint, or need a source we don't have yet?Contact us real people · same-day reply.
A
/amazon/v1

15 active endpoints, on 0, 1, 2 and 10 credit tiers.

  • POST/amazon/v1/product/detail
  • POST/amazon/v1/product/reviews
  • POST/amazon/v1/product/offers
  • POST/amazon/v1/search
  • POST/amazon/v1/products_batch
  • POST/amazon/v1/category/browse
  • POST/amazon/v1/bestsellers
  • +8 more

What Amazon endpoints does ReefAPI ship?

15 live read endpoints. Read-only data API: no writes, no account actions, no dashboard access on the target site.

15 endpoints

product/detail

2 cr

full product page (title/price/currency/rating/count/brand/features/images/categories/variati…

required
asin
optional
marketplace, include_reviews, fields, exclude

product/reviews

1 cr

Amazon product reviews by ASIN.

required
asin
optional
marketplace, marketplaces

product/offers

2 cr

pinned buybox + all-offers (AOD aodAjaxMain).

required
asin
optional
marketplace

search

1 cr

product search with optional filters (price range, minimum rating, deals, brand) → results[]{…

required
query
optional
marketplace, page, max_results, sort, price_min, price_max, min_rating, deals, discount, prime, brand, brand_exact

products_batch

10 cr

Look up MANY Amazon products in ONE call by ASIN.

required
asins
optional
marketplace

category/browse

1 cr

Browse a department or sub-department by its Amazon browse NODE id and page through the grid.

required
node
optional
marketplace, page

bestsellers

1 cr

best-sellers ranking for a department (category slug required).

required
category
optional
marketplace, max_results

new-releases

1 cr

new-releases ranking for a department (category slug required).

required
category
optional
marketplace, max_results

seller/profile

1 cr

seller profile (name, feedback %, lifetime ratings, rating).

required
seller_id
optional
marketplace

autocomplete

0 cr

search autocomplete suggestions.

required
query
optional
marketplace

seller/products

1 cr

a seller's catalog/storefront by seller_id (paginated).

required
seller_id
optional
marketplace, page

seller/reviews

1 cr

seller FEEDBACK reviews (rating/text/rater/date) by seller_id.

required
seller_id
optional
marketplace

deals

1 cr

Amazon deal-products (today's deals / goldbox).

required
optional
marketplace

product/related

1 cr

Amazon related & recommended products by ASIN.

required
asin
optional
marketplace

gtin-to-asin

1 cr

Amazon barcode lookup.

required
optional
gtin, marketplace

Every parameter, every allowed value →

Amazon API

3 of 15 endpoints, ready to run

View docs ↗

One ASIN, one call: buy-box price, struck-through list price, star rating, rating count, brand, features, the full image set, the colour and size variant map, and the barcodes.

2 credits1 required · 1 optional
POST/amazon/v1/product/detail
ok3981 ms · 1 records · sample
{
  "ok": true,
  "meta": {
    "api": "amazon",
    "endpoint": "product/detail",
    "mode": "live",
    "latency_ms": 3981,
    "record_count": 1,
    "cache_hit": false,
    "completeness_pct": 100
  },
  "data": {
    "product": {
      "asin": "B0BTYCRJSS",
      "title": "Soundcore by Anker P20i True Wireless Earbuds, with Big Bass, 30H Playtime",
      "price": 19.99,
      "price_str": "$19.99",
      "currency": "$",
      "list_price": 39.99,
      "rating": 4.4,
      "rating_count": 113755,
      "availability": "In Stock",
      "brand": "Soundcore",
      "features": [
        "Powerful Bass: soundcore P20i true wireless earbuds have oversized 10mm drivers that deliver powerful sound with boosted bass so you can lose yourself in your favorite songs.",
        "Personalized Listening Experience: Use the soundcore app to customize the controls and choose from 22 EQ presets. With \"Find My Earbuds\", a lost earbud can emit noise to help you locate it.",
        "Long Playtime, Fast Charging: Get 10 hours of battery life on a single charge with a case that extends it to 30 hours. If P20i true wireless earbuds are low on power, a quick 10-minute charge will give you 2 hours of playtime."
      ],
      "images": [
        "https://m.media-amazon.com/images/I/51Yya2WtvkL._AC_SL1341_.jpg",
        "https://m.media-amazon.com/images/I/31OqZzNn4fL._AC_.jpg",
        "https://m.media-amazon.com/images/I/71PxjPMozxL._AC_SL1500_.jpg"
      ],
      "categories": [
        "Electronics",
        "Headphones, Earbuds & Accessories",
        "Headphones & Earbuds"
      ],
      "variations": {
        "count": 5,
        "asin_map": {
          "B0BTYCRJSS": [
            "Black"
          ],
          "B0D5HN8B1F": [
            "Pink"
          ],
          "B0BTYDLTM3": [
            "Blue"
          ],
          "B0D5HSP346": [
            "Light Blue"
          ],
          "B0BTYCJXBK": [
            "White"
          ]
        },
        "asin_map_sample": {
          "B0BTYCRJSS": [
            "Black"
          ],
          "B0D5HN8B1F": [
            "Pink"
          ],
          "B0BTYDLTM3": [
            "Blue"
          ],
          "B0D5HSP346": [
            "Light Blue"
          ],
          "B0BTYCJXBK": [
            "White"
          ]
        },
        "dimension_values": {
          "color_name": [
            "Black",
            "Blue",
            "Light Blue"
          ]
        },
        "dimensions": [
          "color_name"
        ],
        "asin_dimensions": {
          "B0BTYCRJSS": {
            "color_name": "Black"
          },
          "B0D5HN8B1F": {
            "color_name": "Pink"
          },
          "B0BTYDLTM3": {
            "color_name": "Blue"
          },
          "B0D5HSP346": {
            "color_name": "Light Blue"
          },
          "B0BTYCJXBK": {
            "color_name": "White"
          }
        },
        "total_children": 5,
        "parent_asin": "B0CLNWQL4T"
      },
      "tech_specs": {
        "Brand Name": "Soundcore",
        "Model Number": "A3949",
        "Model Name": "soundcore P20i",
        "Built-In Media": "Instant Pairing: During first use, open the charging case, take soundcore P20i true wireless earbuds out and they will enter pairing mode. From then on, the earbuds will connect to the last paired device every time you use them.",
        "Age Range Description": "All",
        "Warranty Description": "18 months",
        "Customer Package Type": "Rigid or Semi-Rigid Case",
        "Number of Items": "1",
        "Series Number": "3949",
        "UPC": "194644124434",
        "Manufacturer": "Anker",
        "External Testing Certification": "/",
        "Item Type Name": "QUNTAY",
        "Best Sellers Rank": "#36 in Electronics ( See Top 100 in Electronics ) #6 in Earbud & In-Ear Headphones",
        "ASIN": "B0BTYCRJSS",
        "Customer Reviews": "4.4 4.4 out of 5 stars (113,755) 4.4 out of 5 stars",
        "Headphones Ear Placement": "In Ear",
        "Headphone Folding Features": "In Ear",
        "Earpiece Shape": "Round",
        "Color": "Black",
        "Style Name": "Classic",
        "Carrying Case Color": "Black",
        "Theme": "Audio Equipment\" or \"Headphones",
        "Battery Charge Time": "10 hours",
        "Battery Average Life": "5 hours",
        "Carrying Case Battery Average Life": "30 hours",
        "Impedance": "16 ohm",
        "Noise Control": "Passive Noise Cancellation",
        "Frequency Response": "20 KHz",
        "Audio Driver Type": "Dynamic Driver",
        "Frequency Range": "20-20k HZ",
        "Enclosure Material": "Acrylonitrile Butadiene Styrene (ABS), Polycarbonate (PC)",
        "Specific Uses For Product": "Music",
        "Antenna Location": "Calls, Listening to music",
        "Compatible Devices": "Cellphones, Desktops, Laptops, Tablets",
        "Cable Features": "Without Cable",
        "Water Resistance Level": "Water Resistant",
        "Carrying Case Material": "PC+ABS",
        "Additional Features": "Lightweight",
        "Total USB 2.0 Ports": "1",
        "Headphone Jack": "No Jack",
        "Connectivity Technology": "Wireless",
        "Wireless Technology": "Bluetooth",
        "Bluetooth Range": "10 meters",
        "Bluetooth Version": "5.3",
        "Control Type": "Media Control",
        "Control Method": "Touch",
        "Controller Type": "Touch",
        "Item Weight": "0.1 hundredths pound",
        "Carrying Case Weight": "22.68 g",
        "Unit Count": "1 Count"
      },
      "aplus": {
        "images": [
          "https://m.media-amazon.com/images/S/aplus-media-library-service-media/2f05d453-81c5-4a79-8f47-28d67b302280.__CR0,0,1464,600_PT0_SX1464_V1___.jpg",
          "https://m.media-amazon.com/images/S/aplus-media-library-service-media/73317395-89ac-43e4-b838-b6c04e81204c.__CR0,0,1464,600_PT0_SX1464_V1___.jpg",
          "https://m.media-amazon.com/images/S/aplus-media-library-service-media/027d1799-8bd9-4fbb-b61f-e061edbbc14e.__CR0,0,1464,600_PT0_SX1464_V1___.jpg"
        ],
        "headings": [
          "Product description",
          "Tuned to You",
          "Ready for Gaming"
        ],
        "text": "Product description Previous page Tuned to You Fine-tune the way you listen with 22 preset EQs to choose from, including our signature BassUp EQ. Ready for Gaming Immerse yourself in mobile games. Activate gaming mode via the app for enhanced in-game sounds. Next page 1 22 Preset EQs 2 Gaming Mode Stay Attached with a Lanyard Keep your earbuds on you at all times with a portable case and lanyard. Small enough to slip in your pocket, clip on your bag or keys–so you never worry about space. Comfortable, Feather-Light Fit soundcore P20i true wireless earbuds are lightweight with an ergonomic shape to fit comfortably in your ears for long listening sessions. Effortless Sound Fast Charging Fast charge for 10 mins for an extra 2 hours of power. A full charge gives 10 hours of playtime and 30 hours with the charging case. Tap to Control Take control of soundcore P20i true wireless earbuds with simple tap controls which can be customized in the soundcore app. Bluetooth 5.3 The latest Bluetooth version has fast transmission speeds, so you always get a stable connection, even in busy crowds. Single Earbud Mode Want more awareness of your surroundings or to extend playtime further? Simply take one earbud out of the case, and it will enter Single Earbud mode. Choose the right soundcore earbuds soundcore P20i Add to Cart Soundcore P31i Add to Cart Soundcore P41i Buying Options soundcore P40i Add to Cart Customer Reviews 4.4 out of 5 stars 113,755 4.4 out of 5 stars 7,692 4.5 out of 5 stars 768 4.3 out of 5 stars 16,996 Price $19.99 $ 19 . 99 $36.99 $ 36 . 99 — $47.99 $ 47 . 99 Sound 10mm driver 11mm,Hi-Res Thunderous Bass 10mm drivers Noise Cancellation - Advanced ANC Adaptive ANC Adaptive ANC Playtime (Single/With Case) 10H/30H ANC Off:10H/50H ANC On:8H/40H 12H/192H 12H/60H Fast Charging 10 Mins = 2H 10 M = 3.5 H 10 Mins = 5H 10 Mins = 5H Calls 2 Mics 6 Mics with AI 6 Mics with AI 6 Mics Waterproof IPX5 IP55 IPX5 IPX5 Bluetooth Version 5.3 6.1 5.3 5.3 Special Design Lanyard for Easy Carrying 100+ Languages AI Translation Multi-Function Charging Case 2-in-1 Phone Stand Key Features 10mm Oversized Drivers: Big drivers deliver detailed sound with powerful bass. 22 EQ Presets: Use the soundcore app to pick a preset that works best with what you're listening to. Compact and Comfortable: soundcore P20i true wireless earbuds have a small and lightweight fit. The compact charging case easily fits in small pockets and bags. Extended Playtime: Enjoy 10 hours of playtime on a single charge. The charging case holds up to 30 hours of extra power, so you can top up your earbuds on the go. AI-Enhanced Clear Calls: Be heard clearly thanks to soundcore P20i's two built-in microphones with AI-enhanced voice pick-up. Fast Charging: A speedy 10-minute charge of your soundcore P20i true wireless earbuds gives you 2 hours of playtime. One-Step Pairing: When you're first setting up, just open the case, take soundcore P20i true wireless earbuds out, and they will be ready to pair. After that, the earbuds will automatically connect to the last paired device whenever you take them out. Single Earbud Mode: Want more awareness of your surroundings or to extend playtime even further? Simply remove one of the earbuds from the charging case, and the earbud will enter Single Earbud mode."
      },
      "compare_similar": [],
      "gtin": "00194644124434",
      "upc": "194644124434",
      "ean": null,
      "isbn": null,
      "barcodes": [
        "194644124434"
      ],
      "coupon": null,
      "campaign": null
    },
    "reviews": [
      {
        "review_id": "R2EG02JLLGUSA0",
        "profile_id": "amzn1.account.AHXI6VP72HRXDLT75BCMDW5HRGTA",
        "rating": 5,
        "title": "Perfectly Fine Headphones for Walking and Listening to Music",
        "date": "June 14, 2026",
        "location": "the United States",
        "verified": true,
        "format": "Color: White",
        "helpful_count": 59,
        "body": "Brief content visible, double tap to read full content. Full content visible, double tap to read brief content. I'd resisted the wireless headphone trend for as long as possible, preferring the regular 3.5mm jack. Unfortunately, iPhone thought it would be a good idea to get rid of the headphone jack altogether. I disagree with this decision, but I don't make phones, so... I used regular wired headphones with a connector thingy to be able to plug it into my phone for a while. That worked fine, except for the fact that the connectors would inevitably stop working after a while. So I went through many of those. Then one day, my phone stopped working with connectors. No matter what I did, the volume would go back to zero and I couldn't use the headphones at all. So finally I decided to get wireless headphones, even though I once heard it's like the equivalent of putting a microwave in each of your ears. Oh well, it's 2026 and wifi and 5G and whatever else is all over the place. But then I had to go down the rabbit hole of finding headphones that were worth it. I didn't want super expensive or fancy wireless headphones for listening to music with my phone. I have over-ear Sony headphones that I use for recording and sound editing, I just really needed something to listen to music on my phone with while going for a walk. Reading reviews was frustrating and took me all over the place. Finally I decided to go with my gut and just order these. They're fine. I'm a bit of a sound snob and I need bass. These are fine. They fit well enough and comfortable enough in my ears. They don't get as loud as I would prefer, but that's probably a good thing. The bass is decent. The overall sound feels balanced for the most part. They hold a charge for a long time, too. I've only charged the case once since I bought them a couple months ago and I don't even know if they were close to needing a charge. I only really use them when I go for a walk around the neighborhood. I use them to listen to music and have not tried to use them for a call or anything. They seem easy to use, though admittedly I don't care to be bothered to learn what all the various tap combinations do. I put them in my ears, they automatically pair with my phone after the initial pairing, and I use the controls on my phone for volume and track changes. This works for me. They are fine. I do not think ANY wireless headphones have the sound quality of wired headphones, so these are fine. The sound is fine. I'm not like, \"oh wow! these are amazing!\" but I am happily listening to tunes as the soundtrack to my walks. I like how they fit in the case and its easy enough to throw them in my purse. I almost dropped one once, and I did not like that feeling of not being able to catch them with a cord but, that's me. I will say it is nice not to have to deal with the cord in terms of it being in the way while walking around or getting tangled in a purse. I have no idea about the water resistance because that's not something I deal with while wearing headphones. In terms of noise cancellation... it's not something I've really noticed, but now that I think about it I don't really notice the sound of the traffic/cars on the street while I am walking. This may or may not be a good thing. But I am happy with them. For the price, I am happy with them. For the sound, I am happy with them. For the purpose of walking while listening to music, I am happy with them. If you are also going down the rabbit hole of reviews trying to find basic earbuds for music listening purposes, I do suggest getting these and saving yourself any more frustration. They're not perfect, they're not incredible, but they are just fine. Read more Read less",
        "images": [],
        "marketplace": "www.amazon.com"
      },
      {
        "review_id": "RFCP4BN3HRA4L",
        "profile_id": "amzn1.account.AFLWSMUOEH6UGVAOQCXVGGJCMNFQ",
        "rating": 5,
        "title": "Excellent sound, flawless white design and very durable battery life",
        "date": "August 13, 2026",
        "location": "the United States",
        "verified": true,
        "format": "Color: White",
        "helpful_count": 3,
        "body": "Brief content visible, double tap to read full content. Full content visible, double tap to read brief content. I am fascinated with these hearing aids. The white design looks super stylish, clean and modern, and the detail of the strap on the case is comfortable to take everywhere without falling off. In terms of performance, they completely exceeded my expectations. The bass is deep thanks to its 10mm drivers, and with the Soundcore app you can choose from its 22 equalizers to adapt the audio exactly to what you like to listen to. The battery lasts a long time (up to 30 hours with the case), the Bluetooth 5.3 connection is immediate and calls are heard very clearly thanks to the cancellation of noise by artificial intelligence from their microphones. They are lightweight, comfortable and waterproof, making them perfect for everyday life. A purchase with an unbeatable value for money. Read more Read less",
        "images": [],
        "marketplace": "www.amazon.com"
      },
      {
        "review_id": "RFNW1SMUUCS5",
        "profile_id": "amzn1.account.AE25BA3YG5ANQRCGX22I7245SS5Q",
        "rating": 5,
        "title": "So worth it and must buy!",
        "date": "August 13, 2026",
        "location": "the United States",
        "verified": true,
        "format": "Color: Black",
        "helpful_count": 3,
        "body": "Brief content visible, double tap to read full content. Full content visible, double tap to read brief content. I LOVE these headphones. I am someone who cares about how my music sounds, particular super clear and heavy bass. I have been searching for an affordable mix of this... and these are perfect. The bass is extremely great, and in the Soundcore app, you can adjust your level of bass and even make it more powerful (amongst other sound profiles). They sit comfortably in my ear, and they do not hurt. I had some other ear buds that would constantly fall out of my ear after a while, or I would have to put them in so tightly to prevent this that it'd hurt my ear. Not these! They are perfect. The touch controls are easy and customizable through the app. The charge lasts a LONG time. I've had these since like earlier this year, and I've only charged them once (I don't use them everyday but still). They look good, sleek with a black coating. They are easy to carry around, small, and have a band on the case to use. The product compared to the price is amazing and seems unbelievable in this economy nowadays. Most definitely worth the money, and you will love them! Read more Read less",
        "images": [
          "https://m.media-amazon.com/images/I/61vaSNQ3DpL._SY500_.jpg",
          "https://m.media-amazon.com/images/I/61xdTx0ftPL._SY500_.jpg"
        ],
        "marketplace": "www.amazon.com"
      }
    ],
    "review_insights": {
      "summary": "Customers find these earbuds to be of good quality with impressive battery life and fast charging capabilities. They are comfortable, with customers noting they don't hurt their ears at all, and one customer mentions they exceed expectations. The fit and connectivity receive mixed feedback - while some say they fit well and connect easily, others report them falling out of their ears and experiencing Bluetooth connection issues. Durability is also mixed, with some finding them long-lasting while others say they're not made to last.",
      "aspects": [
        {
          "keyword": "quality",
          "sentiment": "positive",
          "positive": true,
          "negative": false,
          "mentions": 6302,
          "mentions_positive_pct": 86
        },
        {
          "keyword": "sound quality",
          "sentiment": "positive",
          "positive": true,
          "negative": false,
          "mentions": 5803,
          "mentions_positive_pct": 85
        },
        {
          "keyword": "battery life",
          "sentiment": "positive",
          "positive": true,
          "negative": false,
          "mentions": 2166,
          "mentions_positive_pct": 79
        }
      ],
      "quotes": [
        {
          "text": "Great, been wanting earbuds for years and it's exactly what I wanted. However don't stress out your ear and make sure you are taking breaks if needed.",
          "review_id": null,
          "aspect": "quality"
        },
        {
          "text": "Great product . It’s worth it for the price. Lasts long, quality sound out put. Cons: pulse and continue or other functions are perhaps absent",
          "review_id": null,
          "aspect": "quality"
        },
        {
          "text": "...Good quality. Will have to adjust in ear from time to time to make sure they are not slipping while I’m working out. Worth it for 20$ definitely",
          "review_id": null,
          "aspect": "quality"
        }
      ]
    },
    "total_review_count": 113755,
    "average_rating": 4.4
  }
}
Real response, fetched from the live endpoint with the parameters on the left — trimmed to the first few rows, with seller names left out. Press Try it for the untrimmed response.

How the Amazon API works

Amazon is a normal ReefAPI surface — the same four rules that hold for every other engine on the key.

01
Authenticate
x-api-key header

No OAuth app, no request signing, no per-site account. One key covers all 184 engines.

02
Call
POST /amazon/v1/…

Every route is a POST with a JSON body. Parameters are validated against the published schema before anything is charged.

03
Pay
0 or 1 or 2 or 10 credits per call

Credits, not seats. Failed and blocked calls are never charged, and cache hits cost nothing.

04
Read
{ ok, data, meta, error }

One envelope everywhere. meta carries latency_ms, record_count and the endpoint that answered.

From a search term to a priced, rated catalogue

Search gives you ASINs and the grid-level price. Detail is what you call for the fields the grid does not carry — list price, the variant map, the barcodes, and the star rating that some marketplaces leave out of the grid entirely.

01search
POST/amazon/v1/search
{"query": "wireless earbuds", "marketplace": "amazon.com", "max_results": 10}

Rows carry asin, title, price, rating and rating_count. Take results[].asin.

02detail
POST/amazon/v1/product/detail
{"asin": "...", "marketplace": "amazon.com"}

Adds list_price, the variant ASIN map, the barcodes and the feature bullets. Two credits, flat.

03reviews
POST/amazon/v1/product/reviews
{"asin": "...", "marketplace": "amazon.com"}

The reviews printed on the product page. Read the cap in the table below before you plan around this one.

Ten search rows plus two credits per product enriched. Detail and offers are flat-priced, so enrichment scales linearly; the search step does not, because it bills per row.

request
curl -X POST https://api.reefapi.com/amazon/v1/product/detail \
  -H "x-api-key: $REEF_KEY" \
  -H "content-type: application/json" \
  -d '{"asin":"B0DGHMNQ5Z"}'
response envelope
{
  "ok": true,
  "data": { … },
  "meta": {
    "api": "amazon",
    "endpoint": "product/detail",
    "mode": "live",
    "latency_ms": …,
    "record_count": …
  },
  "error": null
}

Marketplace codes, and the currency symbol each one returns

marketplace picks the Amazon site, which sets both the language of every text field and the currency of every price. The currency field is the symbol Amazon prints, not an ISO-4217 code, so it is not unique - com and com.mx both return "$". Always store the marketplace next to the price. These values were measured with one search per site on 2026-08-26.

marketplaceSitecurrency value returned
com (default)amazon.com - United States$
co.ukamazon.co.uk - United Kingdom£
deamazon.de - Germany
co.jpamazon.co.jp - Japan¥ (fullwidth yen)
inamazon.in - India
com.tramazon.com.tr - TürkiyeTL
plamazon.pl - Polandzł (null on cards with no price)
seamazon.se - Swedenkr
aeamazon.ae - United Arab EmiratesAED
com.bramazon.com.br - BrazilR$
com.mxamazon.com.mx - Mexico$ (the same symbol as com, and not USD)

fr, it, es, ca, com.au, nl, sg and sa are accepted by the same enum but were not measured in this pass. An ASIN is per-marketplace: B0DGHMNQ5Z resolves on com and comes back in not_found on co.uk, de, co.jp, in, com.tr, com.br, pl, se and ae, because that listing does not exist on those sites.

The ASIN, the price, and the fields that come back empty

Measured against the live gateway on 2026-08-27 across earbuds, cookware and books on amazon.com, amazon.de, amazon.co.uk and amazon.fr. Five of these lines go against us.

One ASIN, several marketplaces

The same ASIN is the same product everywhere it is sold: B0BTYCRJSS answered on amazon.com, amazon.de and amazon.co.uk in one run, at three prices in three currencies. It is not guaranteed to exist everywhere — that same ASIN returned NOT_FOUND on amazon.co.jp. Ask the marketplace you care about; do not assume a catalogue is global.

A colour is its own ASIN, and it shares the parent's rating

product/detail returns variations.asin_map — every colour or size as its own ASIN. Those are separate products with their own price and their own barcode (the black earbud at 19.99 with UPC ...4434, the white one at 22.99 with UPC ...4427), but they report the SAME rating and rating_count, because Amazon pools reviews across a variation family. The variant count is per marketplace too: five colours on amazon.com, ten on amazon.de, for that one ASIN.

gtin-to-asin takes the upc, not the gtin

Against us. product/detail prints gtin, upc, ean, isbn and a barcodes array. Feeding the 14-digit gtin back into gtin-to-asin returned zero matches on two different products; feeding the 12-digit upc out of the same response returned the correct ASIN as the first match, both times. Use upc for the round trip.

price, list_price, and a currency that is a symbol

price is the buy-box number you would pay; list_price is the struck-through figure, and it is per marketplace (39.99 on .com against 24.99 on .de for one product). currency is the printed SYMBOL — $, £, € — not an ISO code, so map it yourself. A null price means the grid card carried no figure, which happens on parent listings that only price their variants.

rating_count used to be 100x too big. It is not any more.

Our defect, found and fixed on 2026-08-27: Amazon abbreviates large counts on the page ("198.6K"), and reading that string as a number inflated it a hundredfold. Re-measured for this page: the same product reports 113,699 ratings on .com, 113,298 on .co.uk and 112,914 on .fr — three independent surfaces, all in the right order of magnitude, differing exactly as separate marketplaces should.

amazon.de search rows carry no star rating

Against us, and not a one-off: across three German queries in three separate rounds, rating was null on every search row while rating_count was filled on nearly all of them. The rating IS present on amazon.de product/detail. If you need stars off a German grid, you have to enrich.

brand outside the US is the store-link text

Against us. On amazon.de brand came back as "Besuche den soundcore-Store" and on amazon.fr as "Visiter la boutique Soundcore" — the localised "Visit the Store" line, not the brand. Confirmed on three products across two marketplaces; on amazon.com the same field says "Soundcore". Until this is fixed, read the brand from tech_specs outside the US.

product/reviews returns the page, not the archive

Against us, and the response admits it: stop_reason comes back as inline_cap and completeness_pct as 0.01. A product with 113,699 ratings returned 13 reviews. The marketplaces parameter widens rather than deepens — asking three marketplaces returned 21 rows drawn from two of them. This is a sample of recent sentiment, not every review ever written.

Where the search feed stops

meta.pagination reports page_ceiling 7, and asking for 200 rows returned 83 unique ASINs before stopping with stop_reason empty_page. Requesting page 8 by hand still answered, with 16 rows of which 13 were new — so the ceiling belongs to the auto-pager, not to a hard wall. Every row across the deepest run was unique; nothing repeated.

What a call actually costs

search, bestsellers and new-releases are priced per ROW at one credit each, so 83 rows is 83 credits — the badge shows the unit price, not the call price. product/detail and product/offers are flat at 2, seller/profile and deals flat at 1, products_batch flat at 5 for the whole batch, product/reviews 1 credit per 25 rows, and autocomplete is free.

Two more empties to know before you build

Against us on both. product/offers returns the pinned buy-box row with seller reading literally "Sold by" — the merchant name is not parsed out; and seller/profile returned a seller name but null for feedback_positive_pct, lifetime_ratings and rating. The offer list itself is real: a used-cookware ASIN returned ten distinct offers with their own prices and conditions.

What people build with Amazon

The jobs this data is most often used for.

15

endpoints

0/1/2/10

credits per call

01

Pricing teams call product/offers to monitor the buy-box winner and third-party prices for an ASIN.

02

Catalog-enrichment tools use product/detail to fill product pages with images, specs and A+ content.

03

Review-analysis products pull product/reviews to track sentiment and rating trends over time.

What Amazon data costs

The cheapest call here is 0 credits, so $15/mo (Pro) buys 10,000 of them — $1.50 per 1,000 credits. Credits roll over and never expire, and failed or blocked calls are not charged.

Full pricing →
$0.67–$1.50 / 1,000 credits
  • 1,000 free credits on signup, no card
  • One key, all 184 APIs, one credit pool
  • Failed and blocked calls are never charged
  • Credits roll over and never expire

Call it in two lines

Sign up, get 1,000 credits and one key that works on every engine. Then this is the whole protocol.

curl
curl -X POST https://api.reefapi.com/amazon/v1/product/detail \
  -H "x-api-key: $REEF_KEY" \
  -H "content-type: application/json" \
  -d '{"asin":"B0DGHMNQ5Z"}'
python
import requests

r = requests.post(
    "https://api.reefapi.com/amazon/v1/product/detail",
    headers={"x-api-key": REEF_KEY},
    json={
  "asin": "B0DGHMNQ5Z"
},
)
print(r.json()["data"])
FAQ

Have a question? We got answers.

The questions people actually ask before wiring up Amazon.

Get a free key →
Why is currency "$" instead of "USD"?

Because it is read from the page, where Amazon prints a symbol. Measured values are $, £, €, the fullwidth ¥, ₹, R$, and the word-like TL, zł, kr and AED. Two consequences: it is not an ISO code, so do not hand it to a currency library unmapped, and it is not unique - amazon.com and amazon.com.mx both return "$" for very different amounts (a laptop at 4999 on com.mx is pesos). Derive your own currency from meta.marketplace, which every response echoes, and use currency only for display.

Is an ASIN always 10 characters?

Every ASIN measured was exactly 10 uppercase alphanumeric characters - B0DGHMNQ5Z, B01GJOMWVA, B0CKM9F15Z - and parent ids follow the same shape (B0GGJGSPPP, B0F15CGHY5). It is the code after /dp/ in a product URL. If all you have is a barcode, gtin-to-asin converts a UPC, EAN, ISBN or GTIN-14 into the matching ASIN or ASINs rather than making you guess.

Why does products_batch report a much smaller rating_count than product/detail?

products_batch reads Amazon's compact card, where the review count is abbreviated, and it passes that number through unchanged. Measured on the same two ASINs on 2026-08-26: batch returned rating_count 34 where product/detail returned 34,056, and 501 where detail returned 50,194. The star rating itself agrees (4.5 and 4.4). Use products_batch for cheap price and availability refreshes - one upstream call covers up to 15 ASINs - and read rating_count from product/detail whenever the exact number matters.

Why did my parent ASIN come back in not_found?

Because a parent ASIN is a grouping node, not a buyable listing, and Amazon does not serve it as a product page. A measured batch of four returned two products plus not_found ["B0ZZZZZZZZ", "B0GGJGSPPP"] - the first is nonsense, the second is the legitimate parent of the AirPods listing. Query a child ASIN instead. not_found is why the batch action is safe to run blind: nothing is silently dropped, and meta.batch reports requested, resolved, not_found and the ceiling of 15.

How do variations and the parent ASIN relate?

product/detail returns a variations object that maps the whole family in one call: total_children, parent_asin, dimensions (the axes, e.g. style_name and configuration), dimension_values (the options on each axis), asin_map (child ASIN to its option labels) and asin_dimensions (child ASIN to a keyed object). A measured AirPods 4 listing returned 4 children across two axes - Active Noise Cancellation yes/no crossed with AppleCare+ yes/no - under parent B0GGJGSPPP. So you can enumerate every variant with one detail call, then price only the children you care about.

How do the buy box and the third-party offers differ, and where is the seller name?

product/offers returns pinned (the offer Amazon is featuring) as a sibling of offers[] (everything else), and offer_count counts only the latter - a measured call returned meta.record_count 10 for 1 pinned plus 9 offers. Read the merchant from ships_from, which carried real storefront names like "VR Top Sell" and "D' Lolas House"; the seller field currently returns the row label rather than the name. Expect pinned and product/detail to disagree on price - the same ASIN measured 129.00 pinned against 99.00 on the detail page - so capture both rather than assuming either is the price.

What do condition values look like on an offer?

They are Amazon's own English grade strings, not a numeric enum: "New", and for used stock "Used - Like New", "Used - Very Good", "Used - Good" and "Used - Acceptable", all measured on live listings. delivery is a free-text promise line that includes Prime alternatives and an order-within countdown, so treat it as display copy rather than a date. Because offers[] mixes new and used, filter on condition before you compute a lowest price - the cheapest row on one measured ASIN was a used unit at 20.39 against a 34.99 new pinned price.

Why do review bodies start with "Brief content visible, double tap to read full content"?

That is Amazon's own screen-reader text, rendered inside the review block on the product page, and it is returned verbatim rather than being silently edited away. Strip that prefix and its "Full content visible, double tap to read brief content" twin before running sentiment analysis. The rest of the row is clean: review_id, author, profile_id, rating as a float, date as a localized long date ("August 18, 2026"), location, verified, format naming the variant bought, helpful_count and marketplace. Note also that product/detail returns reviews[] as a sibling of product, not nested inside it.

Which fields come back null when Amazon does not print them?

Barcodes and rich content are the usual blanks. On a measured mainstream ASIN, gtin, upc, ean and isbn were all null with barcodes an empty array, aplus was null, categories was empty, and coupon and campaign were null because that listing had no clippable coupon or deal ribbon. availability is null on a normally stocked card by design - Amazon only prints a stock line when stock is low or gone, and the engine does not invent one. Absent means "Amazon did not print it", never "zero".

What is the Amazon API?

Amazon API is a ReefAPI endpoint group for product details, prices, ratings and reviews. It returns live JSON through POST requests under /amazon/v1.

Is the Amazon API free to try?

Yes. ReefAPI starts with 1,000 free credits, no card required. Amazon calls use the same shared credit balance as every other ReefAPI engine.

Do I need an Amazon login or account?

No login to Amazon is needed for the API response. You call ReefAPI with your x-api-key header, and the playground can run live examples before you create a production key.

How fresh is the Amazon data?

The page example is captured from a live product/detail call, and production requests fetch live data through ReefAPI rather than a static sample.

How many credits does the Amazon API use?

Amazon actions currently cost 1-10 credits per successful call. Failed or blocked calls are free, and all APIs draw from one credit pool.

35 E-commerce & Marketplaces APIs on the same key

One key, one credit pool, one response envelope. If you are pulling Amazon, you are one call away from the rest of the category — no second contract, no second integration.

Need something this API does not do?

Name the endpoint, the field, or a source we do not carry yet. We ship new APIs every week and you would be first to get the key. Real people read every message and reply the same day.

0/4000

No account needed · we reply from [email protected]

Try it on your own data before you pay anything

The call above is the real endpoint, not a recording. A free key gives you 1,000 credits, the other 183 APIs, and the same envelope everywhere.

Endpoints, parameters and credit costs on this page are read from the live catalog and cannot drift from what the API accepts. Field notes were captured on 2026-08-27.