OzBargain APIozbargain.com.au ↗
Access current OzBargain deals by category or fetch top upvoted bargains site-wide. Returns price, store, votes, expiry, and more via two endpoints.
What is the OzBargain API?
The OzBargain API exposes two endpoints that return structured deal data from OzBargain.com.au, covering up to 8 fields per deal including title, price, store, upvotes, downvotes, expiry, and category. The get_computer_deals endpoint retrieves deals from a specific category with optional pagination via the limit parameter, while get_top_deals surfaces the most upvoted active deals across the entire site sorted by community votes descending.
curl -X GET 'https://api.parse.bot/scraper/9da4a0cf-f11f-47a5-b74d-5fedcff931d1/get_computer_deals?limit=5' \ -H 'X-API-Key: $PARSE_API_KEY'
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 ozbargain-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.
"""OzBargain SDK walkthrough — browse computing deals and top bargains."""
from parse_apis.ozbargain_api import OzBargain, Deal, DealsUnavailable
client = OzBargain()
# List top deals across all categories, capped to 5
for deal in client.deals.list_top(limit=5):
print(deal.title, "|", deal.upvotes, "upvotes", "|", deal.store)
# Drill into the single hottest computing deal
top_computer = client.deals.list_computer(limit=1).first()
if top_computer:
print(top_computer.title, top_computer.price, top_computer.url)
# Typed error handling around a call
try:
for deal in client.deals.list_computer(limit=3):
print(deal.title, deal.upvotes, deal.category)
except DealsUnavailable as exc:
print(f"Could not fetch deals: {exc}")
print("exercised: deals.list_top / deals.list_computer / typed error catch")
Fetch current deals from the Computing category on OzBargain. Returns deals with title, price, store, votes, and other metadata. Paginates automatically across listing pages to fill the requested limit. Results are in listing order (newest first).
| Param | Type | Description |
|---|---|---|
| limit | integer | Maximum number of deals to return. |
{
"type": "object",
"fields": {
"count": "integer total number of deals returned",
"deals": "array of deal objects with title, url, price, description, store, upvotes, downvotes, expiry, and category"
},
"sample": {
"data": {
"count": 1,
"deals": [
{
"url": "https://www.ozbargain.com.au/node/962947",
"price": "$359.40",
"store": "mi.com",
"title": "Xiaomi Curved Gaming Monitor G34WQi $359.40 Delivered @ Mi Store",
"expiry": "30 Jun 19 days left",
"upvotes": 59,
"category": "Computing",
"downvotes": 0,
"description": "Finally pulled the trigger!"
}
]
},
"status": "success"
}
}About the OzBargain API
What the API Returns
Both endpoints return a count integer and a deals array. Each deal object includes title, url, price, description, store, upvotes, downvotes, expiry, and category. The upvotes and downvotes fields reflect live community voting, giving a real-time signal of deal quality as judged by the OzBargain community.
Endpoints and Parameters
get_computer_deals accepts an optional limit integer and paginates automatically to fulfill it — useful when you need a fixed-size batch of deals from a single category. get_top_deals also accepts a limit parameter and returns deals ranked by upvotes descending, pulling from across all categories on the OzBargain front page. Neither endpoint requires authentication.
Data Shape and Freshness
The expiry field indicates when a deal closes, which lets you filter out stale listings on the client side. The store field names the retailer, enabling per-retailer aggregation. The price field is a string as posted by the deal submitter, so it may include qualifiers like "free" or percentage discounts rather than always being a numeric value. Both endpoints reflect current live data from OzBargain.
The OzBargain API is a managed, monitored endpoint for ozbargain.com.au — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when ozbargain.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 ozbargain.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.
Will this API break when the source site changes?+
Is this an official API from the source site?+
Can I fix or extend this API myself if I need a new endpoint or field?+
What happens if I call an endpoint that has an issue?+
- Build a deal alert system that monitors upvote counts and notifies users when a deal surpasses a threshold
- Aggregate deals by store using the
storefield to compare which retailers post the most active bargains - Filter deals by
expiryto display only deals still active in a browser extension or app - Display a live trending-deals widget sorted by
upvotesusing theget_top_dealsendpoint - Track price patterns across categories by logging the
priceandcategoryfields over time - Build a comparison tool that shows
upvotesvsdownvotesratios to surface genuinely popular deals
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 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.
Does OzBargain have an official developer API?+
What does `get_top_deals` return and how is it sorted?+
get_top_deals returns deals from across all OzBargain categories, sorted by upvotes in descending order. Each result includes upvotes, downvotes, title, price, store, expiry, url, and category. You can control how many results come back using the optional limit parameter.Can I retrieve deals from a specific category other than the default?+
get_computer_deals endpoint is scoped to a single category. If you need deals from a different category — such as groceries, travel, or gaming — you can fork this API on Parse and revise the endpoint to target the category of your choice.Does the API include deal comments, vote history, or user profile data?+
How fresh is the deal data returned by the API?+
expiry field on each deal indicates when the deal is set to close, but deals marked as expired may still appear if they haven't been removed from the source listings. Checking expiry client-side is the reliable way to filter stale results.