« All posts

Building a Deal Finder Bot from Catawiki's Expert Estimate Data

Catawiki quietly embeds expert price estimates in its NEXT_DATA JSON on every lot page. Here's how that discovery became a live deal-finding Apify Actor for auction bidders.

Every lot on Catawiki carries an expert-assigned estimate range, and this project shows that the number is sitting right there in the page's __NEXT_DATA__ JSON block—no hidden API or scraping tricks required. Because Catawiki is a Next.js app, the search page exposes lot IDs and titles while the individual lot page reveals everything that matters: current bid, expert estimate, reserve status, and closing time.

The original goal was to build price history from completed auctions, but Catawiki's public search only surfaces live lots with no historical archive available. That constraint reshaped the project from 'price history' into a live deal finder: scan open lots and calculate how far the current bid trails the expert estimate. Freshly opened auctions naturally show huge gaps since starting bids are often just one euro, so the tool uses time-to-close as its key filter to separate genuine signals from meaningless noise.

The result shipped as an Apify Actor, accessible both via direct API calls and through an MCP interface for AI agents to query. The broader engineering takeaway: Next.js sites often expose exactly the structured state you need inside __NEXT_DATA__, but it's essential to verify what the public surface actually offers before committing to a product idea—since the original archive plan didn't exist, yet the expert estimate data turned out to be an even better foundation.

» SourceDev.to