Stores API

The Best Buy Stores API provides store information for all Best Buy stores in the United States and Puerto Rico. This information includes address, location, hours and services offered.

In addition, store availability of a product can be determined by querying the Products API together with the Stores API. Refer to Store Availability for more information on these type of queries.

Information

The Stores API enables you to retrieve the basic store information for all Best Buy stores, a specific Best Buy store or those stores that match a set of search parameters.

Some examples on how to query for store information:

Attributes

Hint: if you would like additional information about an attribute including examples, detailed descriptions and any special considerations when using the attribute please click on the attribute name.

NameDescriptionType
addressstreet addressstring
address2street address 2string
citycity namestring
countrycountry namestring
distancestore distance from specified locationfloat
fullPostalCode9- digit postalcodestring
latlatitudefloat
lnglongitudefloat
locationprovides more details about location of a storestring
longNamefull store namestring
namestore namestring
phonestore phone numberstring
postalCode5-digit postal codestring
regionstate, territorystring
storeIdstore numberinteger
storeTypeindicates the type of storestring
tradeInindicates the type of trade-ins the store acceptsstring

address

The address attribute provides the street address for the Best Buy store referenced in the result set.

Type
string
Example
1000 West 78th St.
Back To Attributes

address2

The address2 attribute provides additional street address information for the Best Buy store referenced in the result set.

Type
string
Example
Ste 1050
Back To Attributes

city

The city attribute provides the city name for the Best Buy store referenced in the result set.

Type
string
Example
Richfield
Back To Attributes

country

The country attribute provides the country name for the Best Buy store referenced in the result set.

Type
string
Example
US
Back To Attributes

distance

The distance attribute provides the distance from a specified location to a Best Buy store. Value specified in miles.

Type
float
Notes
Attribute is not querable; recommend using with lat & lng or postalCode (see Area Function for examples)
Related Attributes
lat, lng, postalCode
Example
6
Back To Attributes

fullPostalCode

The fullPostalCode attribute specifies the nine-digit postal code, if available for the store location.

Type
string
Notes
9 digit postal code not always available
Example
55423-9998
Back To Attributes

lat

The lat attribute specifies the latitudinal coordinates of the store location being referenced in the result set.

Type
float
Notes
Positive = North / Negative = South
Example
44.86331
Back To Attributes

lng

The lng attribute specifies the longitudinal coordinates of the store location referenced in the result set.

Type
float
Notes
Negative = West / Positive = East
Example
-93.2926
Back To Attributes

location

The location attribute provides additional details about the store location.

Type
string
Notes
This attribute is primarily used for identifying Best Buy Express stores.
Related Attributes
longName
Example
Terminal 2 Gate A2
Back To Attributes

longName

The longName attribute provides the full store name including any location information.

Type
string
Related Attributes
location
Example
Best Buy - Richfield
Back To Attributes

name

The name attribute provides the short name for the Best Buy store referenced in the result set.

Type
string
Example
Richfield
Back To Attributes

phone

The phone attribute provides the store phone number for the Best Buy store location referenced in the result set. For Express stores the phone number will go to Best Buy Customer Service.

Type
string
Notes
The "-" will be included as part of the phone number.
Example
787-522-0999
Back To Attributes

postalCode

The fullPostalCode attribute provides the postal code for the Best Buy store location referenced in the result set.

Type
string
Example
55344-5306
Back To Attributes

region

The region attribute provides the state or territory for the Best Buy store referenced in the result set.

Type
string
Notes
To return Puerto Rico stores you can use region=PR
Example
MN
Back To Attributes

storeId

The storeId attribute provides the Best Buy unique Identifier of each Best Buy store referenced in the result set.

Type
integer
Example
281
Back To Attributes

storeType

The storeType attribute indicates the type of store. There are three types of Best Buy stores including "BigBox", "Mobile" and "Express". The"BigBox" value represents our large showroom stores featuring HDTVs, computers, gaming, appliances, cell phones, tablets, Geek Squad services and more. The "Mobile" value represents our specialty shops focused on smartphones, tablets, accessories, services and plans. The "Express" value represents vending machine-style, self-checkout stores offering audio goods and accessories, found in airports, on college campuses and more.

Type
string
Notes
Example queries using storeType can be found in In-Store Availability
Example
BigBox
Back To Attributes

tradeIn

The tradeIn attribute provides the trade-in policy of the store. Possible trade in values include "trade-in - no-receipt", "trade-in - no receipt (biometric)", "trade-in - best buy receipt required", "trade-in - no receipt (2 ids required)", "no trade-ins accepted", "trade-in - no receipt (biometric with 2 ids)", "trade-in - no receipt for video games. best buy receipt for other items."

Type
string
Notes
For more information about these policies we encourage you to visit the local store page. Please use our store locator to find the store you are interested in.
Example
Trade-In -No-receipt
Back To Attributes

Request/Response Examples

Store information for all stores

The query below will return store information for all stores. Return to Information

#request:
http://api.remix.bestbuy.com/v1/stores?format=json&apiKey=YourAPIKey

#response:
... { "storeId": 1118, "storeType": "BigBox", "tradeIn": "No Trade-Ins accepted", "name": "Hato Rey", "longName": "Best Buy - Hato Rey", "address": "230 Calle Federico Costa Hato Rey", "address2": "", "city": "San Juan", "region": "PR", "fullPostalCode": "00918", "country": "US", "lat": 18.42684, "lng": -66.07188, "hours": "Mon: 10-9; Tue: 10-9; Wed: 10-9; Thurs: 10-9; Fri: 10-9; Sat: 10-9; Sun: 11-7", "hoursAmPm": "Mon: 10am-9pm; Tue: 10am-9pm; Wed: 10am-9pm; Thurs: 10am-9pm; Fri: 10am-9pm; Sat: 10am-9pm; Sun: 11am-7pm", "gmtOffset": -5, "services": [ { "service": "Windows Store" }, { "service": "Geek Squad Services" }, { "service": "Best Buy Mobile" }, { "service": "Best Buy For Business" }, { "service": "Apple Shop" }, { "service": "Electronics Recycling" }, { "service": "Car & GPS Installation Services" } ], "phone": "787-764-4900", "postalCode": "00918" }, ...
#request:
http://api.remix.bestbuy.com/v1/stores?apiKey=YourAPIKey

#response:
... <store> <storeId>1118</storeId> <name>Hato Rey</name> <longName>Best Buy - Hato Rey</longName> <address>230 Calle Federico Costa Hato Rey</address> <address2/> <city>San Juan</city> <region>PR</region> <fullPostalCode>00918</fullPostalCode> <country>US</country> <lat>18.42684</lat> <lng>-66.07188</lng> <hours>Mon: 10-9; Tue: 10-9; Wed: 10-9; Thurs: 10-9; Fri: 10-9; Sat: 10-9; Sun: 11-7</hours> <hoursAmPm>Mon: 10am-9pm; Tue: 10am-9pm; Wed: 10am-9pm; Thurs: 10am-9pm; Fri: 10am-9pm; Sat: 10am-9pm; Sun: 11am-7pm</hoursAmPm> <gmtOffset>-5</gmtOffset> <services> <service>Windows Store</service> <service>Geek Squad Services</service> <service>Best Buy Mobile</service> <service>Best Buy For Business</service> <service>Apple Shop</service> <service>Electronics Recycling</service> <service>Car &amp; GPS Installation Services</service> </services> <phone>787-764-4900</phone> <postalCode>00918</postalCode> </store> ...

Store information for a single store using a store identifier

The query below will return store information of a store with the storeId attribute specified in the input. Return to Information

#request:
http://api.remix.bestbuy.com/v1/stores(storeId=281)?format=json&apiKey=YourAPIKey

#response:
... "storeId": 281, "name": "Richfield", "longName": "Best Buy - Richfield", "address": "1000 West 78th St.", "address2": "", "city": "Richfield", "region": "MN", "fullPostalCode": "55423", "country": "US", "lat": 44.863312, "lng": -93.292557 ...
#request:
http://api.remix.bestbuy.com/v1/stores(storeId=281)?apiKey=YourAPIKey

#response:
... <storeId>281</storeId> <name>Richfield</name> <longName>Best Buy - Richfield</longName> <address>1000 West 78th St.</address> <address2/> <city>Richfield</city> <region>MN</region> <fullPostalCode>55423</fullPostalCode> <country>US</country> <lat>44.863312</lat> <lng>-93.29255</lng> ...

All stores within a city

The query below returns stores information for all the stores in the city specified as the input. Return to Information

#request:
http://api.remix.bestbuy.com/v1/stores(city=San Juan)?format=json&apiKey=YourAPIKey

#response:
... "storeId": 1118, "name": "Hato Rey", "longName": "Best Buy - Hato Rey", "address": "230 Calle Federico Costa Hato Rey", "address2": "", "city": "San Juan", ...
#request:
http://api.remix.bestbuy.com/v1/stores(city=San%20Juan)?apiKey=YourAPIKey

#response:
... <store> <storeId>1118</storeId> <name>Hato Rey</name> <longName>Best Buy - Hato Rey</longName> <address>230 Calle Federico Costa Hato Rey</address> <address2/> <city>San Juan</city> ...

All stores within a zipcode

The query below retrieves stores information for all the stores at the postalCode specified as the input. Return to Information

#request:
http://api.remix.bestbuy.com/v1/stores(postalCode=55423)?format=json&apiKey=YourAPIKey

#response:
... "storeId": 2387, "name": "Best Buy Mobile - Richfield", "longName": "Best Buy Mobile - Richfield", "address": "6601 Nicollet Ave S", "address2": "", "city": "Richfield", "region": "MN", "fullPostalCode": "55423", ...
#request:
http://api.remix.bestbuy.com/v1/stores(postalCode=55423)?apiKey=YourAPIKey

#response:
... <store> <storeId>2387</storeId> <name>Best Buy Mobile - Richfield</name> <longName>Best Buy Mobile - Richfield</longName> <address>6601 Nicollet Ave S</address> <address2/> <city>Richfield</city> <region>MN</region> <fullPostalCode>55423</fullPostalCode> ...

Area Function

The Stores API includes a special function that enables you to locate stores near a specified location.

  • area(location,distance)

To search based on a location please use the postalCode attribute or a lat-long pair. When postal code is used the reference point in the postal code (zipcode) area is determined by a standard mapping service. If no distance is specified in the function, radius is defaulted to 10 miles. The location will be populated with the distance from the specified postal code or lat/long to the store in miles.

Request/Response Example

Stores closest to a specified geo-location

The query below returns stores within 10 miles of zip code 55423 (Richfield, MN)

Note: You may notice the stores returned are stated to be just over 10 miles from the zip code. This is due to the way return distance is calculated. The search area is defined as a square, bounded by location point +/- distance identified in request. All stores in that square are returned. Return distance is calculated linearly from the location point (creates a circle). Stores near the corner of the square might be listed as farther than the query distance specified. Return to Information or Return to Area Function

#request:
http://api.remix.bestbuy.com/v1/stores(area(55423,10))?format=json&apiKey=YourAPIKey&show=storeId,name

#response:
... "stores": [ { "storeId": 2387, "name": "Best Buy Mobile - Richfield" }, { "storeId": 281, "name": "Richfield" }, { "storeId": 1000, "name": "Mall of America" }, ...
#request:
http://api.remix.bestbuy.com/v1/stores(area(55423,10))?apiKey=YourAPIKey&show=storeID,name

#response:
... <store> <storeId>2387</storeId> <name>Best Buy Mobile - Richfield</name> </store> <store> <storeId>281</storeId> <name>Richfield</name> </store> <store> <storeId>1000</storeId> <name>Mall of America</name> </store> ...

Stores within a radius from a specific location

The query below returns stores within 1000 miles of Barrow, Alaska (71.3 N, 156.8 W) Return to Information or Return to Area Function

#request:
http://api.remix.bestbuy.com/v1/stores(area(71.3,-156.8,1000))?format=json&show=storeId,name,distance&apiKey=YourAPIKey

#response:
... "stores": [ { "storeId": 1760, "name": "Northern Anchorage", "distance": 722.49 }, { "storeId": 539, "name": "Anchorage", "distance": 727.56 } ], "warnings": "Distances are in terms of miles (default)" }
#request:
http://api.remix.bestbuy.com/v1/stores(area(71.3,-156.8,1000))?show=storeId,name,distance&apiKey=YourAPIKey

#response:
... <store> <storeId>1760</storeId> <name>Northern Anchorage</name> <distance>722.49</distance> </store> <store> <storeId>539</storeId> <name>Anchorage</name> <distance>727.56</distance> </store> </stores> ...

Hours

As part of the hours attributes we provide the days and times each Best Buy store is open for the following two weeks. We start our weeks on Sunday and provide hours in both a 12-hour and 24-hour clock. The times displayed are for the local time zones of the Best Buy store being returned.

Note: Detailed hours are filtered out from the search results by default. Query with show=all or show=detailedHours to see in the search results.

How to query for store hours:

Attributes

Hint: if you would like additional information about an attribute including examples, detailed descriptions and any special considerations when using the attribute please click on the attribute name.

NameDescriptionType
detailedHours.daydays of the week store will be openstring (day of the week)
detailedHours.datedates store will be openstring (YYYY-MM-DD)
detailedHours.opentime store will openstring (24-hour clock)
detailedHours.closetime store will closestring (24-hour clock)
gmtOffsettime difference from GMTinteger
hoursstore hrsstring (12-hour clock)
hoursAmPmstore hrs with AM/PMstring (12-hour clock)

detailedHours.day

The detailedHours.day attribute returns as part of a collection and identifying the day of the week (Sunday) a specific Best Buy store will be open.

Type
string (day of the week)
Notes
The detailedHours attribute values provide more up-to-date store hours for the current calendar week and the week after. This is an important attribute to pay attention to during the holidays, as stores open and close hours may vary during this time. Must use show=all or show=detailedHours for these values to populate.
Example
Sunday
Back To Attributes

detailedHours.date

The detailedHours.date attribute returns as part of a collection and identifying the date (2014-04-07) a specific Best Buy store will be open.

Type
string (YYYY-MM-DD)
Notes
The detailedHours attribute values provide more up-to-date store hours for the current calendar week and the week after. This is an important attribute to pay attention to during the holidays, as stores open and close hours may vary during this time. Must use show=all or show=detailedHours for these values to populate.
Example
"2014-04-07"
Back To Attributes

detailedHours.open

The detailedHours.open attribute returns as part of a collection and identifing the time (10:00) a Best Buy store will open. Format is using a 24-hour clock.

Type
string (24-hour clock)
Notes
The detailedHours attribute values provide more up-to-date store hours for the current calendar week and the week after. This is an important attribute to pay attention to during the holidays, as stores open and close hours may vary during this time. Must use show=all or show=detailedHours for these values to populate.
Example
11:00
Back To Attributes

detailedHours.close

The detailedHours.close attribute returns as part of a collection and identifying the time (21:00) a Best Buy store will close. Format is using a 24-hour clock.

Type
string (24-hour clock)
Notes
The detailedHours attribute values provide more up-to-date store hours for the current calendar week and the week after. This is an important attribute to pay attention to during the holidays, as stores open and close hours may vary during this time. Must use show=all or show=detailedHours for these values to populate.
Example
19:00
Back To Attributes

gmtOffset

The gmtOffset attribute identifies the time zone difference from GMT based on the time zone of Best Buy store's location.

Type
integer
Example
-6
Back To Attributes

hours

The hours attribute provides the regular Best Buy store hours from Monday through Friday for the entire calendar year.

Type
string (12-hour clock)
Notes
Hours will be displayed in Best Buy store's local time zone
Example
Mon: 10-9; Tue: 10-9; Wed: 10-9; Thurs: 10-9; Fri: 10-9; Sat: 10-9; Sun: 10-8
Back To Attributes

hoursAmPm

The hoursAmPm attribute provides the regular Best Buy store hours from Monday through Friday for the entire calendar year with the inclusion of am and pm identification.

Type
string (12-hour clock)
Notes
Hours will be displayed in Best Buy stores local time zone
Example
Mon: 10am-9pm; Tue: 10am-9pm; Wed: 10am-9pm; Thurs: 10am-9pm; Fri: 10am-9pm; Sat: 10am-9pm; Sun: 10am-8pm
Back To Attributes

Request/Response Example

Store hours for a single store using a store identifier

The below query will return general store hours and detailed store hours for a requested store.

Return to Hours description

#request:
http://api.remix.bestbuy.com/v1/stores(storeId=1118)?format=json&apiKey=YourAPIKey&show=hours,hoursAmPm,gmtOffset,detailedHours

#response:
{ "stores": [ { "hours": "Mon: 10-9; Tue: 10-9; Wed: 10-9; Thurs: 10-9; Fri: 10-9; Sat: 10-9; Sun: 11-7", "hoursAmPm": "Mon: 10am-9pm; Tue: 10am-9pm; Wed: 10am-9pm; Thurs: 10am-9pm; Fri: 10am-9pm; Sat: 10am-9pm; Sun: 11am-7pm", "gmtOffset": -5, "detailedHours": [ { "day": "Sunday", "date": "2014-05-04", "open": "11:00", "close": "19:00" }, { "day": "Monday", "date": "2014-05-05", "open": "10:00", "close": "21:00" } { "day": "Tuesday", "date": "2014-05-06", "open": "10:00", "close": "21:00" } ...
#request:
http://api.remix.bestbuy.com/v1/stores(storeId=1118)?apiKey=YourAPIKey&show=hours,hoursAmPm,gmtOffset,detailedHours

#response:
... <store> <hours>Mon: 10-9; Tue: 10-9; Wed: 10-9; Thurs: 10-9; Fri: 10-9; Sat: 10-9; Sun: 11-7</hours> <hoursAmPm>Mon: 10am-9pm; Tue: 10am-9pm; Wed: 10am-9pm; Thurs: 10am-9pm; Fri: 10am-9pm; Sat: 10am-9pm; Sun: 11am-7pm</hoursAmPm> <gmtOffset>-5</gmtOffset> <detailedHours> <detailedHour> <day>Sunday</day> <date>2014-05-04</date> <open>11:00</open> <close>19:00</close> </detailedHour> <detailedHour> <day>Monday</day> <date>2014-05-05</date> <open>10:00</open> <close>21:00</close> </detailedHour> <detailedHour> <day>Tuesday</day> <date>2014-05-06</date> <open>10:00</open> <close>21:00</close> </detailedHour> ...

Services Offered

The Stores API includes information related to the services offered at each of the Best Buy stores. services is a collection of different services offered at a specified store.

Attributes

Hint: if you would like additional information about an attribute including examples, detailed descriptions and any special considerations when using the attribute please click on the attribute name.

NameDescpritionType
services.serviceservices offeredstring

services.service

The services attribute is a collection that includes the different services offered at each Best Buy store. Each service is a value for the services.service attribute.

Type
string
Example
Windows Store
Back To Attributes

Request/Response Example

The query below will return all the services offered at the store specified in the input.

#request:
http://api.remix.bestbuy.com/v1/stores(storeId=1118)?format=json&apiKey=YourAPIKey&show=services

#response:
... "services": [ { "service": "Windows Store" }, { "service": "Geek Squad Services" }, { "service": "Best Buy Mobile" }, { "service": "Best Buy For Business" }, { "service": "Apple Shop" }, { "service": "Electronics Recycling" }, { "service": "Car & GPS Installation Services" } ...
#request:
http://api.remix.bestbuy.com/v1/stores(storeId=1118)?apiKey=YourAPIKey&show=services

#response:
... <services> <service>Windows Store</service> <service>Geek Squad Services</service> <service>Best Buy Mobile</service> <service>Best Buy For Business</service> <service>Apple Shop</service> <service>Electronics Recycling</service> <service>Car &amp; GPS Installation Services</service> </services> ...

In-Store Availability

The Stores API, inconjunction with the Products API, allows you to search stores for a product and identify if it is available. In-store availability searches will return only those stores that have a given product in stock. Stores not returned do not have that product in stock. Please keep in mind that when completing an in-store availability query you should limit the stores that are a part of the query.

Availability in stores is calculated using counts and previous day sales to determine if the product is likely to be available, might be available or is unlikely to be available. The algorithm errs on the side of caution, and anything that is not available defaults to "not available".

HINT: The Products API attribute inStoreAvailability will tell you if a product is sold in stores but not if it's available at a particular store. Using the In-Store availability queries is checking product availability in store.

Request/Response Examples

The examples below search Express stores for particular products and identify if the products are in stock. These queries can be based on a storeType or this parameter can be omitted:

Express store that has a list of SKUs available

The query below will return if a specific Express store has a list of SKUs available Return to In-Store Availability

#request:
http://api.remix.bestbuy.com/v1/stores(storeId=8042)+products(sku%20in%20(6461052,5909042))?apiKey=YourAPIKey&format=json&show=storeId,storeType,name,city,region,products.name,products.sku,products

#response:
... "storeId": 8042, "storeType": "Express", "name": "LGA - LaGuardia Airport", "city": "Flushing", "region": "NY", "products": [ { "name": "Skullcandy - Ink'd 2 Earbud Headphones - Black", "sku": 6461052 }, { "name": "Skullcandy - TiTAN Earbud Headphones", "sku": 5909042 } ...
#request:
http://api.remix.bestbuy.com/v1/stores(storeId=8042)+products(sku%20in%20(6461052,5909042))?apiKey=YourAPIKey&format=xml&show=storeId,storeType,name,city,region,products.name,products.sku,products

#response:
... <store> <storeId>8042</storeId> <storeType>Express</storeType> <name>LGA - LaGuardia Airport</name> <city>Flushing</city> <region>NY</region> <products> <product> <name>Skullcandy - Ink&apos;d 2 Earbud Headphones - Black</name> <sku>6461052</sku> </product> <product> <name>Skullcandy - TiTAN Earbud Headphones</name> <sku>5909042</sku> </product> </products> </store> ...

Express stores within a ten mile radius using a lat/long that have a SKU available

The query below will return all Express stores within a ten mile radius based on lat/long that have a specific SKU available. Return to In-Store Availability

#request:
http://api.remix.bestbuy.com/v1/stores(area(44.882942,-93.2775,10)&storeType=Express)+products(sku=6461052)?apiKey=YourAPIKey&format=json&show=storeId,storeType,city,region,name,products.name,products.sku,products

#response:
... { "storeId": 8108, "storeType": "Express", "city": "Minneapolis", "region": "MN", "name": "MSP - Minneapolis Saint Paul International Airport", "products": [ { "name": "Skullcandy - Ink'd 2 Earbud Headphones - Black", "sku": 6461052 } ] }, { "storeId": 8915, "storeType": "Express", "city": "Minneapolis", "region": "MN", "name": "Minneapolis Convention Center", "products": [ { "name": "Skullcandy - Ink'd 2 Earbud Headphones - Black", "sku": 6461052 } ] } ...
#request:
http://api.remix.bestbuy.com/v1/stores(area(44.882942,-93.2775,10)&storeType=Express)+products(sku=6461052)?apiKey=YourAPIKey&format=xml&show=storeId,storeType,city,region,name,products.name,products.sku,products

#response:
... <store> <store> <storeId>8108</storeId> <storeType>Express</storeType> <city>Minneapolis</city> <region>MN</region> <name>MSP - Minneapolis Saint Paul International Airport</name> <products> <product> <name>Skullcandy - Ink&apos;d 2 Earbud Headphones - Black</name> <sku>6461052</sku> </product> </products> </store> <store> <storeId>8915</storeId> <storeType>Express</storeType> <city>Minneapolis</city> <region>MN</region> <name>Minneapolis Convention Center</name> <products> <product> <name>Skullcandy - Ink&apos;d 2 Earbud Headphones - Black</name> <sku>6461052</sku> </product> </products> </store> </stores> ...
Best Buy logo

We do not support your browser. Neither does Microsoft.

We're glad that you're excited about Best Buy's APIs. However, you're using a browser that's too old to view our new developer site. We encourage you to switch to a newer browser, preferably a recent version of Chrome, Firefox, or Internet Explorer.