# Theshadestore — 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.

> Browse The Shade Store's complete catalog of window treatments by exploring categories and subcategories, view detailed product information including materials and collections, and find nearby showrooms. Search for specific products and discover current promotions all in one place.

**Category:** E-commerce | **Website:** [theshadestore.com/](https://theshadestore.com/) | **Docs:** [parse.bot/marketplace/e9239966-23b5-4610-8935-4be0833ef9df/theshadestore-com-api](https://parse.bot/marketplace/e9239966-23b5-4610-8935-4be0833ef9df/theshadestore-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-theshadestore-com-api-e9239966/`
**Auth:** `Authorization: Bearer <LOCUS_API_KEY>`

## Endpoints

### get_all_showrooms

Get a list of all showroom locations across the US. Returns showroom names, URL paths, state, and city. Each showroom URL can be passed to get_showroom_detail for full info.

**Estimated cost:** Metered

_No parameters required._

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-theshadestore-com-api-e9239966/get_all_showrooms \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### get_main_categories

Get main window treatment categories (Shades, Blinds, Drapery). Returns a static list of top-level product categories with their URL paths. No input required.

**Estimated cost:** Metered

_No parameters required._

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-theshadestore-com-api-e9239966/get_main_categories \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### get_product_details

Get detailed product information including available materials and collections from a product customization page. Materials include name, price group, collections membership, and code.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `customization_url` | string | Yes | Product customization URL path (e.g. /shades/roller-shades/custom-roller-shades). Obtain from get_subcategory_products results link field. |

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

### get_promotions

Get current sitewide promotions and sales from the homepage banner. Returns promotional text currently displayed. Results vary over time as promotions change.

**Estimated cost:** Metered

_No parameters required._

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-theshadestore-com-api-e9239966/get_promotions \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### get_showroom_detail

Get full details for a single showroom including name, address, phone number, and store hours.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `showroom_url` | string | Yes | Showroom URL path (e.g. /showrooms/arizona/chandler). Obtain from get_all_showrooms results. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-theshadestore-com-api-e9239966/get_showroom_detail \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"showroom_url":"<string>"}'
```

### get_subcategories

Get subcategories for a specific main category. Parses the category page to find subcategory links; falls back to known defaults if parsing finds none. Returns subcategory names and URL paths.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `category_slug` | string | Yes | Category slug: shades, blinds, or drapery. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-theshadestore-com-api-e9239966/get_subcategories \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"category_slug":"<string>"}'
```

### get_subcategory_products

Get product variants listed on a subcategory page. Returns product names, customization links, and price information. Each product links to a customization page usable with get_product_details.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `subcategory_url` | string | Yes | Subcategory URL path (e.g. /shades/roller-shades). Obtain from get_subcategories results. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-theshadestore-com-api-e9239966/get_subcategory_products \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"subcategory_url":"<string>"}'
```

### search_products

Search for products, collections, and pages by keyword. Returns matching product/category links found on the search results page. Results include name and URL path.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `query` | string | Yes | Search query string (e.g. blackout, roller, drapery). |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-theshadestore-com-api-e9239966/search_products \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"query":"<string>"}'
```
