# Thomann (Germany) — 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 browse Thomann's music store catalog to find products by category, view detailed specifications and pricing, read customer reviews, and filter results to discover the instruments and gear you're looking for. Access comprehensive product information including descriptions, availability, and ratings all in one place.

**Category:** E-commerce | **Website:** [thomann.de/](https://thomann.de/) | **Docs:** [parse.bot/marketplace/70bf1310-a4d3-4880-a19b-f84fd04d0693/thomann-de-api](https://parse.bot/marketplace/70bf1310-a4d3-4880-a19b-f84fd04d0693/thomann-de-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-thomann-de-api-70bf1310/`
**Auth:** `Authorization: Bearer <LOCUS_API_KEY>`

## Endpoints

### filter_products

Search and filter products with multiple criteria including keyword, manufacturer, and price range. Returns paginated results. Combines search with filtering for targeted product discovery. At least one of query, manufacturer, min_price, or max_price should be provided for meaningful results.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `category_url` | string | No | Base category URL or slug for filtering context. |
| `limit` | integer | No | Max results per page. |
| `manufacturer` | string | No | Manufacturer or brand name to filter by. |
| `max_price` | integer | No | Maximum price filter. |
| `min_price` | integer | No | Minimum price filter. |
| `page` | integer | No | Page number. |
| `query` | string | No | Search keyword. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-thomann-de-api-70bf1310/filter_products \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"category_url":"<string>","limit":"<integer>","manufacturer":"<string>","max_price":"<integer>","min_price":"<integer>","page":"<integer>","query":"<string>"}'
```

### get_all_categories

Retrieve the top-level category tree from the Thomann homepage. Returns category names and URL slugs that can be used with get_category_listings.

**Estimated cost:** Metered

_No parameters required._

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-thomann-de-api-70bf1310/get_all_categories \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### get_category_listings

Browse products within a specific category. Returns paginated product listings for the given category slug. Use get_all_categories to discover available category slugs.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `category_url` | string | Yes | Category page URL or slug (e.g. 'guitars_and_basses.html'). Use get_all_categories to discover available slugs. |
| `limit` | integer | No | Max results per page. |
| `page` | integer | No | Page number. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-thomann-de-api-70bf1310/get_category_listings \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"category_url":"<string>","limit":"<integer>","page":"<integer>"}'
```

### get_product_details

Retrieve full product details for a Thomann product by its page URL or slug. Returns detailed information including full feature list, plain-text and HTML descriptions, and EAN when available. The URL or slug can be obtained from search_products or get_category_listings results.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `url` | string | Yes | Product page URL or slug (e.g. 'gibson_sg_standard_eb_462537.htm' or full URL). |

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

### get_product_reviews

Retrieve customer reviews for a product by its Thomann item number. Returns paginated reviews with star ratings, headline, author, date, and review text. The item number can be obtained from search_products or get_product_details results.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `page` | integer | No | Page number. |
| `product_id` | string | Yes | Thomann item number (e.g. '462537'). Corresponds to item_number from search_products or get_product_details. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-thomann-de-api-70bf1310/get_product_reviews \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"page":"<integer>","product_id":"<string>"}'
```

### search_products

Full-text search over Thomann's product catalog by keyword. Returns paginated product summaries including price, rating, and availability. Results are ordered by relevance. Pagination via page number; each page returns up to `limit` items.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `limit` | integer | No | Max results per page. Accepted values: 25, 50, 100. |
| `page` | integer | No | Page number. |
| `query` | string | Yes | Search keyword. |

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