# Watchbase — 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 and explore watches across thousands of brands and collections, discover detailed specifications for watches and mechanical calibers, and retrieve high-quality watch images. Browse curated watch collections by brand or find specific timepieces using advanced search functionality.

**Category:** E-commerce | **Website:** [watchbase.com/](https://watchbase.com/) | **Docs:** [parse.bot/marketplace/1ca81c7f-10a8-4f32-8505-adb823522b97/watchbase-com-api](https://parse.bot/marketplace/1ca81c7f-10a8-4f32-8505-adb823522b97/watchbase-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-watchbase-com-api-1ca81c7f/`
**Auth:** `Authorization: Bearer <LOCUS_API_KEY>`

## Endpoints

### get_brand

Get a brand profile including its full description, official website URL, and list of watch collections with counts.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `brand_slug` | string | Yes | Brand slug as returned by list_brands (e.g. rolex, omega, a-lange-sohne). |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-watchbase-com-api-1ca81c7f/get_brand \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"brand_slug":"<string>"}'
```

### get_caliber_details

Get full technical specifications for a specific caliber/movement including type, diameter, jewels, power reserve, frequency, and a list of watches using it.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `brand_slug` | string | Yes | Brand slug (e.g. rolex). |
| `caliber_slug` | string | Yes | Caliber slug from list_calibers_by_brand (e.g. 3135). |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-watchbase-com-api-1ca81c7f/get_caliber_details \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"brand_slug":"<string>","caliber_slug":"<string>"}'
```

### get_watch_details

Get full specifications for a specific watch reference including case dimensions and materials, dial details, movement info, production years, description text, and image URLs.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `brand_slug` | string | Yes | Brand slug (e.g. rolex). |
| `collection_slug` | string | Yes | Collection slug (e.g. submariner). |
| `reference_slug` | string | Yes | Reference slug from list_watches_by_collection (e.g. 126610ln-0001). |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-watchbase-com-api-1ca81c7f/get_watch_details \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"brand_slug":"<string>","collection_slug":"<string>","reference_slug":"<string>"}'
```

### get_watch_images

Extract all image URLs for a specific watch reference. Returns a wrapped array of image URL strings.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `brand_slug` | string | Yes | Brand slug (e.g. rolex). |
| `collection_slug` | string | Yes | Collection slug (e.g. submariner). |
| `reference_slug` | string | Yes | Reference slug from list_watches_by_collection (e.g. 126610ln-0001). |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-watchbase-com-api-1ca81c7f/get_watch_images \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"brand_slug":"<string>","collection_slug":"<string>","reference_slug":"<string>"}'
```

### list_all_calibers

List all caliber brands and their movements. Returns an array of brand objects, each containing the brand name, slug, and an array of calibers with name and slug.

**Estimated cost:** Metered

_No parameters required._

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

### list_brands

List all watch brands tracked by WatchBase. Returns brand name, URL slug, and watch count for each. Useful as the entry point for discovering brand slugs needed by other endpoints.

**Estimated cost:** Metered

_No parameters required._

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

### list_calibers_by_brand

List all calibers/movements for a specific brand. Returns an array of caliber objects with name and slug.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `brand_slug` | string | Yes | Brand slug (e.g. rolex, omega). |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-watchbase-com-api-1ca81c7f/list_calibers_by_brand \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"brand_slug":"<string>"}'
```

### list_collections_by_brand

List all watch collections (families) for a given brand. Each collection has a name, slug, and watch count.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `brand_slug` | string | Yes | Brand slug as returned by list_brands (e.g. rolex, omega, a-lange-sohne). |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-watchbase-com-api-1ca81c7f/list_collections_by_brand \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"brand_slug":"<string>"}'
```

### list_watches_by_collection

List all watches in a specific brand collection. Returns watch summaries including reference number, name, slug, thumbnail URL, and full URL.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `brand_slug` | string | Yes | Brand slug (e.g. rolex, omega). |
| `collection_slug` | string | Yes | Collection slug from list_collections_by_brand (e.g. submariner, speedmaster). |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-watchbase-com-api-1ca81c7f/list_watches_by_collection \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"brand_slug":"<string>","collection_slug":"<string>"}'
```

### search_watches

Full-text search across all watches. Returns paginated results (20 per page) with total count. Each result includes reference number, name, slug, thumbnail URL, and full URL.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `page` | integer | No | Page number for pagination (1-based). |
| `query` | string | Yes | Search query string (e.g. submariner, speedmaster, daytona). |

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