# Shop Deere — 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 the John Deere parts catalog across categories and equipment models, with access to real-time pricing, availability, maintenance kits, and related part recommendations.

**Category:** Automotive | **Website:** [shop.deere.com/](https://shop.deere.com/) | **Docs:** [parse.bot/marketplace/c778622b-d5e1-4b28-876c-2ef5528eb7bd/shop-deere-com-api](https://parse.bot/marketplace/c778622b-d5e1-4b28-876c-2ef5528eb7bd/shop-deere-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-deere-com-api-c778622b/`
**Auth:** `Authorization: Bearer <LOCUS_API_KEY>`

## Endpoints

### get_maintenance_kits

Retrieve products in the maintenance kits category. Returns paginated results of service and maintenance kit products with pricing.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `page` | integer | No | Page number. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-shop-deere-com-api-c778622b/get_maintenance_kits \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"page":"<integer>"}'
```

### get_part_details

Get full details for a specific part including pricing, availability, and frequently bought together recommendations. Returns a single part object enriched with pricing from the dealer network and related product suggestions.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `part_number` | string | Yes | Part number (e.g. 'AM125424', 'AM107423'). |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-shop-deere-com-api-c778622b/get_part_details \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"part_number":"<string>"}'
```

### get_parts_by_category

Browse parts within a specific category. Returns paginated results with pricing and facets. Category slugs are discoverable via get_parts_categories.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `category_id` | string | Yes | Category slug/ID (e.g. 'Filters', 'BeltsChains'). Use get_parts_categories to discover valid values. |
| `page` | integer | No | Page number. |
| `size` | integer | No | Results per page. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-shop-deere-com-api-c778622b/get_parts_by_category \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"category_id":"<string>","page":"<integer>","size":"<integer>"}'
```

### get_parts_by_equipment_model

Look up compatible parts catalogs for a specific John Deere equipment model. Returns catalog references with PC numbers that identify the parts book for each model variant.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `model` | string | Yes | Equipment model number (e.g. 'Z445'). |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-shop-deere-com-api-c778622b/get_parts_by_equipment_model \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"<string>"}'
```

### get_parts_categories

List top-level parts categories available in the John Deere parts catalog. Returns category names and slugs used as identifiers for get_parts_by_category and get_subcategories.

**Estimated cost:** Metered

_No parameters required._

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

### get_related_parts

Get frequently bought together and related product recommendations for a specific part number. Returns products ranked by confidence score.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `part_number` | string | Yes | Part number to get recommendations for (e.g. 'AM125424'). |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-shop-deere-com-api-c778622b/get_related_parts \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"part_number":"<string>"}'
```

### get_subcategories

List subcategories and facets for a given category. Returns available filtering options including models, categories, and sub-categories that can narrow browsing within that category.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `category_id` | string | Yes | Category slug/ID (e.g. 'Filters'). Use get_parts_categories to discover valid values. |

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

### search_parts

Full-text search across the John Deere parts catalog by keyword or part number. Returns paginated products with pricing, facets for filtering (models, categories, tiers), and total result count. Pagination via integer page counter; facets describe the result set for client-side narrowing.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `page` | integer | No | Page number. |
| `query` | string | Yes | Search keyword or part number. |
| `size` | integer | No | Results per page. |
| `sort` | string | No | Sort order. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-shop-deere-com-api-c778622b/search_parts \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"page":"<integer>","query":"<string>","size":"<integer>","sort":"<string>"}'
```

### search_parts_by_model

Search for parts associated with a specific equipment model. Combines the model name with an optional keyword for targeted results. Without a query, returns all indexed parts for that model.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `model` | string | Yes | Equipment model number (e.g. 'Z445'). |
| `page` | integer | No | Page number. |
| `query` | string | No | Additional search keyword to filter results within the model context. |

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