Discover/Walmart API
live

Walmart APIwalmart.ca

Search Walmart Canada product listings, fetch detailed specs and reviews, and retrieve pharmacy locations via 3 structured JSON endpoints.

Endpoint health
monitored
get_product_details
search_products
0/2 passing latest checkself-healing
Endpoints
3
Updated
21d ago

What is the Walmart API?

The Walmart Canada API covers 3 endpoints that return product search results, detailed item data, and pharmacy locations across Canada. The search_products endpoint accepts a keyword query and returns structured listings including price, brand, rating, review count, seller, availability, and fulfillment type. You can paginate results, apply sorting, and cap the result set per page.

Try it
Page number for pagination
Sort order for search results
Maximum number of results to return per page
Search keyword (e.g. 'laptop', 'headphones')
api.parse.bot/scraper/11ed3ebb-eb32-4e14-93dd-df77916cfce9/<endpoint>
Ready to send
Fill in the parameters and hit sign in to send to see live response data here.
Call it over HTTPgrab a free API key at signup
curl -X GET 'https://api.parse.bot/scraper/11ed3ebb-eb32-4e14-93dd-df77916cfce9/search_products?page=1&sort=best_match&limit=5&query=laptop' \
  -H 'X-API-Key: $PARSE_API_KEY'
Python SDK · recommended

Typed, relational, agent-ready

A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.

  • Fully typed · autocompletes
  • Objects link to objects
  • Typed errors & pagination

Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:

uv add parse-sdk
uv run parse init
uv run parse add --marketplace walmart-ca-api

uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.

"""Walmart Canada product search — browse listings, sort by price, drill into details."""
from parse_apis.walmart_canada_api import WalmartCanadaApi, Sort, ProductNotFound

client = WalmartCanadaApi()

# Search for laptops sorted by lowest price, capped at 5 results
for product in client.products.search(query="laptop", sort=Sort.PRICE_LOW, limit=5):
    print(product.name, product.price, product.brand)

# Drill into the first headphones result for full details
headphone = client.products.search(query="headphones", sort=Sort.RATING_HIGH, limit=1).first()
if headphone:
    detail = headphone.details()
    print(detail.name, detail.price, detail.currency, detail.was_price)
    # Walk specifications
    for spec in detail.specifications[:3]:
        print(spec.name, spec.value)
    # Check customer reviews
    for review in detail.reviews.customer_reviews[:2]:
        print(review.title, review.rating, review.author)

# Handle a product that may not exist
try:
    missing = client.product(id="INVALID_ID_XYZ").details()
    print(missing.name)
except ProductNotFound as exc:
    print(f"Product not found: {exc.product_id}")

print("exercised: products.search with Sort enum, .first(), .details(), specifications, reviews, typed error catch")
All endpoints · 3 totalmissing one? ·

Search for products on Walmart Canada by keyword. Returns product listings with price, brand, rating, and availability information. Paginates via integer page number. Some queries may be redirected by Walmart to category pages, resulting in an upstream_error.

Input
ParamTypeDescription
pageintegerPage number for pagination
sortstringSort order for search results
limitintegerMaximum number of results to return per page
queryrequiredstringSearch keyword (e.g. 'laptop', 'headphones')
Response
{
  "type": "object",
  "fields": {
    "items": "array of product objects with id, name, price, brand, image, rating, num_reviews, url, seller, availability, fulfillment_type",
    "total": "integer total number of matching products"
  },
  "sample": {
    "data": {
      "items": [
        {
          "id": "39BXA5GSMOSP",
          "url": "/en/ip/product/39BXA5GSMOSP",
          "name": "RNRUO 15.6\" Laptop Computer, 8GB RAM 256GB SSD",
          "brand": "RNRUO",
          "image": "https://i5.walmartimages.com/asr/example.png",
          "price": 325.99,
          "rating": 4.0455,
          "seller": "RNRUO",
          "num_reviews": 22,
          "availability": "In stock",
          "fulfillment_type": "FC"
        }
      ],
      "total": 53
    },
    "status": "success"
  }
}

About the Walmart API

Search and Browse Products

The search_products endpoint accepts a required query string (e.g. 'laptop' or 'headphones') and returns an array of product objects alongside a total count of matching results. Each item in the items array includes id, name, price, brand, image, rating, num_reviews, url, seller, availability, and fulfillment_type. Pagination is controlled with the page integer parameter, and results can be capped via limit. Be aware that some queries may be redirected by Walmart Canada to category browse pages rather than search results, which will surface as an upstream_error in the response.

Product Details and Specifications

The get_product_details endpoint takes a required product_id (the Walmart Item ID, e.g. 39BXA5GSMOSP) and an optional slug to fetch a single product record. The response returns three distinct objects: a product object with core item data, a reviews object with customer review information, and a specifications array containing structured attribute-value pairs for the item.

Pharmacy Locations

The get_pharmacies endpoint requires no input parameters and returns a full list of Walmart pharmacy locations in Canada. Each record includes id, name, latitude, longitude, and postcode, making it straightforward to map locations or filter by proximity using your own geospatial logic.

Reliability & maintenance

The Walmart API is a managed, monitored endpoint for walmart.ca — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when walmart.ca changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.

This isn't an official walmart.ca API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.

Latest check
0/2 endpoints passing
Maintenance
Monitored & self-healing
Will this API break when the source site changes?+
It's built not to. Every endpoint is health-checked on a schedule with automated test probes. When the source site changes and a check fails, the API is automatically queued for repair and re-verified — that's the self-healing layer. Each API page shows when its endpoints were last verified. And because marketplace APIs are shared, any fix reaches everyone using it.
Is this an official API from the source site?+
No — Parse APIs are independent, managed REST wrappers over publicly available data. That is the point: where a site has no official API (or only a limited one), Parse gives you a maintained, monitored endpoint for that data and keeps it working as the site changes — so you get a stable contract over a source that never promised one.
Can I fix or extend this API myself if I need a new endpoint or field?+
Yes — and you don't have to wait on us. This API was generated by the Parse agent, which stays attached. Describe the change in plain English ("add an endpoint that returns reviews", "fix the price field") in the revise box on the API page or via the revise_api MCP tool, and the agent rebuilds it against the live site in minutes. Contributing the change back to the public API is free.
What happens if I call an endpoint that has an issue?+
Errors are machine-readable: a bad call returns a clean status with the list of available endpoints and a repair hint, so an agent (or you) can recover or trigger a fix instead of failing silently. Confirmed failures feed the automatic repair queue.
Common use cases
  • Track Walmart Canada price changes for specific products using product_id across repeated get_product_details calls.
  • Build a product comparison tool using search_products to surface price, brand, and rating side-by-side.
  • Power an availability checker using the availability and fulfillment_type fields from search results.
  • Display pharmacy location maps by consuming latitude and longitude from get_pharmacies.
  • Aggregate product specifications for SEO content or feature comparison pages using the specifications array.
  • Monitor seller diversity on Walmart Canada by extracting the seller field across search result pages.
  • Enrich product catalog data by pulling num_reviews and rating for trending keyword queries.
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo1005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000100 req/min

One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.

Frequently asked questions
Does Walmart Canada have an official developer API?+
Walmart has a Marketplace Seller API (developer.walmart.com) intended for approved marketplace sellers managing their own listings. It is not a general-purpose product data API and requires a seller account. This Parse API provides broader read access to product listings, details, and pharmacy data without that restriction.
What does the `search_products` endpoint return when a query triggers a category redirect?+
Walmart Canada sometimes redirects certain queries to category browse pages instead of returning standard search results. When that happens, the endpoint returns an upstream_error in the response rather than an items array. Rephrasing the query or using a more specific keyword typically avoids this.
Does the API return Walmart Canada store locations beyond pharmacies?+
Currently only pharmacy locations are returned via get_pharmacies, with id, name, latitude, longitude, and postcode fields. General store locations, hours, and in-store inventory are not covered. You can fork this API on Parse and revise it to add a store-location endpoint.
Can I retrieve product reviews through this API?+
Yes. The get_product_details endpoint returns a reviews object as part of its response alongside the product object and specifications array. The level of detail within the reviews object (e.g. individual review text vs. aggregate scores) reflects what Walmart Canada exposes for the requested item.
Is historical pricing data available through any endpoint?+
No endpoint currently returns historical price data. The search_products and get_product_details endpoints return current price only. You can fork this API on Parse and revise it to store and expose price history by recording snapshots over time.
Page content last updated . Spec covers 3 endpoints from walmart.ca.
Related APIs in EcommerceSee all →
walmart.com API
Retrieve product data from Walmart.com including pricing, descriptions, availability, reviews, and category listings. Access real-time product information to search by keyword, look up items by ID or URL, and browse department categories.
walmart.com.mx API
Search and browse Walmart Mexico's product catalog to access real-time pricing, availability, and detailed product information across all categories. Find similar items and compare options to make informed shopping decisions.
superc.ca API
Search for products and browse categories at Super C, a Canadian grocery chain, then view detailed product information and find nearby store locations by postal code. Get real-time access to pricing, availability, and inventory across Super C's network.
amazon.ca API
amazon.ca API
chemistwarehouse.co.nz API
Search for medications and health products at Chemist Warehouse NZ, browse categories, view detailed product information, and find nearby store locations. Get access to product pricing, descriptions, and store addresses all in one place.
cvs.com API
Find nearby CVS Pharmacy locations and check their hours, then search for products and verify real-time availability at specific stores. Quickly locate what you need and confirm it's in stock before making a trip.
ebay.ca API
Search and compare eBay Canada listings with detailed item information, pricing history from completed sales, and seller profiles to make informed buying decisions. Discover current deals, browse product categories, and view seller feedback and ratings all in one place.
lowes.com API
Search and browse products from Lowe's, including product listings by category, detailed product information, and pricing. Retrieve comprehensive details on specific items to compare options and make informed purchasing decisions.