Walmart API

The Walmart API lets you search products and retrieve detailed product information by product ID. Both endpoints support device emulation, delivery localization, and fulfillment filters.

Endpoints

EndpointDescription
POST /api/v1/walmart/searchSearch Walmart products with sorting, pagination, price and fulfillment filters
POST /api/v1/walmart/productGet detailed product information by Walmart product ID

Authentication

HeaderValueRequired
AuthorizationBearer YOUR_API_KEYYes
Content-Typeapplication/jsonYes

Product Search

Bash
POST https://api.scavio.dev
/api/v1/walmart/search

Search Walmart products and get structured results including pricing, ratings, and availability.

Request Body

ParameterTypeDefaultDescription
querystring--Required. Search query (1-500 chars).
domainstring""Walmart domain.
devicestringdesktopDevice type. One of: desktop, mobile, tablet
sort_bystringbest_matchSort order. One of: best_match, price_low, price_high, best_seller
start_pageinteger1Starting page number (1-indexed).
min_priceinteger--Minimum price filter (in dollars).
max_priceinteger--Maximum price filter (in dollars).
fulfillment_speedstring--Delivery speed filter. One of: today, tomorrow, 2_days, anytime
fulfillment_typestring--Fulfillment type filter. Currently supports: in_store
delivery_zipstring--Delivery ZIP code for localized results and availability.
store_idstring--Walmart store ID for in-store availability.

Example

curl -X POST 'https://api.scavio.dev
/api/v1/walmart/search' \
  -H 'Authorization: Bearer sk_live_your_key' \
  -H 'Content-Type: application/json' \
  -d '{
    "query": "wireless headphones",
    "sort_by": "best_seller",
    "min_price": 20,
    "max_price": 100
  }'

Response Example

JSON
{
  "data": {
    "page": 1,
    "products_count": 40,
    "location": {
      "city": "Jacksonville",
      "state": "FL",
      "store_id": "5054",
      "zipcode": "32246"
    },
    "products": [
      {
        "id": "123456789",
        "title": "Sony WH-1000XM5 Wireless Noise Canceling Headphones",
        "url": "/ip/Sony-WH-1000XM5/123456789",
        "image": "https://i5.walmartimages.com/...",
        "price": 248.0,
        "price_strikethrough": null,
        "currency": "USD",
        "rating": 4.7,
        "rating_count": 8230,
        "sponsored": false,
        "out_of_stock": false,
        "seller_name": "Walmart.com",
        "seller_id": "F55CDC31AB754BB68FE0B39041159D63",
        "fulfillment": {
          "delivery": true,
          "free_shipping": true,
          "pickup": true,
          "shipping": true
        },
        "pos": 1,
        "variants": []
      }
    ],
    "url": "https://www.walmart.com/search?q=...",
    "html": "",
    "screenshot": ""
  },
  "response_time": 1920,
  "credits_used": 1,
  "credits_remaining": 999
}

Product Details

Bash
POST https://api.scavio.dev
/api/v1/walmart/product

Get detailed information for a specific Walmart product by its product ID. Returns pricing, description, specifications, images, ratings, and seller information.

Request Body

ParameterTypeDefaultDescription
product_idstring--Required. Walmart product ID (e.g. 123456789).
domainstring--Walmart domain.
devicestringdesktopDevice type. One of: desktop, mobile, tablet
delivery_zipstring--Delivery ZIP code for localized pricing.
store_idstring--Walmart store ID for in-store availability.

Example

curl -X POST 'https://api.scavio.dev
/api/v1/walmart/product' \
  -H 'Authorization: Bearer sk_live_your_key' \
  -H 'Content-Type: application/json' \
  -d '{"product_id": "123456789"}'

Response Example

JSON
{
  "data": {
    "id": "123456789",
    "sku": "123456789",
    "gtin": "012345678901",
    "price": 248.0,
    "price_strikethrough": 349.99,
    "currency": "USD",
    "rating": 4.7,
    "rating_count": 8230,
    "out_of_stock": false,
    "seller_name": "Walmart.com",
    "seller_id": "F55CDC31AB754BB68FE0B39041159D63",
    "seller_url": null,
    "image": "https://i5.walmartimages.com/...",
    "images": [
      "https://i5.walmartimages.com/..."
    ],
    "fulfillment": {
      "delivery": true,
      "delivery_information": "Arrives today",
      "free_shipping": true,
      "fulfilled_by": "",
      "out_of_stock": false,
      "pickup": true,
      "pickup_information": "Pickup today",
      "shipping": true,
      "shipping_information": "Free shipping"
    },
    "specifications": [
      { "key": "Brand", "value": "Sony" },
      { "key": "Wireless technology", "value": "Bluetooth" }
    ],
    "html": "",
    "screenshot": ""
  },
  "response_time": 2310,
  "credits_used": 1,
  "credits_remaining": 998
}

Response Format

Both endpoints return a consistent response wrapper:

FieldTypeDescription
dataobject | nullThe response payload. null if the request failed upstream. Search returns {page, products, location, ...}; product returns the product object directly.
response_timenumberServer-side response time in milliseconds
credits_usednumberNumber of credits consumed
credits_remainingnumberCredits remaining in your current billing period

Error Responses

StatusDescription
401Unauthorized -- missing or invalid API key
429Rate or usage limit exceeded for your plan
502Upstream error -- retry after a short delay
503Upstream unavailable -- retry later

See Errors for the full error reference and retry best practices.

Related