Extract rich product detail page (PDP) data from any Walmart.com /ip/ URL. Returns pricing (including unit prices), customer ratings, image galleries, category breadcrumbs, fulfillment options (pickup, delivery, shipping), product badges, specifications, return policy, store location context, and subscription eligibility: in Walmart's native JSON structure.
Walmart product pages hydrate most fields client-side via GraphQL after JavaScript runs. Piloterr uses website rendering to load the PDP in a browser and capture the full product payload shoppers see on walmart.com.
Discover product URLs with Walmart Search, or query expansions with Walmart Suggest.
GET https://api.piloterr.com/v2/walmart/product?query=https://www.walmart.com/ip/Fresh-Rockit-Crisp-Sweet-Miniature-Apples-3lb-Tub/309762096
Or via POST:
POST https://api.piloterr.com/v2/walmart/product
Content-Type: application/json
{"query": "https://www.walmart.com/ip/Fresh-Rockit-Crisp-Sweet-Miniature-Apples-3lb-Tub/309762096"}
| Parameter |
Type |
Required |
Description |
query |
string |
yes |
Full Walmart product page URL (must contain /ip/) |
| Field |
Type |
Description |
us_item_id |
string |
Walmart numeric item ID (from the URL) |
id |
string |
Internal Walmart product identifier |
name |
string |
Product title |
brand |
string |
Brand name |
type |
string |
Product type label |
upc |
string |
UPC barcode when available |
canonical_url |
string |
Relative product URL path |
average_rating |
number |
Average customer rating |
number_of_reviews |
number |
Total review count |
availability_status |
string |
Stock status code (e.g. IN_STOCK) |
availability_status_v2 |
object |
Stock status with human-readable label |
price_info.current_price |
object |
Current price (price, price_string, currency_unit) |
price_info.unit_price |
object |
Unit price (e.g. per lb) |
image_info.thumbnail_url |
string |
Main product image |
image_info.all_images |
array |
Full image gallery |
category.path |
array |
Category breadcrumb trail |
location |
object |
Store/postal context (postal_code, city, store_ids) |
seller_name |
string |
Seller display name |
seller_type |
string |
Seller type (e.g. INTERNAL, marketplace) |
badges |
object |
Product badges (Overall pick, SNAP eligible, etc.) |
idml.specifications |
array |
Specification name/value pairs |
idml.long_description |
string |
HTML long description |
idml.short_description |
string |
Plain-text short description |
idml.product_highlights |
array |
Highlight bullets |
return_policy |
object |
Return eligibility and window |
fulfillment_type |
string |
Primary fulfillment mode |
fulfillment_label |
array |
Pickup/delivery messaging for the shopper context |
fulfillment_options |
array |
Shipping, pickup, and delivery options with SLA |
fulfillment_summary |
array |
Fulfillment method and delivery date details |
subscription |
object |
Subscribe & Save eligibility |
trust_badges |
array |
Trust signals (free returns, sold by Walmart) |
condition_offers |
array |
Available condition/offer combinations |
- Suggest: optional: discover query expansions from a keyword + ZIP
- Search: get product card URLs from a search results page
- Product: fetch full PDP JSON from any
/ip/ URL (this endpoint)
- Always pass the full product URL copied from walmart.com.
- The numeric ID at the end of the URL is the
us_item_id.
- Prices are in USD unless otherwise specified in
price_info.
idml.long_description may contain HTML markup.
- Fulfillment availability depends on the store/postal context in
location.
- Costs 2 credits per call (browser rendering).
- Monitor Walmart PDP pricing, unit prices, and stock status
- Enrich product catalogs with specs, categories, badges, and UPCs
- Track pickup/delivery availability and fulfillment SLAs by store context
- Build US grocery and retail analytics pipelines with native Walmart JSON