Walmart Search Results Scraper API
Our Walmart search results scraper takes any search term and returns the ranked product grid as JSON: position, item id, title, price, rating, review count, seller, shipping flags, and the related-search pills Walmart shows.
Quickstart
curl "https://api.walmartscraperapi.com/api/v1/walmart/search?query=laptop&api_key=$API_KEY" import requests
BASE = "https://api.walmartscraperapi.com"
API_KEY = "YOUR_API_KEY"
# Pass a search term as `query`. Walk deeper pages with `page`.
data = requests.get(
f"{BASE}/api/v1/walmart/search",
params={
"query": "laptop",
"page": 1,
"api_key": API_KEY,
},
timeout=30,
).json()
print(data["query"], "- page", data["page"], "-", data["total_results"], "results")
for r in data["results"]:
tag = "sponsored" if r["sponsored"] else "organic"
print(r["position"], tag, r["price"], r["title"], r["url"])
for rq in data.get("related_queries", []):
print("related:", rq["query"]) Response
{
"query": "laptop",
"page": 1,
"total_results": 67,
"results": [
{
"position": 1,
"id": "18184622196",
"product_id": "1V55QUSDTIGB",
"title": "ASUS Chromebook CX15 Laptop, 15.6\" FHD Display, Intel\u00ae Processor N50, 128GB Storage, 4GB RAM, ChromeOS, Forging Blue",
"url": "https://www.walmart.com/ip/ASUS-Chromebook-CX15-Laptop-.../18184622196?classType=VARIANT&athbdg=L1102",
"price": 199,
"currency": "USD",
"rating": 4.3,
"reviews_count": 235,
"thumbnail": "https://i5.walmartimages.com/seo/ASUS-Chromebook-CX15-Laptop_fd964582-833a-47bf-9766-b8d92330a0fe.fb92dbf89622adb24d9b7212fdeeb099.jpeg",
"description": null,
"seller": "Walmart.com",
"seller_id": "F55CDC31AB754BB68FE0B39041159D63",
"out_of_stock": false,
"sponsored": true,
"free_shipping": true,
"free_shipping_with_walmart_plus": true,
"two_day_shipping": false,
"multiple_options_available": false,
"shipping_price": null,
"price_per_unit": { "unit": "each" },
"primary_offer": { "offer_id": "44B94199498A3672AA257F39DA66AA0F", "offer_price": 199, "was_price": null, "min_price": 175.5 }
},
{
"position": 2,
"id": "18143224660",
"product_id": "3RQSZV8A6ADS",
"title": "Acer Aspire 16 Laptop, 16\u201d IPS WUXGA, Intel Core Ultra 5 115U, 16GB LPDDR5X, 512GB PCIe Gen 4 SSD, Steel Gray",
"url": "https://www.walmart.com/ip/Acer-Aspire-16-.../18143224660?classType=REGULAR",
"price": 549,
"currency": "USD",
"rating": 4.6,
"reviews_count": 34,
"seller": "Walmart.com",
"out_of_stock": false,
"sponsored": true,
"free_shipping": true,
"primary_offer": { "offer_price": 549, "was_price": null, "min_price": 549 }
}
],
"related_queries": [
{ "query": "laptop computers under $200", "url": "https://www.walmart.com/search?q=laptop%20computers%20under%20%24200&searchMethod=relatedSearch" },
{ "query": "hp laptop", "url": "https://www.walmart.com/search?q=hp%20laptop&searchMethod=relatedSearch" }
]
} | Field | Type | Description |
|---|---|---|
query | string | The search term echoed back for this response. |
page | integer | The results page number for this response. |
total_results | integer | Number of product items returned on this page. |
results | array | The ranked product grid, each item an object with the fields below. |
results[].position | integer | The item's rank on the page, starting at 1. |
results[].id | string | The stable Walmart us_item_id for the listing. |
results[].title | string | The product title. |
results[].url | string | The canonical product page URL, anchored to the item's own id. |
Params
| Parameter | Required | Default | Notes |
|---|---|---|---|
query | required | - | The search term, e.g. laptop. This is the required input; we build the Walmart search URL from it. |
page | optional | 1 | Results page number, 1 to 100. Defaults to 1. |
country | optional | - | Optional two-letter country code to fetch results as seen from that region. |
api_key | required | - | Your API key, passed as a query parameter. Get one free at signup. |
Use it for
Keyword rank tracking
Assortment and coverage
Price and offer capture
Sponsored-placement analysis
Pricing
| Plan | Price | Best for |
|---|---|---|
| Free | 1,000 requests | Testing and small jobs |
| Pro | $0.60 / 1k | Production workloads |
| Pay-as-you-go | $0.90 / 1k | Spiky or one-off volume |
Median response 2.6s. You only pay for successful requests.
FAQ
What is a Walmart search results scraper?
A Walmart search results scraper is a tool that reads Walmart's public search grid and returns it in a structured format. Our Walmart search results scraper API takes a search query and returns each product's position, item id, title, price, rating, review count, seller, shipping flags, and offer detail as JSON, plus the related-search pills Walmart shows.
How do I search Walmart with this endpoint?
Pass your search term as the query parameter, for example query=laptop, and we build the Walmart search URL and fetch the results page for you. The response echoes the query back and returns the ranked results array. To reach specific results, refine the term or use the page parameter rather than passing a URL.
How do I get more than one page of results?
Pass the page parameter, from 1 up to 100, to move deeper into the results for a query. Each call returns one page in the results array with its position values, so you increment page to keep reading. The response echoes back the page number so you always know which page you are on.
Does it tell me which results are sponsored?
Yes. Each result carries a sponsored boolean that is true when Walmart shows the listing as a paid placement. That lets you separate paid from organic results and measure how much of page one is sponsored for a given keyword, which is hard to do reliably by eye across many searches.
What are related_queries and when are they returned?
related_queries is Walmart's set of related-search pills, each returned as a query string and an absolute search URL. Walmart only ships this block on some responses, so the field is an array that is populated when the block is present and empty when it is not, which means appending it never breaks the rest of the response.
How fast is the Walmart search results scraper API?
Median end-to-end response is about 2.6 seconds, which includes residential proxy routing, anti-bot handling, retries, and parsing. One call returns the full page of results plus related queries when Walmart includes them, so you do not chain extra requests to assemble the grid.