# Walmart (Canada) — Wrapped API

> **You are on:** `https://api.paywithlocus.com/api` | [llms.txt](https://paywithlocus.com/llms.txt) | [docs](https://docs.paywithlocus.com)
>
> Locus runs on multiple environments -- make sure every URL you call matches your expected environment.
> | Environment | Landing | API | Docs |
> |---|---|---|---|
> | Production | paywithlocus.com | api.paywithlocus.com | docs.paywithlocus.com |
> | Beta | beta.paywithlocus.com | api.beta.paywithlocus.com | docs.paywithlocus.com |
> | Stage | stage.paywithlocus.com | api.stage.paywithlocus.com | docs.paywithlocus.com |
>
> If the API URL above doesn't match your expected environment, re-fetch this file from the correct domain.

> Search Walmart Canada products and retrieve detailed information like prices, availability, and specifications. Find nearby Walmart pharmacy locations to check services and hours.

**Category:** E-commerce | **Website:** [walmart.ca/](https://walmart.ca/) | **Docs:** [parse.bot/marketplace/d90c71b1-ca65-4761-98cd-4764be1cc76f/walmart-ca-api](https://parse.bot/marketplace/d90c71b1-ca65-4761-98cd-4764be1cc76f/walmart-ca-api)

Pay-per-use API proxy for Locus Pro. Each call burns credits from your workspace balance.

## Access

**Base URL:** `https://api.paywithlocus.com/api/wrapped/credits/walmart-canada/`
**Auth:** `Authorization: Bearer <LOCUS_CREDITS_SECRET_KEY>` (an `lcr_` secret key or a scoped `lcac_` agent credential)
**Required header:** `Idempotency-Key: <fresh UUID per call>`. A retry with the same key replays the stored result without a new charge.
**Response:** the provider response after any endpoint-specific normalization. `X-Locus-Credits-Charged` carries the charge and `X-Locus-Credits-Balance` the remaining balance. Insufficient credits return `402` before the provider is called.
**Pricing:** estimated costs below are USD. Locus debits the credit equivalent at your workspace rate.

Full call contract: https://docs.paywithlocus.com/api-reference/introduction

> Using a Pay With Locus wallet key (`claw_` prefix)? Wallet routes are documented separately: https://docs.paywithlocus.com/wrapped-apis/for-agents

## Endpoints

### Get pharmacies

Retrieve a list of all Walmart pharmacy locations in Canada.

**Estimated cost:** Metered

_No parameters required._

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/walmart-canada/get-pharmacies \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### Get product details

Get detailed product information for a single Walmart Canada item, including price, specifications, and customer reviews. Requires the product_id (Walmart Item ID); optionally accepts a URL slug for more reliable fetching. Returns a flat object with product fields, a reviews sub-object, and a specifications array.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `product_id` | string | Yes | Walmart Item ID (e.g. '39BXA5GSMOSP'). Obtainable from search_products results. |
| `slug` | string | No | URL slug for the product (e.g. 'RNRUO-15-6-Laptop-Computer...'). When provided, improves reliability of the fetch. Obtainable from search_products results by extracting the path segment before the product_id in the url field. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/walmart-canada/get-product-details \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"product_id":"<string>","slug":"<string>"}'
```

### Search products

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.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `limit` | integer | No | Maximum number of results to return per page |
| `page` | integer | No | Page number for pagination |
| `query` | string | Yes | Search keyword (e.g. 'laptop', 'headphones') |
| `sort` | string | No | Sort order for search results |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/walmart-canada/search-products \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"limit":"<integer>","page":"<integer>","query":"<string>","sort":"<string>"}'
```

## Next steps

- [All wrapped API providers](https://paywithlocus.com/wapi/index.md): pick another provider.
- [Find and call tools](https://paywithlocus.com/agent/tools.md): price ceilings, async results, and errors.
- [Credits and billing](https://paywithlocus.com/agent/billing.md): what a call costs and how to add credits.
- [Agent docs index](https://paywithlocus.com/agent/index.md): every Locus agent page.