JustSERPDocs
Walmart

Walmart Search

One page of walmart.com's search results for a query, answered as the document: `search_metadata`, `search_parameters`, `search_information` (`total_results`, the place Walmart answered for, `spelling_fix`), `organic_results`, `other_options`, `related_searches` and `pagination`.

GET
/v1/walmart/search

One page of walmart.com's search results for a query, answered as the document: search_metadata, search_parameters, search_information (total_results, the place Walmart answered for, spelling_fix), organic_results, other_options, related_searches and pagination. Walmart serves 10 pages at most. The filters block is not answered. zero_retention is not handled.

Authorization

headerX-API-Key<token>

Your API key.

Query Parameters

cancel_token?string

A name you make up for this request (a UUID is fine), so you can later GET /v1/cancel with it. Only you know it, so only you can cancel. Use a new one for every request, retries included: a cancelled token stays cancelled for a few minutes.

Length1 <= length <= 128
q*string

What to search for.

Length1 <= length <= 500
category_id?string

Walmart's department id (catId): 976759, or with a sub-department 976759_1096070.

Match^[0-9_]+$
store_id?string

Digits.

Match^[0-9]+$
price_min?number

Dollars.

price_max?number

Dollars.

filters?string

name:value pairs joined by ||, as Walmart writes them.

sort_by?string
Default"best_match"
Value in"best_match""price_low_to_high""price_high_to_low""best_seller"
page?integer

Walmart serves 10 pages at most; later ones come back empty.

Range1 <= value <= 100
Default1

Response Body

The results page, as the document. When the page could not be parsed, the usual envelope.

application/json
  1. response

The Walmart Search document. A key is absent when the page does not say.

search_metadata*
search_parameters*

The request's own fields as sent, engine first, without cancel_token.

search_information*

The parser's own, e.g. yelp_search's; otherwise {}.

organic_results?array<>
other_options?array<>

The other lists under the results, with the fields of organic_results and a section_title; a product already in organic_results is not repeated.

related_searches?array<>
pagination?
[key: string]?any
Example Request
curl -X GET 'https://api.justserp.com/v1/walmart/search?q=coffee+maker&price_max=50&sort_by=price_low_to_high&page=2'
Example Response
{  "search_metadata": {    "id": "string",    "status": "Success",    "created_at": "string",    "request_url": "string",    "html_url": "string"  },  "search_parameters": {},  "search_information": {    "query_displayed": "string",    "total_results": 0,    "postal_code": "string",    "province_code": "string",    "city": "string",    "store_id": "string",    "spelling_fix": "string"  },  "organic_results": [    {      "position": 0,      "id": "string",      "product_id": "string",      "title": "string",      "link": "string",      "brand": "string",      "description": "string",      "seller_id": "string",      "seller_name": "string",      "rating": 0,      "reviews": 0,      "price": "string",      "extracted_price": 0,      "original_price": "string",      "extracted_original_price": 0,      "unit_price": "string",      "extracted_unit_price": 0,      "price_range": {        "text": "string",        "from": "string",        "extracted_from_price": 0      },      "fulfillment": {        "delivery": {          "text": "string",          "expected_date": "string"        },        "pickup": {          "text": "string",          "expected_date": "string"        }      },      "is_free_shipping": true,      "is_free_shipping_with_walmart_plus": true,      "is_sponsored": true,      "stock": 0,      "badges": [        {          "key": "string",          "text": "string",          "group_name": "string"        }      ],      "variants": [        {}      ],      "thumbnail": "string"    }  ],  "other_options": [    {      "section_title": "string"    }  ],  "related_searches": [    {      "query": "string",      "link": "string"    }  ],  "pagination": {    "current": 0,    "next": "string",    "other_pages": {      "property1": "string",      "property2": "string"    }  }}