Tweakers APItweakers.net ↗
Access Tweakers.net product listings, price comparisons, webshop data, news articles, and search results via a structured JSON API. 6 endpoints.
What is the Tweakers API?
The Tweakers.net API exposes 6 endpoints covering product price comparisons, laptop listings with GPU filtering, webshop directories, and news articles from the leading Dutch tech and price-comparison platform. The get_laptop_product_detail endpoint, for example, returns per-shop prices, delivery info, and key specifications like GPU, screen size, and RAM for any tracked product ID. Whether you need live price data across Dutch webshops or dated news archives, each endpoint returns clean structured JSON.
curl -X GET 'https://api.parse.bot/scraper/6a8c712c-53b9-4c5f-b9c1-917f775abfeb/get_laptops_with_nvidia_gpu?page=1&gpu_id=26676' \ -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 tweakers-net-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.
"""Tweakers.net: browse GPU laptops, compare prices, and search tech content."""
from parse_apis.tweakers_net_api import Tweakers, ResultCategory, ProductNotFound
client = Tweakers()
# List GPU-filtered laptops from Pricewatch, capped at 3 items.
for laptop in client.productsummaries.list(gpu_id="26676", limit=3):
print(laptop.name, laptop.price)
# Drill into one product's full detail via the summary→detail navigation.
summary = client.productsummaries.list(gpu_id="26676", limit=1).first()
if summary:
detail = summary.details()
print(detail.title, detail.key_specs)
for shop_price in detail.prices[:3]:
print(shop_price.shop, shop_price.price, shop_price.delivery)
# Search for content and inspect the category enum.
for result in client.searchresults.search(query="laptop", limit=5):
print(result.name, result.category)
# Typed error handling: fetch a product that may not exist.
try:
product = client.products.get(product_id="9999999")
print(product.title)
except ProductNotFound as exc:
print(f"Product not found: {exc.product_id}")
# Today's news articles.
for article in client.articles.list(limit=3):
print(article.title, article.author, article.replies)
print("exercised: productsummaries.list / details / products.get / searchresults.search / articles.list")Get products filtered by GPU from Tweakers Pricewatch. Returns product names, specs, prices, and product IDs. Paginated by page number; each page returns up to ~25 products. The gpu_id parameter filters by a specific GPU chip in the Tweakers facet system.
| Param | Type | Description |
|---|---|---|
| page | integer | Pagination page number. |
| gpu_id | string | GPU filter ID used in the Tweakers Pricewatch facet system (numeric string). Default 26676 (GeForce RTX 4060). |
{
"type": "object",
"fields": {
"url": "string, the constructed filter URL",
"items": "array of laptop product summaries with product_id, name, url, specs, price"
},
"sample": {
"data": {
"url": "https://tweakers.net/laptops/vergelijken/?f3433=26676&pi=1&layoutMode=editions",
"items": [
{
"url": "https://tweakers.net/pricewatch/2232478/acer-nitro-v-16-ai-anv16-42-r6hw.html",
"name": "Acer Nitro V 16 AI ANV16-42-R6HW",
"price": "vanaf € 977,25 bij 15 winkels",
"specs": "16\" • 1920x1200 • 512GB • AMD Ryzen 7",
"product_id": "2232478"
}
]
},
"status": "success"
}
}About the Tweakers API
Product & Price Data
The get_laptops_with_nvidia_gpu endpoint queries the Tweakers Pricewatch catalogue filtered by a numeric gpu_id facet, returning an array of laptop objects — each with product_id, name, url, specs, and price. Pagination is supported via the page parameter. For a specific product, get_laptop_product_detail accepts a product_id (and optional product_slug) and returns the product title, a prices array with one entry per webshop showing shop, price, and delivery, and a key_specs object with labelled values (e.g. Videochip, Schermdiagonaal, Werkgeheugen).
Webshops & Search
get_webshops returns the full list of retailers tracked by Pricewatch, including each shop's name and product_count — useful for knowing coverage breadth before querying prices. search_products accepts a free-text query and returns matching results, each carrying name, url, and a category label (Artikel or Product), so you can distinguish editorial content from catalogue entries in one call.
News & Editorial Content
get_top_stories pulls the current 10 featured stories from the Tweakers homepage, returning title, url, and replies count per story. get_news_articles accepts an optional date parameter in YYYYMMDD format (defaulting to the current UTC date) and returns a dated list of articles with title, url, time (author name), and replies count. This makes it straightforward to reconstruct a daily publication index for any past date.
The Tweakers API is a managed, monitored endpoint for tweakers.net — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when tweakers.net 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 tweakers.net 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?+
- Track price fluctuations across Dutch webshops for a specific laptop using
get_laptop_product_detailand the per-shoppriceanddeliveryfields. - Build a GPU-filtered laptop comparison tool by querying
get_laptops_with_nvidia_gpuwith differentgpu_idvalues and paginating through results. - Monitor daily Dutch tech news coverage by fetching
get_news_articlesfor specific dates and indexing the returnedtitleandurlfields. - Audit webshop coverage in Pricewatch by pulling
get_webshopsand sorting retailers byproduct_count. - Surface trending tech topics by aggregating
repliescounts fromget_top_storiesandget_news_articles. - Power a product search widget by calling
search_productsand filtering results bycategoryto separate articles from product listings.
| 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 Tweakers.net have an official developer API?+
What does `get_laptop_product_detail` return and how specific is the pricing data?+
prices array where each entry names the shop, states the price, and includes a delivery note. It also returns a key_specs object with labelled hardware attributes — field names appear in Dutch, e.g. Videochip for GPU and Werkgeheugen for RAM. You need to supply the numeric product_id; the product_slug is optional and used only for URL construction.Is the GPU filter in `get_laptops_with_nvidia_gpu` limited to Nvidia GPUs?+
gpu_id parameter, which accepts any numeric facet ID used in Tweakers Pricewatch. The response covers whichever GPU family corresponds to the supplied ID. The current API does not enumerate available GPU facet IDs. You can fork the API on Parse and add an endpoint that lists available facet values.Does the API cover user reviews, forum posts, or product ratings?+
How far back does `get_news_articles` go, and how fresh is the data?+
YYYYMMDD format, so you can query historical publication dates. However, availability of older dates depends on what Tweakers.net retains in its archive structure. The endpoint defaults to the current UTC date when no date is supplied, so same-day articles should be accessible as they are published.