# Bunnings — 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 Bunnings Warehouse Australia's product catalogue, retrieve detailed product information, and look up store locations by state or territory.

**Category:** E-commerce | **Website:** [bunnings.com.au/](https://bunnings.com.au/) | **Docs:** [parse.bot/marketplace/950e8ad7-a1af-4d4d-a177-803abc1c5d07/bunnings-com-au-api](https://parse.bot/marketplace/950e8ad7-a1af-4d4d-a177-803abc1c5d07/bunnings-com-au-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/bunnings/`
**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 product detail

Get detailed information for a specific Bunnings product by its URL slug. Returns comprehensive product data including pricing, ratings, images, categories, description, and availability. The slug is the last path segment of the product URL from search results.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `product_slug` | string | Yes | Product URL slug including item number suffix (e.g. 'ryobi-18v-one-drill-driver-starter-kit-r18dd22_p0715241'). Obtainable from search_products results[*].slug. |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/bunnings/get-product-detail \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"product_slug":"<string>"}'
```

### Get product location

Get the in-store aisle and bay location for a product at a specific Bunnings store. Returns one or more aisle/bay positions where the product can be found. Requires both the product slug (from search_products) and the store code (from get_store_detail). Results are auto-iterated.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `product_slug` | string | Yes | Product URL slug including item number suffix (e.g. 'ryobi-18v-one-drill-driver-starter-kit-r18dd22_p0715241'). Obtainable from search_products results[*].slug. |
| `store_code` | string | Yes | Bunnings store code (numeric string, e.g. '8056' for Stafford). Obtainable from get_store_detail endpoint's store_code field. |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/bunnings/get-product-location \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"product_slug":"<string>","store_code":"<string>"}'
```

### Get store detail

Get detailed information for a specific Bunnings store by state and slug. Returns store code (needed for get_product_location), address, phone, opening hours, services, and geographic coordinates.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `state` | string | Yes | Australian state or territory abbreviation. |
| `store_slug` | string | Yes | Store slug from list_stores (e.g. 'stafford', 'alexandria'). Obtainable from list_stores results[*].slug. |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/bunnings/get-store-detail \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"state":"<string>","store_slug":"<string>"}'
```

### List stores

List all Bunnings Warehouse store locations in a specific Australian state or territory. Returns store name, slug, state, and URL for each location.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `state` | string | Yes | Australian state or territory abbreviation. |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/bunnings/list-stores \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"state":"<string>"}'
```

### Search products

Full-text search over Bunnings Australia product catalog. Returns paginated results with product name, price, brand, rating, and stock status. Paginates via page number. Sort controls result ordering by relevance or price.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `page` | integer | No | Page number for pagination. |
| `query` | string | Yes | Search keyword (e.g. 'drill', 'paint', 'timber') |
| `sort` | string | No | Sort order for results. |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/bunnings/search-products \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"page":"<integer>","query":"<string>","sort":"<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.