Discover/Bunnings API
live

Bunnings APIbunnings.com.au

Search Bunnings products, retrieve detailed product data, and list store locations by Australian state via a simple REST API with 3 endpoints.

Endpoint health
verified 5d ago
search_products
get_product_detail
list_stores
3/3 passing latest checkself-healing
Endpoints
3
Updated
21d ago

What is the Bunnings API?

The Bunnings Warehouse Australia API provides 3 endpoints to query the Bunnings product catalogue and store network. Use search_products to find products by keyword with price, brand, rating, and stock status; get_product_detail to pull full product data including images, categories, and description; and list_stores to retrieve every Bunnings location in a given Australian state or territory.

Try it
Page number for pagination.
Sort order for results.
Search keyword (e.g. 'drill', 'paint', 'timber')
api.parse.bot/scraper/f23cbafe-8973-4247-b121-01c19c99372f/<endpoint>
Ready to send
Fill in the parameters and hit sign in to send to see live response data here.
Call it over HTTPgrab a free API key at signup
curl -X GET 'https://api.parse.bot/scraper/f23cbafe-8973-4247-b121-01c19c99372f/search_products?page=1&sort=BoostOrder&query=drill' \
  -H 'X-API-Key: $PARSE_API_KEY'
Python SDK · recommended

Typed, relational, agent-ready

A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.

  • Fully typed · autocompletes
  • Objects link to objects
  • Typed errors & pagination

Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:

uv add parse-sdk
uv run parse init
uv run parse add --marketplace bunnings-com-au-api

uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.

from parse_apis.bunnings_australia_api import Bunnings, Sort, State

bunnings = Bunnings()

# Search for products by keyword, sorted by price low to high
for listing in bunnings.productlistings.search(query="cordless drill", sort=Sort.PRICE_ASC):
    print(listing.name, listing.price, listing.brand, listing.in_stock)

    # Navigate from listing to full product details
    detail = listing.details()
    print(detail.formatted_price, detail.average_rating, detail.number_of_reviews)

# List all stores in Victoria
for store in bunnings.stores.list(state=State.VIC):
    print(store.name, store.slug, store.url)
All endpoints · 3 totalmissing one? ·

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.

Input
ParamTypeDescription
pageintegerPage number for pagination.
sortstringSort order for results.
queryrequiredstringSearch keyword (e.g. 'drill', 'paint', 'timber')
Response
{
  "type": "object",
  "fields": {
    "page": "integer current page number",
    "query": "string the search query used",
    "products": "array of product objects with name, price, brand, item_number, sku, slug, url, image, rating, rating_count, in_stock",
    "total_count": "integer total number of matching products"
  },
  "sample": {
    "data": {
      "page": 1,
      "query": "drill",
      "products": [
        {
          "sku": "0715241",
          "url": "https://www.bunnings.com.au/ryobi-18v-one-drill-driver-starter-kit-r18dd22_p0715241",
          "name": "Ryobi 18V ONE+ Drill Driver Starter Kit R18DD22",
          "slug": "ryobi-18v-one-drill-driver-starter-kit-r18dd22_p0715241",
          "brand": "Ryobi One+",
          "image": "https://media.bunnings.com.au/api/public/content/d6600a629b9846ecac51d6cb2513873d?v=c072b07c",
          "price": 99.98,
          "rating": 4.81,
          "in_stock": true,
          "item_number": "0715241",
          "rating_count": 111
        }
      ],
      "total_count": 423
    },
    "status": "success"
  }
}

About the Bunnings API

Product Search

The search_products endpoint accepts a required query string (e.g. 'drill', 'timber', 'paint') and returns a paginated list of matching products. Each product object includes name, price, brand, item_number, sku, url, image, rating, rating_count, and in_stock status. Use the sort parameter to order results by BoostOrder, PriceAsc, or PriceDesc, and the page parameter to walk through large result sets. The total_count field tells you how many matching products exist across all pages.

Product Detail

The get_product_detail endpoint takes a product_slug — the URL slug including the item number suffix, such as 'decor-8-x-50mm-hot-dipped-galv-clouts-1kg_p1234567' — and returns a detailed record. Response fields include code, name, brand, brand_url, price, currency (AUD), an images array with full and thumbnail URLs, a categories array with category name and code, and a description object containing descriptive text and pointers. Product slugs are available from search_products results via the url field.

Store Locations

The list_stores endpoint accepts an Australian state or territory abbreviation (nsw, vic, qld, wa, sa, tas, act) and returns an array of store objects. Each store record includes name, slug, state, and url. The total field gives the count of stores in that state. This is useful for proximity lookups or building store-selector features when combined with external geocoding.

Reliability & maintenanceVerified

The Bunnings API is a managed, monitored endpoint for bunnings.com.au — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when bunnings.com.au changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.

This isn't an official bunnings.com.au API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.

Last verified
5d ago
Latest check
3/3 endpoints passing
Maintenance
Monitored & self-healing
Will this API break when the source site changes?+
It's built not to. Every endpoint is health-checked on a schedule with automated test probes. When the source site changes and a check fails, the API is automatically queued for repair and re-verified — that's the self-healing layer. Each API page shows when its endpoints were last verified. And because marketplace APIs are shared, any fix reaches everyone using it.
Is this an official API from the source site?+
No — Parse APIs are independent, managed REST wrappers over publicly available data. That is the point: where a site has no official API (or only a limited one), Parse gives you a maintained, monitored endpoint for that data and keeps it working as the site changes — so you get a stable contract over a source that never promised one.
Can I fix or extend this API myself if I need a new endpoint or field?+
Yes — and you don't have to wait on us. This API was generated by the Parse agent, which stays attached. Describe the change in plain English ("add an endpoint that returns reviews", "fix the price field") in the revise box on the API page or via the revise_api MCP tool, and the agent rebuilds it against the live site in minutes. Contributing the change back to the public API is free.
What happens if I call an endpoint that has an issue?+
Errors are machine-readable: a bad call returns a clean status with the list of available endpoints and a repair hint, so an agent (or you) can recover or trigger a fix instead of failing silently. Confirmed failures feed the automatic repair queue.
Common use cases
  • Compare prices across Bunnings product categories by sorting search_products results with PriceAsc or PriceDesc
  • Build a product availability checker using the in_stock field from search_products
  • Populate a product catalogue page with images, descriptions, and category breadcrumbs from get_product_detail
  • Generate a Bunnings store finder feature using list_stores filtered by state abbreviation
  • Track price changes on specific SKUs over time using the price field from get_product_detail
  • Build a brand-focused product browser using the brand and brand_url fields returned by product endpoints
  • Aggregate rating and review counts across a product range using rating and rating_count from search results
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo1005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000100 req/min

One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.

Frequently asked questions
Does Bunnings have an official public developer API?+
Bunnings does not publish a public developer API or documented data feed for third-party use. This Parse API provides structured access to product and store data from bunnings.com.au.
What does `get_product_detail` return beyond what `search_products` provides?+
search_products returns a summary record per product: name, price, brand, item_number, sku, rating, rating_count, and in_stock. get_product_detail extends this with a full images array (including thumbnails), a categories array with codes, a structured description object, brand_url, and the currency field. It does not include seller ratings, delivery estimates, or stock counts.
Does the API return individual store details like address, phone number, or trading hours?+
list_stores returns each store's name, slug, state, and url. Address, phone number, and trading hours are not currently included in the response. You can fork this API on Parse and revise it to add a store-detail endpoint that returns that data.
Does `search_products` support filtering by category or brand in addition to keyword?+
Currently the search_products endpoint accepts a free-text query, a sort value, and a page number. Filtering by category code or brand name is not supported as a dedicated parameter. You can fork this API on Parse and revise it to add category or brand filter parameters.
How does pagination work in `search_products`?+
The page parameter is an integer that selects which page of results to return. The response includes total_count (total matching products) and page (current page number), so you can calculate the number of pages needed. Page size is fixed and cannot be configured via the API inputs.
Page content last updated . Spec covers 3 endpoints from bunnings.com.au.
Related APIs in EcommerceSee all →
jbhifi.com.au API
Search and browse JB Hi-Fi's product catalog across categories and brands, check real-time stock availability at different store locations, and discover new arrivals and clearance items. Get detailed product information including specs and find the nearest store to complete your purchase.
homedepot.com API
Search and browse Home Depot's product catalog to compare pricing, check real-time availability, and review detailed product specifications. Find products across all categories, look up store locations and hours, and check fulfillment options including in-store pickup and delivery.
hagebau.de API
Browse Hagebau's complete product catalog, search across thousands of items by category and brand, and check real-time store availability for building materials and home improvement products. Access detailed product specifications, filter by brand, and discover what's in stock at your nearest location.
lowes.com API
Search and browse products from Lowe's, including product listings by category, detailed product information, and pricing. Retrieve comprehensive details on specific items to compare options and make informed purchasing decisions.
ikea.com API
Search and browse IKEA's full product catalog to find items by category, compare measurements, read customer reviews, and check real-time store availability and current deals. Discover new arrivals and best-selling products to help you shop smarter and find exactly what you need.
thegoodguys.com.au API
Search and browse The Good Guys' complete product catalog with detailed tech specs and customer reviews, then find nearby stores and check delivery options for your purchases. Discover deals, filter by category or brand, and access everything you need to shop electronics and appliances with confidence.
sainsburys.co.uk API
Access Sainsbury's grocery catalogue: search products by keyword, browse the full category hierarchy, retrieve detailed product information, and discover trending searches.
coles.com.au API
Search and browse Coles supermarket products by category, view detailed product information, and discover current specials all in one place. Find exactly what you're looking for with powerful search functionality and organized category navigation.