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
| Endpoint | Description |
|---|---|
POST /api/v1/walmart/search | Search Walmart products with sorting, pagination, price and fulfillment filters |
POST /api/v1/walmart/product | Get detailed product information by Walmart product ID |
Authentication
| Header | Value | Required |
|---|---|---|
Authorization | Bearer YOUR_API_KEY | Yes |
Content-Type | application/json | Yes |
Product Search
Bash
POST https://api.scavio.dev
/api/v1/walmart/searchSearch Walmart products and get structured results including pricing, ratings, and availability.
Request Body
| Parameter | Type | Default | Description |
|---|---|---|---|
query | string | -- | Required. Search query (1-500 chars). |
domain | string | "" | Walmart domain. |
device | string | desktop | Device type. One of: desktop, mobile, tablet |
sort_by | string | best_match | Sort order. One of: best_match, price_low, price_high, best_seller |
start_page | integer | 1 | Starting page number (1-indexed). |
min_price | integer | -- | Minimum price filter (in dollars). |
max_price | integer | -- | Maximum price filter (in dollars). |
fulfillment_speed | string | -- | Delivery speed filter. One of: today, tomorrow, 2_days, anytime |
fulfillment_type | string | -- | Fulfillment type filter. Currently supports: in_store |
delivery_zip | string | -- | Delivery ZIP code for localized results and availability. |
store_id | string | -- | 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": [
{
"name": "Sony WH-1000XM5 Wireless Noise Canceling Headphones",
"product_id": "123456789",
"url": "https://www.walmart.com/ip/123456789",
"price": "$248.00",
"was_price": "$349.99",
"rating": 4.7,
"total_reviews": 8230,
"image": "https://i5.walmartimages.com/...",
"fulfillment": "Free shipping",
"in_stock": true,
"seller": "Walmart.com"
}
],
"response_time": 1.92,
"credits_used": 1,
"credits_remaining": 999
}Product Details
Bash
POST https://api.scavio.dev
/api/v1/walmart/productGet detailed information for a specific Walmart product by its product ID. Returns pricing, description, specifications, images, ratings, and seller information.
Request Body
| Parameter | Type | Default | Description |
|---|---|---|---|
product_id | string | -- | Required. Walmart product ID (e.g. 123456789). |
domain | string | -- | Walmart domain. |
device | string | desktop | Device type. One of: desktop, mobile, tablet |
delivery_zip | string | -- | Delivery ZIP code for localized pricing. |
store_id | string | -- | 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": {
"name": "Sony WH-1000XM5 Wireless Noise Canceling Headphones",
"product_id": "123456789",
"url": "https://www.walmart.com/ip/123456789",
"price": "$248.00",
"was_price": "$349.99",
"rating": 4.7,
"total_reviews": 8230,
"description": "Industry-leading noise cancellation with Auto NC Optimizer...",
"features": [
"Industry Leading Noise Cancellation",
"Magnificent Sound Quality",
"Crystal clear hands-free calling",
"Up to 30-hour battery life"
],
"images": [
"https://i5.walmartimages.com/..."
],
"categories": ["Electronics", "Headphones"],
"availability": "In Stock",
"seller": "Walmart.com",
"fulfillment": "Free shipping, arrives in 2 days"
},
"response_time": 2.31,
"credits_used": 1,
"credits_remaining": 998
}Response Format
Both endpoints return a consistent response wrapper:
| Field | Type | Description |
|---|---|---|
data | object | array | null | The response payload. null if the request failed upstream. |
response_time | number | Server-side response time in seconds |
credits_used | number | Number of credits consumed |
credits_remaining | number | Credits remaining in your current billing period |
Error Responses
| Status | Description |
|---|---|
401 | Unauthorized -- missing or invalid API key |
429 | Rate or usage limit exceeded for your plan |
502 | Upstream error -- retry after a short delay |
503 | Upstream unavailable -- retry later |
See Errors for the full error reference and retry best practices.
Related
- Quickstart -- get your API key and make your first request
- Google Search API -- search Google with structured SERP data
- YouTube API -- search videos, extract metadata and transcripts
- Amazon API -- search Amazon products across 12 marketplaces
- Rate Limits -- limits per plan tier