Most Keepa integrations look products up by ASIN or barcode, read the price-history arrays, and track a list of products. Each of those has a direct equivalent in the ShopSavvy Data API, which adds prices from retailers beyond Amazon. Sales rank and Buy Box data do not carry over.
Updated · Keepa API docs checked 2026-10-12
Time: About 1-2 days for a typical integration: an hour to get a key and make the first calls, the rest to replace history decoding and tracking.
Start a 14-day Starter trial at shopsavvy.com/data#pricing. The dashboard creates an API key; send it as a bearer token.
curl -H "Authorization: Bearer ss_live_..." "https://api.shopsavvy.com/v1/products?ids=B07GV2S1GS"Keepa's product request takes asin or a product code and a domain. ShopSavvy takes any identifier in ids (ASIN, UPC/EAN/ISBN, URL, model number), up to 100 per call, and has no domain parameter: offers are US retailers in USD.
Keepa returns history as csv arrays of Keepa Time minutes and prices per history type. ShopSavvy returns history per offer as an array of points with ISO 8601 timestamps and USD prices, newest first, for a window of up to 366 days per call.
GET /v1/products/offers/history?ids=611247373064&start=2026-07-01&end=2026-09-30Schedule products for hourly, daily or weekly re-checks with PUT /v1/products/scheduled, and register a webhook for price_drop and availability_change events. Scheduling costs 1 credit per product; refreshes are not charged.
PUT /v1/products/scheduled?ids=B07GV2S1GS&schedule=dailyKeepa meters tokens per minute. ShopSavvy meters monthly credits (meta.credits_remaining on every response, GET /v1/usage for the period) and a separate limit of 1,000 requests per rolling hour.
| Keepa API | ShopSavvy Data API | Note |
|---|---|---|
| GET /product?asin=…&domain=1 | GET /v1/products?ids=<ASIN> | Product record; add /offers for prices |
| GET /product?code=… (UPC/EAN/ISBN-13) | GET /v1/products?ids=<barcode> | Same identifier |
| product.csv[] (Keepa Time) | offers[].history[] (timestamp, price, availability) | Per retailer offer, USD, ISO 8601 |
| product.stats | Compute from history | No precomputed stats object |
| tracking (notifyIf, thresholdValues) | PUT /v1/products/scheduled + POST /v1/webhooks | Webhook events: price_drop, availability_change, schedule_completion |
| tokensLeft | meta.credits_remaining | Monthly credits |
| salesRanks, buyBox data, seller requests | none | Does not transfer |
“Unconfirmed” means we could not confirm the Keepa API field name from its public documentation on 2026-10-12; check a sample response.
Yes. Both accept ASINs, so the same product list works with both.
You do not move history: ShopSavvy already has its own, back to 2011 and dense from 2019, for the products and retailers it has observed. Request up to 366 days per call.
Read first: ShopSavvy Data API vs Keepa API · Data API documentation · Pricing