Catalog and category discovery
Use Best Buy endpoints to turn catalog and category discovery into repeatable API requests with documented inputs and JSON responses.
Browse Best Buy's public catalog by category or keyword into paginated product listings, then enrich individual products with detail, price, availability, reviews, customer Q&A, and organic related products — all as normalized JSON. Credential-free.
Extract Best Buy category and search listings, product detail, reviews, customer questions, and related products as structured JSON.
Endpoint families
6
Documented params
22
Examples
11
Live catalog snapshot
Active endpoints
11
Methods
GET
Required params
20
Schema refs
11
{
"platform": "Best Buy",
"endpoint": "bestbuy-search",
"method": "GET",
"path": "/bestbuy/search",
"auth": "apiKey"
}Use cases
Extract Best Buy category and search listings, product detail, reviews, customer questions, and related products as structured JSON.
Use Best Buy endpoints to turn catalog and category discovery into repeatable API requests with documented inputs and JSON responses.
Use Best Buy endpoints to turn electronics price and availability monitoring into repeatable API requests with documented inputs and JSON responses.
Use Best Buy endpoints to turn review, q&a, and related-product analysis into repeatable API requests with documented inputs and JSON responses.
Managed execution
Every figure below is read from the live Best Buy endpoint catalog — 11 endpoints, 22 documented request parameters, and 11 published response schemas — the same catalog Docs and Playground run against.
11 documented Best Buy endpoints, grouped into 6 request families — Product, Categories and Category, plus 3 more.
22 request parameters are documented across those Best Buy endpoints, 20 of them required — the full input contract is public before you write any integration code.
11 of the 11 Best Buy endpoints ship a recorded example response, and 11 carry a documented response schema — you can code against the real JSON before the first request.
Best Buy endpoints document their error responses (400, 404, 429 and 503) alongside the success schema, so a block, a rate limit, or a missing record comes back as a typed error rather than silently empty data.
11 hosted MCP tools back the Best Buy endpoints, so an agent can call the same routes with the same parameters and the same JSON contract, with no custom glue.
Coverage map
/bestbuy/product
/bestbuy/categories
/bestbuy/category
/bestbuy/brands
/bestbuy/search
/bestbuy/stores
Endpoint catalog
/bestbuy/searchReturns one page (up to 24) of one Best Buy keyword search's product listing (sku, title, url, image, price, rating, review count). q is free-text search keywords, e.g. "laptop". page is the optional 1-indexed page number (defaults to 1); requesting a page past the last one returns an empty products list, not an error.
Response notes
- `page` echoes the page actually returned. `total` is the search's own total result count across all pages; `count` is how many products this response actually carries (up to 24). - `price`, `rating`, and `review_count` are omitted (zero-valued) when the upstream did not carry that field for a given product; this happens occasionally and is not itself an error condition. - A query with no matches returns `404` on page 1. Requesting a `page` past the last real page returns a normal `200` with an empty `products` list, not an error. - `page` must be between `1` and `500`; anything outside that range returns `400`.
MCP tool bestbuy_search
/bestbuy/categoryReturns one page (up to 24) of one Best Buy category's product listing (sku, title, url, image, price, rating, review count). category_id is a Best Buy category id, e.g. pcmcat138500050001, found in a category page URL's trailing <id>.c?id=<id> segment. page is the optional 1-indexed page number (defaults to 1); requesting a page past the last one returns an empty products list, not an error.
Response notes
- `page` echoes the page actually returned. `total` is the category's own total result count across all pages (`numFound`); `count` is how many products this response actually carries (up to 24). - `price`, `rating`, and `review_count` are omitted (zero-valued) when the upstream did not carry that field for a given product; this happens occasionally and is not itself an error condition. - An unrecognized `category_id` returns `404` on page 1. Requesting a `page` past the last real page returns a normal `200` with an empty `products` list, not an error. - `page` must be between `1` and `500`; anything outside that range returns `400`.
MCP tool bestbuy_category
/bestbuy/productReturns one Best Buy product's detail (name, brand, model, color, price, availability, rating, images, breadcrumbs). sku is the numeric Best Buy SKU shown on bestbuy.com product pages and URLs.
Response notes
- `condition` and `availability` are the bare schema.org value (e.g. `NewCondition`, `InStock`), with the `https://schema.org/` prefix stripped. - `breadcrumbs` reflects the product's category path; it is omitted when the page carries no breadcrumb data. - `description` and `images` are omitted when the upstream product page does not populate them.
MCP tool bestbuy_product
/bestbuy/product/reviewsReturns page 1 (up to 20) of one Best Buy product's customer reviews (rating, title, text, author, posted date, tags such as Verified Purchaser, recommended flag, helpful/unhelpful counts). sku is the numeric Best Buy SKU shown on bestbuy.com product pages and URLs.
Response notes
- `rating` and `review_count` reflect the product's overall aggregate rating, not any single review. - `posted` is the upstream's own relative time text (e.g. `Posted 3 days ago`); no absolute timestamp is available. - `tags` may include reviewer badges such as `Incentivized`, `Verified Purchaser`, `Owned for 2 weeks`, `Tech Insider Network Member`, or a contributor rank; it is omitted when a review carries none. - `recommended` is present only when the review explicitly states "I would recommend this to a friend"; it is omitted (not `false`) otherwise. - This endpoint does not support pagination beyond page 1 (up to 20 reviews).
MCP tool bestbuy_product_reviews
/bestbuy/product/questionsReturns the customer questions (with answers, when present) Best Buy embeds directly on a product's page: question text, answer text, who answered, and when. sku is the numeric Best Buy SKU shown on bestbuy.com product pages and URLs. A product with no questions asked yet returns an empty list, not an error.
Response notes
- A product with no questions asked yet returns `count: 0` and an empty `questions` list -- this is a normal, valid state, not an error. - `answer` and `answered_by` are omitted when a question has not yet been answered. - `answered` is the upstream's own relative time text (e.g. `Answered 2 months ago`); no absolute timestamp is available. - This endpoint returns whatever Best Buy embeds inline on the product's own page (up to a handful of questions); it does not follow the page's own "See more questions" pagination.
MCP tool bestbuy_product_questions
/bestbuy/product/relatedReturns the organic (non-sponsored) related products Best Buy embeds in a product page's own comparison table (sku, name, url, image, price). sku is the numeric Best Buy SKU shown on bestbuy.com product pages and URLs. A product page with no comparison table returns an empty list, not an error.
Response notes
- A product page with no comparison table (confirmed live on Marketplace/refurbished listings) returns `count: 0` and an empty `products` list -- this is a normal, valid state, not an error. - Only the page's own organic "Compare similar products" table is returned. Two other sections that superficially look like related items -- "Related Item" and "Featured products" -- are paid ad placements (each explicitly labeled "Sponsored" on the live page) and are deliberately excluded. - `image_url` is omitted when the page's own image alt text does not exactly match the product's title (an exact-match anchor is used to avoid misattributing one product's image to another).
MCP tool bestbuy_product_related
/bestbuy/brandsReturns Best Buy's full brand directory (name, category id, url), sourced from the site's own "Name Brands" page. Each id is directly usable as bestbuy_category's category_id input.
Response notes
- Each `id` is directly usable as [`bestbuy_category`](bestbuy-category.md)'s `category_id` input. - This is the full alphabetical brand directory (hundreds of brands), not the homepage nav's own smaller rotating featured-brand subset.
MCP tool bestbuy_brands
/bestbuy/categoriesReturns Best Buy's current top-level Shop departments (name, category id, url). Each id is directly usable as bestbuy_category's category_id input; this is not the full category tree.
Response notes
- Each `id` is directly usable as [`bestbuy_category`](bestbuy-category.md)'s `category_id` input. - The response contains the 21 current top-level Shop departments, not an exhaustive full category tree. It does not include sub-categories or nested departments. - `source_url` identifies the source request used for this response.
MCP tool bestbuy_categories
/bestbuy/categories/trendingReturns Best Buy's fine-grained, often deeply-nested product-type categories (e.g. "Windows Laptops", "55-Inch TVs (55 - 64 in)", "PS5 Consoles") sourced from the homepage's own "Best Selling" section -- much more specific than bestbuy_categories' 21 current top-level departments. Each id is directly usable as bestbuy_category's category_id input.
Response notes
- Each `id` is directly usable as [`bestbuy_category`](bestbuy-category.md)'s `category_id` input, the same as `bestbuy_categories` and `bestbuy_brands`. - This section renders noticeably slower than the rest of this family on the upstream page -- allow extra time for this endpoint specifically.
MCP tool bestbuy_categories_trending
/bestbuy/category/subcategoriesReturns a Best Buy category's own sibling/child category set (name, category id, url), sourced from that category page's own "Category" filter facet. Each id is directly usable as bestbuy_category's category_id input. category_id is a Best Buy category id, e.g. pcmcat138500050001, found in a category page URL's trailing <id>.c?id=<id> segment. A leaf category with no siblings returns an empty list, not an error.
Response notes
- Each `id` is directly usable as [`bestbuy_category`](bestbuy-category.md)'s `category_id` input, the same as `bestbuy_categories`, `bestbuy_brands`, and `bestbuy_categories/trending`'s own ids. - A leaf category with no siblings (or a category page with no "Category" facet at all) returns an empty `subcategories` list, not an error. - The input `category_id` itself is never echoed back in the result, even if the upstream's own facet lists it alongside its siblings.
MCP tool bestbuy_category_subcategories
/bestbuy/storesReturns Best Buy's physical store locations in one city (name, address, phone, coordinates, rating, hours), sourced from Best Buy's own SEO store directory. state is one of the 50 US state codes plus dc and pr: `al`, `ak`, `az`, `ar`, `ca`, `co`, `ct`, `de`, `dc`, `fl`, `ga`, `hi`, `id`, `il`, `in`, `ia`, `ks`, `ky`, `la`, `me`, `md`, `ma`, `mi`, `mn`, `ms`, `mo`, `mt`, `ne`, `nv`, `nh`, `nj`, `nm`, `ny`, `nc`, `nd`, `oh`, `ok`, `or`, `pa`, `pr`, `ri`, `sc`, `sd`, `tn`, `tx`, `ut`, `vt`, `va`, `wa`, `wv`, `wi`, `wy`. city is free text matched case-insensitively against that state's own directory (e.g. "Chicago").
Response notes
- `count`/`stores` cover every store in the matched city -- one store for most cities, several for a dense metro (bounded at 20 stores per request). - `hours` maps a full day name (`Monday`..`Sunday`) to that day's opening range (e.g. `"10:00-21:00"`). - A `city` value with no match in that state's directory returns a 404, not an empty `stores` list. - `state` must be one of the enumerated codes above; any other value is a 400.
MCP tool bestbuy_stores
Related APIs
Marketplaces & Retail
Research new, used, and vintage instruments across Reverb listings, seller shops, and the Price Guide. Keep current asking prices separate from historical sales, and preserve model, finish, year, condition, and currency when comparing gear.
Marketplaces & Retail
Collect marketplace product signals from Amazon without building brittle storefront scrapers.
Marketplaces & Retail
Build resale, pricing, and marketplace workflows from structured eBay data.
Company coverage
Best Buy Co., Inc. · BBY
Best Buy is operated by Best Buy Co., Inc. (BBY). Crawlora's SEC endpoints take the same company's CIK, so filings, financials, insider transactions and 13F holdings come from the same API key as the Best Buy endpoints above.
SEC filings & financials API →How to scrape Best Buy
Best Buy's public catalog spans department categories and free-text search, each paginated. Crawlora returns the listing itself plus, for any product, its full detail, reviews, customer Q&A, and the organic products shown in its own comparison table.
Pass a Best Buy category id to /bestbuy/category, or free-text keywords to /bestbuy/search, both with an optional page.
Increment page to collect further pages of the same category or search listing (up to 24 products per page).
Pass a sku from a listing result to /bestbuy/product for name, brand, price, availability, rating, images, and breadcrumbs.
Use the same sku against /bestbuy/product/reviews, /bestbuy/product/questions, and /bestbuy/product/related for customer reviews, Q&A, and organic related products.
FAQ
Yes. Both /bestbuy/category and /bestbuy/search accept an optional page parameter (defaults to 1) and return up to 24 products per page.
Yes. Dedicated reviews, questions, and related endpoints return a product's customer reviews, customer-asked questions (with answers, when present), and the organic products shown in its own comparison table, all keyed by sku.
No. Crawlora is not affiliated with Best Buy and provides structured extraction for supported public Best Buy pages. Use Best Buy-owned products when you require an official account-scoped or licensed integration.
Not for general developers with open self-serve registration. Crawlora's Best Buy endpoints return category, search, product detail, reviews, questions, and related-product data as structured JSON with a single API key, no partner relationship required.