> ## Documentation Index
> Fetch the complete documentation index at: https://docs.gladeapi.com/llms.txt
> Use this file to discover all available pages before exploring further.

# GET /api/amazon/product — Fetch Amazon Product Data

> Retrieve full Amazon product details by ASIN, GTIN, or URL. Returns title, price, images, rating, feature bullets, specs, and seller info.

Fetch complete product data for any Amazon listing. You can look up a product by its ASIN, a full Amazon product URL, or a GTIN barcode. The response includes pricing, images, ratings, feature bullets, technical specifications, category breadcrumbs, and the active seller — everything you need to build rich product displays or power downstream analytics.

## Request

```http theme={null}
GET https://api.glade.dev/api/amazon/product
```

### Query Parameters

<ParamField query="domain" type="string" default="US">
  The Amazon marketplace to query. Accepted values: `US` `UK` `CA` `DE` `FR` `IT` `ES` `AU` `IN` `MX` `BR` `JP` `PL`. Defaults to `US` when omitted.
</ParamField>

<ParamField query="asin" type="string">
  The Amazon Standard Identification Number — a 10-character alphanumeric identifier (e.g. `B08N5WRWNW`). Provide at least one of `asin`, `url`, or `gtin`.
</ParamField>

<ParamField query="url" type="string">
  A full Amazon product URL (e.g. `https://www.amazon.com/dp/B08N5WRWNW`). Provide at least one of `asin`, `url`, or `gtin`.
</ParamField>

<ParamField query="gtin" type="string">
  A Global Trade Item Number (barcode), such as a UPC or EAN. Provide at least one of `asin`, `url`, or `gtin`.
</ParamField>

## Response

The product details are nested under `data.amazonProduct`.

<ResponseField name="data.amazonProduct" type="object">
  <Expandable title="amazonProduct fields" defaultOpen>
    <ResponseField name="title" type="string" required>
      The full product title as displayed on Amazon.
    </ResponseField>

    <ResponseField name="subtitle" type="string">
      An optional subtitle or tagline shown beneath the main title.
    </ResponseField>

    <ResponseField name="brand" type="string">
      The brand name associated with the product.
    </ResponseField>

    <ResponseField name="url" type="string">
      The canonical Amazon URL for this product listing.
    </ResponseField>

    <ResponseField name="asin" type="string">
      The product's ASIN, matching the pattern `^[A-Z0-9]{10}$`.
    </ResponseField>

    <ResponseField name="isPrime" type="boolean">
      `true` if the product is eligible for Amazon Prime shipping.
    </ResponseField>

    <ResponseField name="isNew" type="boolean">
      `true` if the product condition is listed as new.
    </ResponseField>

    <ResponseField name="isInStock" type="boolean">
      `true` if the product is currently available to purchase.
    </ResponseField>

    <ResponseField name="price" type="object">
      <Expandable title="price fields">
        <ResponseField name="symbol" type="string">
          Currency symbol, e.g. `$`.
        </ResponseField>

        <ResponseField name="value" type="number">
          Numeric price value, e.g. `29.99`.
        </ResponseField>

        <ResponseField name="currency" type="string">
          ISO 4217 currency code, e.g. `USD`.
        </ResponseField>

        <ResponseField name="display" type="string">
          Human-readable price string, e.g. `$29.99`.
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="mainImageUrl" type="string">
      URL of the primary product image.
    </ResponseField>

    <ResponseField name="imageUrls" type="string[]">
      Array of all available product image URLs.
    </ResponseField>

    <ResponseField name="rating" type="number">
      Average customer rating on a 0–5 scale.
    </ResponseField>

    <ResponseField name="ratingsTotal" type="integer">
      Total number of customer ratings.
    </ResponseField>

    <ResponseField name="featureBullets" type="string[]">
      Array of the product's key feature bullet points.
    </ResponseField>

    <ResponseField name="technicalSpecifications" type="object[]">
      <Expandable title="technicalSpecification item">
        <ResponseField name="name" type="string">
          Specification label, e.g. `Battery Life`.
        </ResponseField>

        <ResponseField name="value" type="string">
          Specification value, e.g. `20 hours`.
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="categories" type="object[]">
      <Expandable title="category item">
        <ResponseField name="id" type="string">
          Amazon category node ID.
        </ResponseField>

        <ResponseField name="name" type="string">
          Display name of the category.
        </ResponseField>

        <ResponseField name="url" type="string">
          URL to the category browse page.
        </ResponseField>

        <ResponseField name="breadcrumbPath" type="string">
          Full breadcrumb path, e.g. `Electronics > Headphones`.
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="coupon" type="object | null">
      <Expandable title="coupon fields">
        <ResponseField name="label" type="string">
          Coupon label text, e.g. `Save 10% with coupon`.
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="seller" type="object | null">
      <Expandable title="seller fields">
        <ResponseField name="sellerId" type="string">
          Unique Amazon seller identifier.
        </ResponseField>

        <ResponseField name="name" type="string">
          Seller display name.
        </ResponseField>
      </Expandable>
    </ResponseField>
  </Expandable>
</ResponseField>

### Example Response

```json theme={null}
{
  "data": {
    "amazonProduct": {
      "title": "Sony WH-1000XM5 Wireless Industry Leading Noise Canceling Headphones with Auto Noise Canceling Optimizer",
      "subtitle": "Industry-leading noise cancellation",
      "brand": "Sony",
      "url": "https://www.amazon.com/dp/B09XS7JWHH",
      "asin": "B09XS7JWHH",
      "isPrime": true,
      "isNew": true,
      "isInStock": true,
      "price": {
        "symbol": "$",
        "value": 279.99,
        "currency": "USD",
        "display": "$279.99"
      },
      "mainImageUrl": "https://m.media-amazon.com/images/I/51aXvjzcukL._AC_SL1500_.jpg",
      "imageUrls": [
        "https://m.media-amazon.com/images/I/51aXvjzcukL._AC_SL1500_.jpg",
        "https://m.media-amazon.com/images/I/61VGGe0dKWL._AC_SL1500_.jpg",
        "https://m.media-amazon.com/images/I/71o8Q5XJS5L._AC_SL1500_.jpg"
      ],
      "rating": 4.4,
      "ratingsTotal": 18423,
      "featureBullets": [
        "Industry-leading noise canceling with Integrated Processor V1",
        "Exceptional sound quality with the HD Noise Canceling Processor QN1",
        "Up to 30-hour battery life with quick charging (3 min charge = 3 hours playback)",
        "Crystal clear hands-free calling with 4 beamforming microphones",
        "Multipoint connection — connect to two Bluetooth devices simultaneously"
      ],
      "technicalSpecifications": [
        { "name": "Connectivity Technology", "value": "Bluetooth, 3.5mm Jack" },
        { "name": "Battery Life", "value": "30 Hours" },
        { "name": "Driver Size", "value": "30mm" },
        { "name": "Weight", "value": "250g" },
        { "name": "Color", "value": "Black" }
      ],
      "categories": [
        {
          "id": "172541",
          "name": "Over-Ear Headphones",
          "url": "https://www.amazon.com/b?node=172541",
          "breadcrumbPath": "Electronics > Headphones, Earbuds & Accessories > Headphones & Earbuds > Over-Ear Headphones"
        }
      ],
      "coupon": {
        "label": "Save $20.00 with coupon"
      },
      "seller": {
        "sellerId": "ATVPDKIKX0DER",
        "name": "Amazon.com"
      }
    }
  }
}
```

## Error Handling

All errors follow a consistent envelope. The HTTP status code mirrors the `code` field inside the `errors` array.

| Status | Meaning                                                                                |
| ------ | -------------------------------------------------------------------------------------- |
| `400`  | Bad request — a required parameter is missing or malformed.                            |
| `401`  | Unauthorized — your API key is missing or invalid.                                     |
| `402`  | Payment required — your plan limit has been reached.                                   |
| `429`  | Too many requests — you have exceeded the rate limit for your plan.                    |
| `502`  | Bad gateway — Amazon returned an unexpected response; retry with exponential back-off. |

```json theme={null}
{
  "success": false,
  "errors": [
    {
      "code": 400,
      "message": "Missing required parameter: asin, url, or gtin must be provided"
    }
  ]
}
```

## curl Example

```bash theme={null}
curl --request GET \
  --url 'https://api.glade.dev/api/amazon/product?asin=B09XS7JWHH&domain=US' \
  --header 'API-KEY: YOUR_API_KEY'
```
