Skip to content
Back to skills

Ecommerce Amazon Product History

ASecurity

Retrieve Amazon product details by ASIN, including price, title, main image, listing date, material, weight, variant monthly sales, and up to 12 months of monthly sales history. Triggered when users query Amazon product details, ASIN lookup, product pricing, sales rank history, monthly sales trends, product dimensions, FBA fees, product specifications, batch ASIN query, Keepa product details, ASIN detail lookup, monthly sales data, pricing info, product specifications, FBA fees, batch ASIN qu...

  • 81 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added September 2, 2026
ai-agentspythongoexpressapibackend

Works with

  • claude code
  • cli
  • api

Security analysis

A100/100

Pro scans all 4 files and shows the line behind each finding

Scanned September 20, 2026

npx -y skills add nexscope-ai/nexscope-ecommerce-skills --skill ecommerce-amazon-product-history --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Ecommerce Amazon Product History?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Ecommerce Amazon Product History
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/nexscope-ai-ecommerce-amazon-product-history/badge)](https://www.skillsdirectory.com/skills/nexscope-ai-ecommerce-amazon-product-history)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: ecommerce.amazon-product-history
description: Retrieve Amazon product details by ASIN, including price, title, main image, listing date, material, weight, variant monthly sales, and up to 12 months of monthly sales history. Triggered when users query Amazon product details, ASIN lookup, product pricing, sales rank history, monthly sales trends, product dimensions, FBA fees, product specifications, batch ASIN query, Keepa product details, ASIN detail lookup, monthly sales data, pricing info, product specifications, FBA fees, batch ASIN query. Even if users do not explicitly mention "Keepa", this skill should be triggered whenever the task involves obtaining structured product data for one or more Amazon ASINs.
---

# Keepa Product Data Request

This skill guides you on how to retrieve Amazon product details via the Keepa product request API, helping Amazon sellers and analysts obtain structured product data for one or more ASINs across multiple Amazon marketplaces.

## Core Concepts

The Keepa Product Request API returns detailed product listing data from Amazon, sourced through Keepa. Given one or more ASINs and a marketplace, it returns comprehensive product information: pricing, title, Item Highlights (`itemHighlights`, when available), main image, listing date, material, weight, dimensions, sales rank, monthly sales units (current and up to 12 months of history), FBA fees, ratings, review counts, category tree, and more.

**Key points**:
- You can query up to **5 ASINs** in a single request by separating them with commas.
- The `domain` parameter is a numeric marketplace ID (e.g., `1` = Amazon.com US), not a country code.
- Setting `history` to `1` includes historical sales data (monthly sales for up to 12 prior months, average sales rank over 30/90/180 days). Setting it to `0` returns only current product information.
- `products[].itemHighlights` is a short product-information string separate from `title`; it may be `null`, blank, or absent and requires no extra request parameter.
- The response does **not** include full product descriptions or review content. Item Highlights are not bullet points (`features`) or a full description.

## Parameter Guide

### domain (Required)

Numeric Amazon marketplace ID. The mapping is:

| Domain ID | Marketplace |
|-----------|-------------|
| 1 | Amazon.com (US) |
| 2 | Amazon.co.uk (UK) |
| 3 | Amazon.de (Germany) |
| 4 | Amazon.fr (France) |
| 5 | Amazon.co.jp (Japan) |
| 6 | Amazon.ca (Canada) |
| 8 | Amazon.it (Italy) |
| 9 | Amazon.es (Spain) |
| 10 | Amazon.in (India) |
| 11 | Amazon.com.mx (Mexico) |
| 12 | Amazon.com.br (Brazil) |

Default to **1** (US) when the user does not specify a marketplace.

### asin (Required)

One or more Amazon Standard Identification Numbers. For multiple ASINs, separate with commas. Maximum 5 ASINs per request, with a total string length limit of 300 characters.

### history (Optional)

Whether to include historical data such as monthly sales for the past 12 months and average sales rank over 30/90/180 days. Set to `1` to include history, `0` (default) for basic info only.

## Usage Examples

**1. Single ASIN lookup (US marketplace, basic info)**
```json
{"asin": "B0088PUEPK", "domain": "1"}
```

**2. Single ASIN with historical sales data**
```json
{"asin": "B0088PUEPK", "domain": "1", "history": 1}
```

**3. Batch lookup of multiple ASINs (Germany)**
```json
{"asin": "B0088PUEPK,B00U26V4VQ,B07M68S376", "domain": "3", "history": 1}
```

**4. Product lookup on Amazon Japan**
```json
{"asin": "B09V3KXJPB", "domain": "5", "history": 0}
```

**5. Competitor comparison across multiple ASINs (US, with sales history)**
```json
{"asin": "B0CXYZ1234,B0CXYZ5678,B0CXYZ9012,B0CXYZABCD", "domain": "1", "history": 1}
```

## API Invocation

- **API Endpoint**: `POST /keepa/productRequest` (see `references/api.md` for full parameters/responses/error codes)
- **Python Script**: `python scripts/amazon_product_history.py '<JSON params>' [--inline]`
- **Cost Constraints**: This tool consumes credits. The same parameter combination in the same session is only called once by default, with 24h local caching in the script. Failed or empty results should not trigger automatic retries with different keywords, pagination, or postal codes. Inform the user before making additional queries that will incur extra costs.

**Output Strategy (default script behavior)**:
- **Always** write the full response to `<cwd>/nexscope/<YYYY-MM-DD>/<session>/data/nexscope-keepa-product-request-<timestamp>.json` (`<cwd>` is the working directory at script execution time, which in Claude Code is the current project directory; `<session>` is taken from the `SESSION_ID` environment variable, auto-grouped by user task; **do not write to /tmp**, error out if the current directory is not writable)
- Response body less than or equal to 8 KB: print the full JSON to stdout after saving to disk
- Response body greater than 8 KB: after saving, stdout prints only a summary (top-level fields, common counts like `total`/`costToken`, length of the largest list field + first 3 samples)
- Add `--inline` to force full output to stdout (still saves to disk)

**Data Reading Tips**: Check the summary first to determine if it is sufficient. When specific fields are needed, use `jq` or `ConvertFrom-Json` to extract from the saved JSON file on demand, avoiding loading the entire JSON into context.

## Authentication

Set the `NEXSCOPE_API_KEY` environment variable. If authentication fails (401/402) or you see insufficient balance errors, visit https://www.nexscope.ai/help/skills-external-access?co-from=skillNS to get an API Key or top up credits.

## Display Rules

1. **Present data clearly**: Show product details in well-structured tables. Group related fields (e.g., dimensions together, sales data together) for readability.
2. **Price and currency**: Always display the price alongside its currency (e.g., "$29.99 USD"). The `currency` field in the response indicates the local currency.
3. **Sales trend**: When historical data is included, present the 12-month sales trend in a table or describe the trajectory (growing, declining, stable) to help users quickly assess momentum.
4. **Dimensions and weight**: Convert millimeter values to more intuitive units when appropriate (e.g., show both mm and inches, or mm and cm). Note that weight is in grams.
5. **Unavailable data**: Fields with value `0` or `-1` indicate data is unavailable. Do not display these as actual measurements; instead note "N/A" or omit them.
6. **Image display**: If `imageUrl` is present, display the product image to help users visually identify the product.
7. **Error handling**: When a query fails, explain the issue based on the response and suggest corrections (e.g., invalid ASIN format, unsupported marketplace).
8. **Large batch results**: For batch queries with many ASINs, present a summary table first and offer to show individual product details on request.
9. **Item Highlights**: Read `products[].itemHighlights` from the full response and display the original value separately from `title`. If it is missing, null, or blank, label it unavailable; do not reconstruct it from the title, features, or description.
## Important Limitations

- **No full product descriptions or reviews**: The API may return short Item Highlights, but not full product description text or review content.
- **Item Highlights availability**: Do not promise a value for every ASIN; availability depends on upstream data and backend pass-through.
- **Maximum 5 ASINs per request**: Batch queries are capped at 5 ASINs.
- **ASIN string length limit**: The `asin` parameter has a maximum length of 300 characters.
- **Historical data is optional**: Monthly sales history is only returned when `history` is set to `1`.
- **Data freshness**: The `lastUpdate` field indicates when the product data was last refreshed.

## User Expression and Scenario Quick Reference

**Applicable** -- Product data retrieval by ASIN:

| User Says | Scenario |
|-----------|----------|
| "Look up this ASIN", "Get product details for B0XXXXXXXX" | Single ASIN lookup |
| "Get this ASIN's Item Highlights" | Retrieve existing `itemHighlights` separately from `title` |
| "What is the price of this product on Amazon" | Price query |
| "How many units does this product sell per month" | Monthly sales check |
| "Compare these ASINs", "batch lookup these products" | Multi-ASIN comparison |
| "Show me the sales trend for this ASIN" | Historical sales analysis |
| "What category is this product in" | Category / classification lookup |
| "Product dimensions", "how much does it weigh" | Physical specs query |
| "FBA fees for this product" | Fee estimation |
| "When was this product listed", "listing date" | Listing age / launch date |
| "Is this product FBA or FBM" | Fulfillment method check |

**Not applicable** -- Needs beyond ASIN-level product data:

- Search term / keyword analysis (use ABA data tools instead)
- Full product descriptions, review text, or generating new listing copy; retrieving existing `itemHighlights` is supported
- Advertising / PPC campaign data
- Seller account or store-level analytics
- Product research without specific ASINs (e.g., "find trending products in kitchen category")
- Price history charts or Buy Box history over time (only current and average rank data are available)

**Boundary judgment**: When users say "product research" or "competitor analysis", if they have specific ASINs and want structured product data (price, sales, dimensions, category), this skill applies. If they want keyword-level analysis, market-wide trends without specific ASINs, or advertising metrics, this skill does not apply.

Files in this skill

  • SKILL.md8.6 KB
  • manifest.json243 B
  • references/api.md6.8 KB
  • scripts/amazon_product_history.py6.6 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.