---
title: "Search Amazon Products"
method: GET
path: "/v1/amazon/products"
tags: ["Amazon"]
---

# Search Amazon Products

`GET /v1/amazon/products`

## Request

- Base URL: `https://apidirect.io`
- URL: `https://apidirect.io/v1/amazon/products`
- Auth: API key in header `X-API-Key`

Search Amazon products by free-text keyword (or an ASIN) across 24 marketplaces. Each page returns ~16 results with price, rating, Prime status, sales volume, and badges.

**Price:** $0.005 per request. **Free tier:** 50 requests/month.

## Query parameters

- `query` string, required
- `page` integer
- `country` 'us' | 'au' | 'br' | 'ca' | 'cn' | 'fr' | 'de' | 'in' | 'it' | 'mx' | 'nl' | 'sg' | 'es' | 'tr' | 'ae' | 'gb' | 'jp' | 'sa' | 'pl' | 'se' | 'be' | 'eg' | 'za' | 'ie'
- `sort_by` 'relevance' | 'lowest_price' | 'highest_price' | 'reviews' | 'newest' | 'best_sellers'
- `category_id` string
- `category` string
- `min_price` number
- `max_price` number
- `product_condition` 'all' | 'new' | 'used' | 'renewed' | 'collectible'
- `brand` string
- `seller_id` string
- `is_prime` boolean
- `deals_and_discounts` 'none' | 'all_discounts' | 'todays_deals'
- `four_stars_and_up` boolean

## Response `200`

Successful response

- SearchAmazonProductsResponse: Inferred from a live response. Any field can be null or absent, and new fields may be added at any time.
  - `products` object[], nullable
    - `asin` string, nullable
    - `title` string, nullable
    - `price` string, nullable
    - `original_price` unknown
    - `unit_price` unknown
    - `unit_count` unknown
    - `currency` string, nullable
    - `rating` number, nullable
    - `num_ratings` number, nullable
    - `url` string, nullable
    - `photo` string, nullable
    - `num_offers` number, nullable
    - `minimum_offer_price` string, nullable
    - `is_best_seller` boolean, nullable
    - `is_amazon_choice` boolean, nullable
    - `is_prime` boolean, nullable
    - `climate_pledge_friendly` boolean, nullable
    - `sales_volume` string, nullable
    - `delivery` string, nullable
    - `availability` unknown
    - `has_variations` boolean, nullable
    - `badge` string, nullable
    - `coupon_text` unknown
  - `count` number, nullable
  - `total_products` number, nullable
  - `query` string, nullable
  - `page` number, nullable

## Other responses

- `400`: Bad request: missing or invalid parameters
- `401`: Unauthorized: invalid or missing API key
- `402`: Free tier used up for this endpoint and no payment method on file (`payment_required`).
- `403`: Account blocked after a failed payment (`account_blocked`).
- `429`: Rate limit exceeded or too many concurrent requests
- `500`: Internal server error
- `502`: Temporary failure retrieving Amazon data. Please retry shortly.
- `503`: Service temporarily unavailable. Please retry shortly.
- `504`: The request timed out

---

[API](https://skmtc.dev/apidirect/apis/api-direct.md) · [All operations](https://skmtc.dev/apidirect/apis/api-direct/llms.txt) · [OpenAPI document](https://skmtc.dev/apidirect/apis/api-direct/revisions/fa8c68d70bd0?raw)
