Walmart
Walmart Search API
Search Walmart and get structured product rows as JSON - title, item id, price, currency, rating, rating count, seller, sponsored flag, availability and per-item fulfillment - plus the store the results were priced against. Costs 1 credit on domain com or ca, and 2 credits on com.mx: the price is a function of the request body, not a constant for the route.
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/jsonquerystringrequiredProduct search query, 1 to 500 characters.
Example: wireless headphones
domainenum<string>default:comMarketplace to search. This is the price-bearing parameter: com and ca cost 1 credit, com.mx costs 2. It also sets the currency and the product URLs in the response.
com— walmart.com (US). 1 credit.ca— walmart.ca (Canada). 1 credit.com.mx— walmart.com.mx (Mexico). 2 credits.
pageintegerResults page, 1-based. One page per call. The response reports max_page - page against that; has_more_pages is passed through from Walmart unchanged and can read false or null while further pages exist.
Example: 2
start_pageintegerDeprecated alias for page, kept for older integrations. Send page instead.
sort_byenum<string>default:best_matchResult sort order.
best_match— Walmart relevance ranking (default).price_low— Price, low to high.price_high— Price, high to low.best_seller— Best selling first.rating_high— Highest customer rating first.new— Newest arrivals first.
min_pricenumberMinimum price filter in the marketplace's own currency. Decimals are accepted.
Example: 19.99
max_pricenumberMaximum price filter in the marketplace's own currency. Decimals are accepted.
Example: 199.5
fulfillment_speedenum<string>Delivery-speed filter. There is no 2_days value (Walmart's own facet leaks 3-4 day items into it) and no anytime value - for anytime, omit the parameter.
today— Deliverable today.tomorrow— Deliverable by tomorrow.
fulfillment_typeenum<string>Fulfillment filter. in_store is the only accepted value - shipping, pickup and delivery are not options here; read the per-item fulfillment object in the response instead.
in_store— Only items available for in-store pickup.
Request
from scavio import ScavioClient
client = ScavioClient(api_key="sk_live_your_key")
results = client.walmart.search("wireless headphones", page=1, sort_by="price_low")
print(results)Response