Amazon data API: the official API or an Apify Actor?
Amazon has an official API with limited access. 12 Apify Actors in this catalogue return Amazon data over HTTP too: send the input to Apify's run-sync endpoint with your token and get the records back as JSON, from $0.40 a run plus $0.99 per 1,000 results at Store prices (plus platform usage).
Side by side
| Amazon Creators API (replaced the Product Advertising API) and Selling Partner API | Apify Actors (12) | |
|---|---|---|
| Access | Limited access | Apify API token (any account) |
| What you get | Product Advertising API 5 is deprecated: calls now return HTTP 403 with a message to migrate to the Creators API, its successor for catalog data (SearchItems, GetItems, GetVariations, GetBrowseNodes). The Selling… | Rows defined by each Actor's published schema; up to 28 fields per record |
| Price | No per-call price is published for the Creators API. | From $0.40 a run plus $0.99 per 1,000 results (Store price, Free plan), plus platform usage |
| Limits | Creators API access requires enrolment in the Amazon Associates program for the marketplace and at least 10 qualifying sales in the past 30 days, then registration in Associates Central. | Synchronous calls wait up to 300 s; longer runs go asynchronous |
| Docs | Amazon Creators API (replaced the Product Advertising API) and Selling Partner API | Apify API: run-sync |
Official API facts checked 2026-11-12. Public product data only; respect Amazon's conditions of use; not legal advice.
Which Actor for which job
All of them list $0.99 per 1,000 results on the Store, plus a start fee per run.
| Actor | Returns | Fields include | Call it |
|---|---|---|---|
| Amazon Review Aggregates & Extended History Scraper | One record per collected Amazon customer review — rating, title, body, verified-purchase/Vine flags, helpful-votes count… | productAsin, reviewedProductAsin, ratingScore | run-sync · Apify |
| Amazon Deals Grid Tracker by Category & Discount | One record per discounted product on Amazon's Today's Deals grid: ASIN, title, images, local-currency deal/list price, savings… | asin, title, dealPrice | run-sync · Apify |
| Amazon Multi-Domain Product Price & Detail Scraper | One record per product, search result, or bestseller entry, plus explicit error rows. Fields include ASIN/parent ASIN… | title, asin, price | run-sync · Apify |
| Amazon All Offers & Buy Box Tracker | Per-seller offers for scraped Amazon ASINs -- condition (+ normalized condition bucket, + seller-provided condition note on used… | productAsin, offerPosition, condition | run-sync · Apify |
| Amazon Autocomplete Keyword Expander | Amazon search-autocomplete keyword suggestions with marketplace, department, expansion lineage, relative volume proxy, search… | seedKeyword, suggestion, volumeProxy | run-sync · Apify |
| Amazon Best Sellers & Rankings Scraper | Ranked chart items from Amazon's Best Sellers, New Releases, Most Wished For, Most Gifted, and Movers & Shakers pages… | asin, title, brand | run-sync · Apify |
| Amazon Brand Store Page & Merchandising Crawler | One dataset of typed records: store pages (identity, navigation, counts), merchandising sections (type, heading, CTA, media… | brand, pageName, asin | run-sync · Apify |
| Amazon Creator Storefront & Idea List Scraper | Amazon influencer storefront records: shop profiles, Idea List summaries and products, creator videos, shoppable photos… | handle, displayName, title | run-sync · Apify |
| Amazon Search, Category & Seller Listings Extractor | Amazon product records from search, category, and seller listings with price, rating, badges, and delivery details. | title, asin, price | run-sync · Apify |
| Amazon Third-Party Seller Profile & Storefront Catalog | Seller profile records (logo, business name/address/phone, ratings, feedback windows, histogram, recent individual feedback… | sellerId, sellerName, title | run-sync · Apify |
| Amazon Wishlist & Registry Scraper | List metadata (recordType=list: title, owner, description, event date/location, counts, access classification) and list-item… | title, accessClassification, asin | run-sync · Apify |
| Amazon Customer Review & Rating Summary Scraper | One record per Amazon customer review (rating, text, verified/Vine flags, helpful votes, variant, media, dates, source metadata)… | productAsin, ratingScore, reviewTitle | run-sync · Apify |
Call Amazon Deals Grid Tracker by Category & Discount
The call waits for the run and returns the records as JSON. Swap the Actor ID for any Actor in the table. Set APIFY_TOKEN first; runs bill to that account.
curl
curl -X POST "https://api.apify.com/v2/actors/dataspryva~amazon-deals-grid-tracker-by-category-and-discount/run-sync-get-dataset-items" \
-H "Authorization: Bearer $APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"marketplace":"amazon.com","primeExclusiveOnly":false,"sortBy":"featured","maxItems":3}' Install: pip install "apify-client>=3"
Python
import os
from apify_client import ApifyClient
client = ApifyClient(os.environ["APIFY_TOKEN"])
run_input = {
"marketplace": "amazon.com",
"primeExclusiveOnly": False,
"sortBy": "featured",
"maxItems": 3,
}
run = client.actor("dataspryva/amazon-deals-grid-tracker-by-category-and-discount").call(run_input=run_input)
if run is None:
raise RuntimeError("The Actor run could not be started")
print(run.status, "dataset", run.default_dataset_id)
for item in client.dataset(run.default_dataset_id).iterate_items():
print(item) Install: npm install apify-client
JavaScript
import { ApifyClient } from "apify-client";
const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const input = {
"marketplace": "amazon.com",
"primeExclusiveOnly": false,
"sortBy": "featured",
"maxItems": 3
};
const run = await client.actor("dataspryva/amazon-deals-grid-tracker-by-category-and-discount").call(input);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items.length, items[0]); Generated from the Actor's published schema and checked, not executed.
Same data, other routes
- Amazon MCP server: these Actors as tools in Claude, Cursor, ChatGPT, VS Code and Codex.
- Amazon prices to Google Sheets: an n8n workflow you can import.
- Amazon reviews to Google Sheets: an n8n workflow you can import.
- Every Actor with a one-request API
When a call fails
Why does the workflow or script stop with HTTP 408?
The synchronous endpoint waits at most 300 seconds. After that it answers 408 while the run keeps going in Apify. Lower the result limit, or start the run asynchronously, wait for it to finish and then read its dataset.
Source: Apify API: run Actor synchronously and get dataset items
What do 400, 401, 402 and 403 from the Apify API mean?
Read error.type in the response body. 400 is invalid Actor input. 401 (user-or-token-not-found) means a token reached Apify but it is wrong or revoked. 402 with x402-payment-required means no token reached Apify at all: the n8n credential or the Authorization: Bearer header is missing, and Apify is offering its pay-per-run x402 route for agents instead; any other 402 is an exhausted usage limit on the account that pays for the run. 403 is a token without permission for that Actor or storage.
Source: Apify API: authentication; Apify documentation: agentic payments with x402; Apify API: run Actor synchronously and get dataset items
Why does starting an Actor through the API return run information instead of scraped results?
The Run Actor endpoint starts the Actor and immediately returns a Run object without waiting for completion. For results stored in the default dataset, pass the response's defaultDatasetId to Get dataset items; to wait and receive output directly, use the synchronous endpoint for dataset items or a key-value store record.
Source: Apify Run Actor API
Why are rows and hidden fields missing from my Apify dataset export?
The clean parameter enables both skipEmpty and skipHidden, removing empty items and fields whose names begin with #. This can produce fewer items than the requested limit; to retain those rows and fields, disable clean and ensure skipEmpty and skipHidden are also disabled.
Source: Apify Get dataset items API
Questions
Is there an official Amazon API?
Product Advertising API 5 is deprecated: calls now return HTTP 403 with a message to migrate to the Creators API, its successor for catalog data (SearchItems, GetItems, GetVariations, GetBrowseNodes). The Selling Partner API serves authorized sellers. Neither is an open general-purpose retail data API. No per-call price is published for the Creators API.
How much does Amazon data cost through an Apify Actor?
The Actors listed here charge from $0.40 a run plus $0.99 per 1,000 results on the Apify Store (Free plan), checked 2026-11-12, billed to the Apify account whose token makes the call. Actor start events and platform usage can add to that.
Can I get Amazon data as JSON in one HTTP request?
Yes, through Apify's run-sync-get-dataset-items endpoint: POST the Actor input with your token and the response is the dataset as JSON. It waits up to 300 seconds; longer runs need the asynchronous run endpoint.
Can an AI agent use the same Amazon data?
Yes. The Amazon MCP page bundles these Actors into one Apify MCP URL for Claude, Cursor, ChatGPT, VS Code and Codex.
Is it allowed to collect Amazon data?
Public product data only; respect Amazon's conditions of use; not legal advice. Read Amazon's terms before you build on the data.
Sources
- Amazon Creators API (replaced the Product Advertising API) and Selling Partner API documentation, checked 2026-11-12
- Apify API: run Actor synchronously, checked 2026-11-11
- affiliate-program.amazon.com/creatorsapi/docs/en-us/paapiv5-deprecation, checked 2026-11-12
- Amazon terms