Best Buy API
Best Buy product data as structured JSON: search and category listings with clearance, on-sale and open-box filters; product detail with UPC, the full spec table and every open-box price by condition; store pickup status at up to 8 stores; prices for 15 SKUs in one call; the Deal of the Day; reviews; and a store locator.
50 free credits on signup, covering 25 Best Buy product or price calls. No card, no Best Buy developer account.
{ "data": { "query": "tv", "page": 1, "page_size": 18, "total_results": 1417, "total_pages": 79, "sort": "best_match", "category": { "id": "abcat0101000", "name": "TVs" }, "applied_filters": [], "corrected_query": null, "redirect_url": null, "count": 18, "sponsored_count": 6, "products": [ { "position": 1, "sponsored": false, "sku": "6670835", "bsin": "JJGRF3QTGR", "name": "Samsung - 65” Class U8000H Series Crystal UHD 4K Smart Tizen TV (2026)", "brand": "Samsung", "model": "UN65U8000HFXZA", "url": "https://www.bestbuy.com/product/samsung-65-class-u8000h-series-crystal-uhd-4k-smart-tizen-tv-2026/JJGRF3QTGR/sku/6670835", "image": "https://pisces.bbystatic.com/image2/BestBuy_US/images/products/aa8a5020-a545-4d94-8c6a-603453def643.jpg", "price": 299.99, "regular_price": 399.99, "savings": 100, "savings_percent": 25, "on_sale": true, "badge": "Holiday Deal", "deal_ends_at": null, "condition": "new", "rating": 4.8, "review_count": 136, "seller_type": "best_buy", "product_type": "Television", "badges": [ "Best Selling", "… 1 more (trimmed for preview)" ], "release_date": "2026-03-23" }, "… 17 more (trimmed for preview)" ], "facets": [ { "field": "samedayshippingallcondition_facet", "name": "GIF-Same Day Shipping", "value_count": 1, "values": [ { "value": "55423", "count": 60 } ] }, "… 27 more (trimmed for preview)" ], "sort_options": [ "best_match", "… 6 more (trimmed for preview)" ], "related_searches": [ "laptop", "… 4 more (trimmed for preview)" ] }, "response_time": 3638}Live calls against the real endpoints. 2 free runs across every tab, then it's your own key.
What is the Scavio Best Buy API?
The Scavio Best Buy API is a REST API that returns bestbuy.com (US) data as structured JSON. Its 9 POST endpoints cover search, category and deals pages, product detail with open-box prices by condition, customer reviews, the Deal of the Day, store pickup availability at up to 8 stores, prices for up to 15 SKUs per call, a store locator and search suggestions. Calls cost 1 to 3 credits.
- 9
- endpoints, all live in production
- 2
- credits for search, product, reviews, availability and up to 15 prices
- 18
- products per listing page, up to page 100
The Best Buy data buyers actually need
What a SKU costs new and open box, which store has it for pickup, and when the price drops.
Open-box prices by condition
POST /api/v1/bestbuy/productEvery open-box offer on a SKU, fair, good and excellent, with its price and its savings against new and against the regular price. The Insignia 55" Fire TV was $189.99 new; open-box fair was $165.99, good $171.99, excellent $176.99.
Store pickup status, store by store
POST /api/v1/bestbuy/availabilityOne SKU at up to 8 stores near a ZIP: in stock, limited, ship to store or out of stock, with the pickup date. All 3 San Francisco-area stores in our capture had the Insignia in stock for pickup the same day.
15 prices in one call
POST /api/v1/bestbuy/pricesPrice, regular price, savings and deal badge for up to 15 SKUs for 2 credits. Re-check a watchlist on a schedule and alert on a price drop.
Deal of the Day
POST /api/v1/bestbuy/dealsToday's Deal of the Day and the more-deals row with live prices: a Greenworks 80-Volt blower at $99.99 against $299.99, 66% off, on 2026-11-08, plus 14 more deals.
Clearance and open-box feeds
POST /api/v1/bestbuy/categoryAny category with clearance, on-sale or open-box filters; clearance sorts by best discount. All Flat-Screen TVs held 1,329 products; the Current Deals filter counted 135 on clearance.
UPC, model and the full spec table
POST /api/v1/bestbuy/productUPC and model number to match a Best Buy SKU across retailers, and the full specification table: 95 rows in 13 groups for the Insignia TV.
All 9 Best Buy API endpoints
Every route is a POST, returns JSON, and takes the same API key. 1 to 3 credits per successful call; errors are not charged.
| Endpoint | Returns | Credits |
|---|---|---|
Search/api/v1/bestbuy/search | Keyword search, 18 organic products per page, seven sorts, filters for brand, on sale, clearance, open box and price range: SKU, model, price, regular price, savings, deal badge and end time, condition, rating, review count, seller type, plus the filter sidebar with counts and related searches | 2 |
Product detail/api/v1/bestbuy/product | One SKU: UPC, model, price, regular price, savings, deal badge, every open-box offer by condition (fair, good, excellent) with savings against new and regular, the full spec table, features, what's included, dimensions, images, manuals and the AI review summary | 2 |
Reviews/api/v1/bestbuy/reviews | Best Buy customer reviews, 20 per page, six sorts and a star filter, with the star histogram, recommended percent and the most mentioned pros and cons; each review with rating, text, verified purchase, days of ownership, helpful votes, photos and the brand's response | 2 |
Category and deals pages/api/v1/bestbuy/category | Any category by id or URL, 18 products per page with six sorts and the search filters, so clearance and open-box feeds per category. 2 credits for an abcat category, 3 for a pcmcat merchandised page such as All Electronics on Sale | 2-3 |
Deal of the Day/api/v1/bestbuy/deals | Today's Deal of the Day and the more-deals row, up to 15 products, each with live price, regular price, savings, rating and review count, plus the countdown end | 3 |
Store pickup availability/api/v1/bestbuy/availability | One SKU at up to 8 stores near a ZIP or by store id: in_stock, limited, ship_to_store, out_of_stock, not_available_for_pickup or unknown, the pickup date and the nearby store Best Buy suggests. 2 credits flat | 2 |
Prices (batch)/api/v1/bestbuy/prices | Current price, regular price, savings, on-sale flag and deal badge for up to 15 SKUs in one call, 2 credits whatever the count | 2 |
Store locator/api/v1/bestbuy/stores | Up to 15 Best Buy stores near a US ZIP: store id, address, phone, open status, distance and dated hours for the next 35 days, holidays included | 1 |
Search suggestions/api/v1/bestbuy/suggestions | The bestbuy.com search-box autocomplete: suggested terms, each with its categories and SKUs | 1 |
50 free credits on signup covers 25 Best Buy calls at 2 credits. See plans
Find open-box deals, then track the price
Category turns any department into an open-box or clearance feed; product returns each open-box condition's price; prices re-checks 15 SKUs per call. The response on the right is a real capture.
from scavio import ScavioClient
client = ScavioClient(api_key="sk_live_your_key")
# Open-box TVs (Best Buy lists them best-selling first) - 2 credits
res = client.best_buy.category(
category_id="abcat0101001", filters={"open_box": True}
)["data"]
# Open-box price per condition for the first one - 2 credits
p = client.best_buy.product(sku=res["products"][0]["sku"])["data"]
print(p["name"], "new", p["price"], "regular", p["regular_price"])
for o in p["open_box"]:
print(o["condition"], o["price"], "saves", o["savings_vs_new"], "vs new"){
"data": {
"sku": "6607832",
"bsin": "J2FPJKSV76",
"name": "Insignia™ - 55\" Class F50 Series LED 4K UHD Smart Fire TV",
"brand": "Insignia™",
"model": "NS-55F501NA26",
"upc": "600603311888",
"url": "https://www.bestbuy.com/product/insignia-55-class-f50-series-led-4k-uhd-smart-fire-tv/J2FPJKSV76/sku/6607832",
"status": "active",
"condition": "new",
"product_type": "Televisions",
"category_path": [
{
"id": "abcat0101001",
"name": "All Flat-Screen TVs",
"url": "https://www.bestbuy.com/site/tvs/all-flat-screen-tvs/abcat0101001.c?id=abcat0101001"
}
],
"price": 189.99,
"regular_price": 349.99,
"savings": 160,
"savings_percent": 45,
"on_sale": true,
"badge": "Holiday Deal",
"deal_ends_at": "2026-11-08T23:59:59 CST",
"financing": null,
"open_box": [
{
"condition": "fair",
"price": 165.99,
"savings_vs_new": 24,
"savings_vs_regular": 184,
"savings_percent": 52,
"url": "https://www.bestbuy.com/product/insignia-55-class-f50-series-led-4k-uhd-smart-fire-tv/J2FPJKSV76/sku/6607832/openbox?condition=fair"
},
{
"condition": "good",
"price": 171.99,
"savings_vs_new": 18,
"savings_vs_regular": 178,
"savings_percent": 50,
"url": "https://www.bestbuy.com/product/insignia-55-class-f50-series-led-4k-uhd-smart-fire-tv/J2FPJKSV76/sku/6607832/openbox?condition=good"
},
{
"condition": "excellent",
"price": 176.99,
"savings_vs_new": 13,
"savings_vs_regular": 173,
"savings_percent": 49,
"url": "https://www.bestbuy.com/product/insignia-55-class-f50-series-led-4k-uhd-smart-fire-tv/J2FPJKSV76/sku/6607832/openbox?condition=excellent"
}
],
"seller_type": "best_buy",
"other_offers": [],
"rating": 4.6,
"review_count": 4031,
"review_summary": "Customers admire the excellent picture quality, ease of setup, and ideal size of the 55\" Class F50 Series LED 4K UHD Smart Fire TV. The lightweight design is also appreciated by some users. However, a few customers have noted that the button layout could be more user-friendly and the volume could be improved.",
"what_customers_love": [
"Picture quality looks vibrant and impressive",
"Sets up quickly right out of the box"
],
"description": "This 55-inch screen uses 4K Ultra HD technology for vibrant, true-to-life images. HDR10 contrasts bright highlights with dark shadows, so you can catch subtle details. Plus, DTS Virtual-X audio technology delivers life-like sound from your TV. Access live over-the-air channels and streaming—and control it all with your voice. Ask Alexa to launch apps, search for titles and more. The Insignia 55” Class F50 Series LED 4K UHD Smart Fire TV is ready for an unforgettable night of entertainment.",
"features": [
{
"title": "4k Ultra HD (2160p resolution)",
"description": "Enjoy breathtaking HDR10 4K movies and TV shows at 4 times the resolution of Full HD, and upscale your current content to Ultra HD-level picture quality."
}
],
"included_items": [
"Insignia 55\" Class F50 Series LED 4K UHD Smart Fire TV",
"Voice Remote with Alexa",
"Batteries (AAA*2)"
],
"specifications": [
{
"group": "Key Specs",
"name": "Display Type",
"value": "LED"
},
{
"group": "Key Specs",
"name": "Resolution",
"value": "4K (2160p)"
},
{
"group": "Key Specs",
"name": "Screen Size Class",
"value": "55 inches"
}
],
"dimensions": {
"height": null,
"width": "48.4 inches",
"depth": null,
"weight": null
},
"images": [
"https://pisces.bbystatic.com/image2/BestBuy_US/images/products/2c3f0bff-9d72-4850-97ac-879cc3cd8162.jpg"
],
"manuals": [
{
"type": "Warranty Manual",
"url": "https://files.bbystatic.com/xR%2BLqpEeZ1WAOL8A%2FGIPkQ%3D%3D/b6e4c80f-2b83-4f4b-b780-e87ba5bd3091"
}
],
"badges": [
"Best Selling",
"Trending Deal",
"A Best Buy brand"
],
"release_date": "2025-05-01"
},
"response_time": 2973
}Why not the official Best Buy API?
Best Buy runs its own developer API. Here is where the Scavio Best Buy API differs.
Best Buy developer API
- Keys need a company-domain email and Best Buy's approval (free-email signups refused since 2016); going over the call limit returns a 403
- Its terms bar storing or caching data beyond 72 hours, so it cannot hold a price history for a tracker
- Open-box offers documented with two conditions, excellent and certified
- Its own query language and response format, a separate integration from every other retailer you track
Scavio Best Buy API
- One Scavio key, issued at signup, shared with Amazon, Walmart, Target and 70+ other platforms
- Open-box prices for the conditions bestbuy.com shows today, fair, good and excellent, with savings against new and regular
- Store pickup status as bestbuy.com shows it, at up to 8 stores per call, for 2 credits
- Today's Deal of the Day and the more-deals row with live prices
- Up to 15 SKUs priced in one 2-credit call
- Plain JSON over POST, the same request style as every other Scavio retailer
Scavio returns publicly available bestbuy.com data only, never signs in as a Best Buy customer and never places orders.
What developers build with it
Best Buy price tracker and price drop alerts
Keep a watchlist of SKUs, check up to 15 per 2-credit call on a schedule, and alert when price drops below a target or on_sale flips.
pricesOpen-box deal finder
Filter a category to open-box products, then read each SKU's fair, good and excellent prices and how much each saves against new.
category + productIn-stock tracker for store pickup
Check a SKU at the stores near a shopper's ZIP and notify them when a store moves from out_of_stock or ship_to_store to in_stock or limited.
availability + storesDeal of the Day history
Save the Deal of the Day and the more-deals row every day to see which products and discounts Best Buy features.
dealsClearance monitoring
Pull a category with the clearance filter sorted by best discount every morning and alert on new clearance SKUs or deeper markdowns.
categoryPrice comparison across retailers
Match Best Buy SKUs to other retailers by UPC and model number and compare the price and regular price side by side.
product + Amazon, Walmart, Target APIsReview and complaint mining
Pull a product's lowest-rated reviews and its pros and cons with mention counts to see what buyers praise and what goes wrong.
reviewsResale sourcing and MAP monitoring
Watch a brand's prices across a category, sorted by price, and flag listings below the price you expect.
search + category + pricesKeyword and catalog research
Expand a seed term into Best Buy's own suggestions, with the categories and SKUs it attaches to each.
suggestions + searchHow to get Best Buy data as JSON
- 1
Get an API key
Sign up for a Scavio account and copy your key from the dashboard. You get 50 free credits on signup, enough for 25 Best Buy product or price calls, with no card required and no Best Buy developer account.
- 2
Search Best Buy
Send {"query": "tv"} to https://api.scavio.dev/api/v1/bestbuy/search with an Authorization: Bearer header. Each product comes back with its sku, price, regular price, savings and deal badge.
- 3
Open the product
Pass that sku to /api/v1/bestbuy/product for its UPC, model, spec table and every open-box offer by condition, or to /api/v1/bestbuy/prices with up to 14 more SKUs for their current prices.
- 4
Check store pickup
Send the sku and a ZIP to /api/v1/bestbuy/availability for each nearby store's pickup status and date, then look up a store_id with /api/v1/bestbuy/stores for its hours.
Best Buy API FAQ
Does Best Buy have an API?
+
Best Buy runs a developer API at developer.bestbuy.com with its own key and call limits. The Scavio Best Buy API is a separate option: 9 POST endpoints that return what bestbuy.com shows today as structured JSON, on the same key as Scavio's other retailers: search, product detail with open-box prices, reviews, category and deals pages, Deal of the Day, store pickup availability, batch prices, a store locator and search suggestions.
Can I get Best Buy open-box prices?
+
Yes. /api/v1/bestbuy/product returns every open-box offer on a SKU by condition, fair, good and excellent, with its price, savings_vs_new, savings_vs_regular and savings_percent. The Insignia 55" F50 Fire TV was $189.99 new against a $349.99 regular price; open-box fair was $165.99, good $171.99 and excellent $176.99. To find open-box products in the first place, pass filters.open_box to search or category.
Can I check whether a Best Buy store has an item in stock?
+
Yes. /api/v1/bestbuy/availability checks one SKU at up to 8 stores, the nearest to a ZIP or the store ids you pass, and returns each store's pickup status: in_stock, limited, ship_to_store, out_of_stock, not_available_for_pickup or unknown, with the pickup date. It costs 2 credits whatever the number of stores and takes 5 to 20 seconds.
Does the API return how many units a store has?
+
No, because Best Buy does not publish unit counts for well-stocked items, and we do not invent them: quantity is null for in_stock. It is a number only on limited, when Best Buy itself shows "only N left" at that store.
How do I build a Best Buy in-stock tracker or restock alert?
+
Call /api/v1/bestbuy/availability on a schedule for the SKU and the stores you care about, and alert when a store's status changes to in_stock or limited. Use it to tell shoppers where to pick an item up; it does not place orders or check out.
Can I get the Best Buy Deal of the Day?
+
Yes. /api/v1/bestbuy/deals returns today's Deal of the Day and the more-deals row under it, up to 15 products, each with a live price, regular price, savings, rating and review count, plus the countdown end. It takes no parameters and costs 3 credits.
How do I build a Best Buy price tracker?
+
Keep a list of SKUs and send up to 15 at a time to /api/v1/bestbuy/prices on a schedule: 2 credits per call whatever the count. Store price, regular_price and badge per SKU and alert when the price drops. The API returns the current price only; it has no price history, so the history is the one you record.
Can I get prices for many SKUs at once?
+
Yes. /api/v1/bestbuy/prices takes 1 to 15 SKUs, as an array or a comma-separated string, and returns price, regular price, savings, on-sale flag and deal badge for each (the deal end time comes from the product endpoint; deal_ends_at is usually null on prices). A SKU Best Buy does not know comes back found: false; the call is a 404, and not charged, only when none is known.
Does the API return Best Buy reviews?
+
Yes. /api/v1/bestbuy/reviews returns Best Buy's customer reviews, 20 per page, sorted most relevant, most helpful, newest, oldest, highest or lowest rated, optionally only one star rating, with the star histogram, recommended percent and the pros and cons reviewers mention most. The Insignia TV had 4,031 reviews averaging 4.6, 93% recommended.
Can I list clearance or on-sale products in a category?
+
Yes. /api/v1/bestbuy/category takes a category id such as abcat0101001 or a category URL, with the same filters as search: clearance, on_sale, open_box, brand and a price range, and sorts including best_discount. It also reads merchandised deal pages such as All Electronics on Sale (pcmcat1674241939957) at 3 credits.
Are sponsored products included in search results?
+
Not by default. Best Buy mixes sponsored tiles into the grid; the API leaves them out and counts them in sponsored_count, 6 on the first page of "tv". Pass include_sponsored: true to get them back, flagged sponsored: true.
Does the API return UPC and model numbers?
+
Yes. Product returns upc and model for every SKU, and search and category return model on every result, so you can match a Best Buy SKU to the same item at other retailers.
Can I find Best Buy store locations and hours?
+
Yes. /api/v1/bestbuy/stores returns up to 15 stores near a US ZIP code, nearest first, with store id, address, phone, open status, distance and the opening hours for each of the next 35 days, so holiday hours and closed days show on their date. It costs 1 credit.
How much does a Best Buy request cost?
+
Search, product, reviews and prices cost 2 credits, category 2 for an abcat category and 3 for a pcmcat page, deals 3, availability 2 for up to 8 stores, and stores and suggestions 1. An unknown SKU or category (404) or a temporary outage (502) is not charged. New accounts get 50 free credits on signup, one time, with no card required. Paid plans start at $15 per month for 3,000 credits.
How fast and fresh is the data?
+
Every request fetches live from bestbuy.com at the moment you call it, and nothing is cached. Each response carries fetched_at. In our captures, suggestions took 0.6 seconds, prices 2.0, stores 2.1, product 3.0, category 3.0, deals 4.9, search 5.3 and availability for 3 stores 6.4. Upstream checks sometimes fail; the API retries automatically, and a call that still fails is a 502 that is not charged.
Which countries does it cover?
+
bestbuy.com in the United States, with prices in US dollars and US stores. Best Buy Canada (bestbuy.ca) is a separate site and is not covered.
Does it return price history, price matching or Q&A?
+
No. No response carries price history, price-match data or customer questions and answers. Record prices yourself with /api/v1/bestbuy/prices to build a history.
Is using Best Buy data legal?
+
Scavio returns publicly available bestbuy.com data and does not sign in to customer accounts, read order history or place orders. You remain responsible for how you use the data, including compliance with Best Buy's terms. Talk to your own counsel for your specific use case.
Explore more of Scavio
Best Best Buy price tracker APIs
Seven options priced and tested during holiday pricing, November 2026.
How to get Best Buy open-box prices
Fair, good and excellent per SKU, store pickup and deals, step by step.
Track Best Buy prices over time
Check 15 SKUs per call and keep your own price history.
Best Buy API docs
All 9 endpoints with params and real responses.
Micro Center API
Electronics with per-store stock and open-box units.
Amazon API
Search, product detail by ASIN and seller offers.
Walmart API
Search, product, reviews and store-level pricing.
Target API
Search, categories, detail and reviews.
Costco API
Warehouse prices, stock and coupons.
Home Depot API
Search with per-store pickup, detail and reviews.
eBay API
Live and sold listings for resale pricing.
Google Shopping API
Compare prices across stores for one product.
Try the Best Buy API free
50 free credits on signup, no card. Your first request is a POST with a product name in it.