Foot Locker
Foot Locker Brand API
Every Foot Locker product of one brand (Nike, Jordan, adidas, New Balance, HOKA, PUMA...) by name, in any case, or by brand page URL, on any of 13 storefronts, optionally narrowed by a keyword. Filter by gender, color, price bucket, on_sale and any facet, and sort by relevance, price, new arrivals, top rated, name or brand. 48 items per page with id (the SKU), title, brand, URL, image, price, list price, percent off, the European 30-day lowest price, sale, new, launch and members-only-sale flags, rating, review count and colorways with their own prices. Also returns total, total_pages, the filters applied, every facet with its counts (any value works in filters) and data_as_of: listings can be a few hours old. brand echoes the brand as the site writes it and brand_id its id. Costs 1 credit per request.
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/jsonbrandstringA brand name ("Nike", "Jordan", "adidas", "New Balance", "HOKA", "PUMA"); case does not matter. One of brand or url is required.
Example: New Balance
urlstringA Foot Locker brand page URL (/category/brands/<brand>.html). Alternative to brand.
Example: https://www.footlocker.com/category/brands/new-balance.html
querystringNarrow the brand to a keyword, 1-200 characters.
Example: running shoes
countryenum<string>default:usThe Foot Locker storefront. Titles and facet labels come back in the storefront's language, prices in its currency.
Example: de
us— United States (footlocker.com), USD. The default.ca— Canada (footlocker.ca), CAD. language en (default) or fr.gb— United Kingdom (footlocker.co.uk), GBP.de— Germany (footlocker.de), EUR.fr— France (footlocker.fr), EUR.it— Italy (footlocker.it), EUR.es— Spain (footlocker.es), EUR.nl— Netherlands (footlocker.nl), EUR.be— Belgium (footlocker.be), EUR. language nl (default) or fr.at— Austria (footlocker.at), EUR.ie— Ireland (footlocker.ie), EUR.au— Australia (footlocker.com.au), AUD.nz— New Zealand (footlocker.co.nz), NZD.
languageenum<string>Only for country ca (en default, or fr) and be (nl default, or fr). Other storefronts have one language.
Example: fr
en— English. The default on ca.fr— French, on ca or be.nl— Dutch. The default on be.
pageintegerResults page, 1-200, 48 items per page. A page past the last one returns an empty items list with the real total. Defaults to 1.
Example: 2
sortenum<string>default:relevanceThe order of the listing.
relevance— The site's Featured order. The default.price_low_to_high— Cheapest first.price_high_to_low— Most expensive first.new_arrivals— Newest first.top_rated— Highest customer rating first.name_az— Product name A-Z.brand_az— Brand A-Z.
genderstring | string[]Gender value(s) as facets gender lists them ("Men's", "Women's", "Boys'"; in the storefront's language).
Example: Women's
colorstring | string[]Color value(s) as facets primaryColor lists them.
Example: Black
price_rangestring | string[]Price bucket value(s) as facets price lists them (25-50, 50-75, 75-100, 100-150, 150-inf), in the storefront's currency.
Example: 100-150
on_salebooleanOnly items on sale.
Example: true
filtersobjectAny filter from a previous response: {facets[].id: facets[].values[].value, or a list of values}. Values of one filter are OR, filters combine (AND). E.g. {"mensShoesSize": "10.0"}, {"womensShoesSize": "8.0"}, {"style": "Casual Sneakers"}, {"sport": "Running"}, {"eligibleForDiscount": "True"}.
Example: {"mensShoesSize": "10.0", "primaryColor": "Black"}
Request
from scavio import ScavioClient
client = ScavioClient(api_key="sk_live_your_key")
# Every New Balance item on sale at footlocker.com, cheapest first, with percent off.
res = client.footlocker.brand(brand="new balance", on_sale=True, sort="price_low_to_high")["data"]
print(res["brand"], res["total"], "items on sale")
for item in res["items"]:
print(item["id"], item["title"], item["list_price"], item["price"], item["percent_off"])Response