# Shop Deere — Wrapped API

> **You are on:** `https://api.beta.paywithlocus.com/api` | [llms.txt](https://beta.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 for Locus Pro. Each call burns credits from your workspace balance.

## Access

**Base URL:** `https://api.beta.paywithlocus.com/api/wrapped/credits/shop-deere/`
**Auth:** `Authorization: Bearer <LOCUS_CREDITS_SECRET_KEY>` (an `lcr_` secret key or a scoped `lcac_` agent credential)
**Required header:** `Idempotency-Key: <fresh UUID per call>`. A retry with the same key replays the stored result without a new charge.
**Response:** the provider response after any endpoint-specific normalization. `X-Locus-Credits-Charged` carries the charge and `X-Locus-Credits-Balance` the remaining balance. Insufficient credits return `402` before the provider is called.
**Pricing:** estimated costs below are USD. Locus debits the credit equivalent at your workspace rate.

Full call contract: https://docs.paywithlocus.com/api-reference/introduction

> Using a Pay With Locus wallet key (`claw_` prefix)? Wallet routes are documented separately: https://docs.paywithlocus.com/wrapped-apis/for-agents

## 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.beta.paywithlocus.com/api/wrapped/credits/shop-deere/get-maintenance-kits \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -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.beta.paywithlocus.com/api/wrapped/credits/shop-deere/get-part-details \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -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.beta.paywithlocus.com/api/wrapped/credits/shop-deere/get-parts-by-category \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -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.beta.paywithlocus.com/api/wrapped/credits/shop-deere/get-parts-by-equipment-model \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -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.beta.paywithlocus.com/api/wrapped/credits/shop-deere/get-parts-categories \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -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.beta.paywithlocus.com/api/wrapped/credits/shop-deere/get-related-parts \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -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.beta.paywithlocus.com/api/wrapped/credits/shop-deere/get-subcategories \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -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.beta.paywithlocus.com/api/wrapped/credits/shop-deere/search-parts \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -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.beta.paywithlocus.com/api/wrapped/credits/shop-deere/search-parts-by-model \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"model":"<string>","page":"<integer>","query":"<string>"}'
```

## Next steps

- [All wrapped API providers](https://beta.paywithlocus.com/wapi/index.md): pick another provider.
- [Find and call tools](https://beta.paywithlocus.com/agent/tools.md): price ceilings, async results, and errors.
- [Credits and billing](https://beta.paywithlocus.com/agent/billing.md): what a call costs and how to add credits.
- [Agent docs index](https://beta.paywithlocus.com/agent/index.md): every Locus agent page.