Amazon Product API
Fetch full Amazon product details (title, brand, price when in stock, images, ratings, review count, variants, and attributes) from a product URL.
Provider network
Providers ranked by traffic
capped at $0.0101 per request1 result$0.010012 results$0.0101 capYou are charged for what comes back. Lower the limit to pay less - and no single request can cost more than the cap, however much comes back.
Try it
Make your first request
{
"data": {
"items": [
{
"asin": "example",
"brand": "Acme Inc",
"category": "general",
"condition": "example",
"currency": "USD",
"description": "A short example description of this item.",
"features": [
"example"
],
"image": "https://example.com/image.jpg",
"images": [
"https://example.com/image.jpg"
],
"inStock": true,
"price": 19.99,
"rating": 4.6,
"reviewsCount": 12500,
"sellerName": "Example title",
"title": "Example title",
"url": "https://example.com/page"
}
]
},
"found": true
}interface AmazonProductResponse {
data: {
items: {
asin: string;
brand?: string;
category?: string;
condition?: string;
currency?: string;
description?: string;
features?: string[];
image?: string;
images?: string[];
inStock?: boolean;
price?: number;
rating?: number;
reviewsCount?: number;
sellerName?: string;
title: string;
url: string;
}[];
} | null;
found: boolean;
}Full parameter and response reference - every field, type, and example for this endpoint.
Reference
Request, response, and price
Last verified 2026-09-16 · uptime and latency measured over 30dcurl -X POST https://api.getanyapi.com/v1/run/amazon.product \
-H "Authorization: Bearer $ANYAPI_KEY" \
-H "Content-Type: application/json" \
-d '{"url":"https://www.amazon.com/dp/B00NTCH52W"}'| Field | Type | Example value |
|---|---|---|
| Request body | ||
| url | string | "https://www.amazon.com/dp/B00NTCH52W"Full Amazon product URL (e.g. https://www.amazon.com/dp/B0CX23V2ZK). |
| requireFields | array | Optional; omit it and routing is unchanged, with the cheapest source serving. Name the output fields this request must be able to return, for example `category` or `condition`, and it is served only by a source that returns every one of them. Fields you do not name are still returned whenever the serving source has them. This can raise your price: when the cheapest source cannot return a named field, a dearer source serves, and you are quoted and charged its price. A named field can still be absent on a product that genuinely lacks it. Naming a combination that no single source returns together is refused as invalid input, with no charge. |
| Response | ||
| data | object | Product wrapper, or null when the URL resolved to no product. |
| data.items | object[] | Product detail records (one per requested product URL). Populated whenever the provider has data for the entity. |
| data.items[].asin | string | Amazon Standard Identification Number. Populated whenever the provider has data for the entity. |
| data.items[].brand | string | Manufacturer or brand name. Populated whenever the provider has data for the entity. |
| data.items[].categorycan require | string | Category breadcrumb path, e.g. "Health & Household > Household Supplies". |
| data.items[].conditioncan require | string | Item condition, e.g. "New"; empty when not reported. |
| data.items[].currencycan require | string | Price currency symbol or code, e.g. "$". |
| data.items[].descriptioncan require | string | Product description text; empty when the listing has none. |
| data.items[].featurescan require | string[] | Bullet-point feature list from the listing. |
| data.items[].image | string | Primary product image URL. Populated whenever the provider has data for the entity. |
| data.items[].imagescan require | string[] | High-resolution product image URLs. |
| data.items[].inStockcan require | boolean | True when the product is purchasable. |
| data.items[].pricecan require | number | Current buy-box price as a numeric amount; 0 when the listing has no buyable price (out of stock). |
| data.items[].ratingcan require | number | Average customer star rating, 0-5; 0 when unrated. |
| data.items[].reviewsCountcan require | integer | Total number of customer reviews; 0 when none. |
| data.items[].sellerNamecan require | string | Name of the seller fulfilling the buy box. |
| data.items[].title | string | Product title. Populated whenever the provider has data for the entity. |
| data.items[].url | string | Canonical product detail page URL (tracking query params stripped). Populated whenever the provider has data for the entity. |
| found | boolean | True when the product was found. |
| Price | ||
| Price per request | USD | $0.001 |
| Price /1k req | USD | $1.00 |
FAQ
About the Amazon Product API
The AnyAPI Amazon Product API returns Amazon product data as normalized JSON from one POST call to /v1/run/amazon.product. Fetch full Amazon product details (title, brand, price when in stock, images, ratings, review count, variants, and attributes) from a product URL. AnyAPI routes each request across 3 sources and falls back automatically when one fails. It costs from $1 per 1,000 requests, in US dollars with no subscription and no monthly minimum. Over the last 30 days, 100.0% of Amazon product calls through AnyAPI succeeded, with a median response time of 10.1 seconds across 104 measured calls.