Best Buy
Best Buy Prices API (Batch)
Current bestbuy.com prices for up to 15 SKUs in one call: price, regular price, savings in dollars and percent, on-sale flag and deal badge per SKU (deal_ends_at is usually null here; read a deal's end time from product). A SKU Best Buy does not know comes back found: false; if none is known the call is a 404 and is not charged. Costs 2 credits per call, whatever the number of SKUs.
POST/api/v1/bestbuy/prices
Authorizations
AuthorizationstringheaderrequiredBearer authentication header of the form Bearer <token>, where <token> is your Scavio API key (e.g. Bearer sk_live_your_key).
Body
application/jsonskusstring[]required1-15 Best Buy SKUs, as an array or a comma-separated string. Duplicates are dropped.
Example: ["6607832", "6673112", "6679316"]
Request
from scavio import ScavioClient
client = ScavioClient(api_key="sk_live_your_key")
watchlist = {"6607832": 180.00, "6673112": 1300.00, "6679316": 380.00} # sku -> target price
res = client.best_buy.prices(skus=list(watchlist))["data"]
for p in res["prices"]:
if p["found"] and p["price"] <= watchlist[p["sku"]]:
print("price drop:", p["sku"], p["price"], "was", p["regular_price"])Response
"count": 3,
"requested": 3,
},
"response_time": 2044
}