# On — 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 data from on.com.

**Category:** E-commerce | **Website:** [on.com/](https://on.com/) | **Docs:** [parse.bot/marketplace/57cd26e8-0d89-438c-a9c3-00d7062489d8/on-com-api](https://parse.bot/marketplace/57cd26e8-0d89-438c-a9c3-00d7062489d8/on-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-on-com-api-57cd26e8/`
**Auth:** `Authorization: Bearer <LOCUS_API_KEY>`

## Endpoints

### get_all_shoes

Fetch all shoes across all genders (mens, womens, kids) by iterating through the full catalog. Returns one entry per color variant. No pagination control; all results returned in a single response. May take several seconds due to multiple internal pages.

**Estimated cost:** Metered

_No parameters required._

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

### get_article_detail

Extract article details from an On Running story URL. Returns the title, summary (from meta description), and schema.org BlogPosting structured data including headline, author, and publisher. Full body text extraction is limited due to client-side rendering.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `url` | string | Yes | Full article URL (e.g. https://www.on.com/en-us/stories/what-to-wear-to-pilates) |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-on-com-api-57cd26e8/get_article_detail \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"url":"<string>"}'
```

### get_articles_list

Fetch a list of articles from On Running's Off Stories editorial hub. Returns article titles and URLs by parsing the hub page. Articles cover topics like running tips, athlete stories, and product guides.

**Estimated cost:** Metered

_No parameters required._

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

### get_product_detail

Extract detailed product information from a product page URL. Returns the product name, description, brand, all color variants with individual pricing and stock availability, and image URLs. The URL must be a valid on.com product page.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `url` | string | Yes | Full product URL (e.g. https://www.on.com/en-us/products/cloud-6-3wf1006/womens/salt-gardenia-shoes-3WF10064657) |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-on-com-api-57cd26e8/get_product_detail \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"url":"<string>"}'
```

### get_products_by_category

Browse products filtered by gender and product type from On Running's US catalog. Returns one entry per color variant. Not all gender and product_type combinations have products; some combinations may return zero results. Paginates via zero-indexed page number.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `gender` | string | No | Gender filter: mens, womens, kids |
| `limit` | integer | No | Results per page |
| `page` | integer | No | Page number (0-indexed) |
| `product_type` | string | No | Product type filter: shoes, apparel, accessories |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-on-com-api-57cd26e8/get_products_by_category \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"gender":"<string>","limit":"<integer>","page":"<integer>","product_type":"<string>"}'
```

### search_products

Full-text search across On Running's US product catalog. query matches product names and descriptions. Returns one entry per color variant with price, SKU, and image. Paginates via zero-indexed page number; each page returns up to limit items. total_hits and nb_pages describe the full result set.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `limit` | integer | No | Results per page |
| `page` | integer | No | Page number (0-indexed) |
| `query` | string | Yes | Search keyword (e.g. 'cloud', 'runner') |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-on-com-api-57cd26e8/search_products \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"limit":"<integer>","page":"<integer>","query":"<string>"}'
```
