# Shop Lululemon — 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.

> Access lululemon's product catalog: browse categories, retrieve product details and variants, surface new arrivals, sale items, and recommendations.

**Category:** E-commerce | **Website:** [shop.lululemon.com/](https://shop.lululemon.com/) | **Docs:** [parse.bot/marketplace/5135d7a6-7d1b-43b0-9d6c-242942e2eb1a/shop-lululemon-com-api](https://parse.bot/marketplace/5135d7a6-7d1b-43b0-9d6c-242942e2eb1a/shop-lululemon-com-api)

Pay-per-use API proxy. Each call is automatically billed to your wallet in USDC.

## Access

**Base URL:** `https://api.paywithlocus.com/api/wrapped/parse-shop-lululemon-com-api-5135d7a6/`
**Auth:** `Authorization: Bearer <LOCUS_API_KEY>`

## Endpoints

### get_categories

Get main product categories with their slugs and navigation state IDs. Returns a curated list of popular categories. Use the returned slug and n_value as inputs to get_category_products to browse products in that category.

**Estimated cost:** Metered

_No parameters required._

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-shop-lululemon-com-api-5135d7a6/get_categories \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### get_category_products

List products in a category with pagination and sorting. Requires a category slug and its corresponding navigation state ID (n_value). Use get_categories to discover valid category/n_value pairs. Returns up to 40 products per page with facets for further filtering.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `category` | string | Yes | Category slug (e.g., 'women-leggings', 'whats-new', 'we-made-too-much') |
| `limit` | integer | No | Number of products per page (page size) |
| `n_value` | string | No | Navigation state ID for the category (e.g., 'n1udsq' for women-leggings). Required for most categories to return results. Obtain from get_categories endpoint. |
| `page` | integer | No | Page number |
| `sort` | string | No | Sort option. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-shop-lululemon-com-api-5135d7a6/get_category_products \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"category":"<string>","limit":"<integer>","n_value":"<string>","page":"<integer>","sort":"<string>"}'
```

### get_product_details

Retrieve full product details including variants, SKUs, pricing, availability, and images.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `product_id` | string | Yes | Product ID (e.g., 'prod11020158') |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-shop-lululemon-com-api-5135d7a6/get_product_details \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"product_id":"<string>"}'
```

### get_related_products

Retrieve top/recommended products. Returns popular products across the site based on data science recommendations. Each product includes id, productId, displayName, listPrice, salePrice, and pdpUrl.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `limit` | integer | No | Number of recommendations to return |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-shop-lululemon-com-api-5135d7a6/get_related_products \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"limit":"<integer>"}'
```

### get_sale_products

Retrieve sale/markdown products from the 'We Made Too Much' section. Returns up to 40 products per page with facets and total counts. Equivalent to calling get_category_products with category='we-made-too-much'.

**Estimated cost:** Metered

_No parameters required._

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-shop-lululemon-com-api-5135d7a6/get_sale_products \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### get_whats_new

Retrieve the latest new arrivals from the 'What's New' section. Returns up to 40 products per page with facets and total counts. Equivalent to calling get_category_products with category='whats-new'.

**Estimated cost:** Metered

_No parameters required._

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-shop-lululemon-com-api-5135d7a6/get_whats_new \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{}'
```
