Catawiki Scraper & Auction Price Monitor avatar

Catawiki Scraper & Auction Price Monitor

Pricing

from $2.50 / 1,000 lot observations

Go to Apify Store
Catawiki Scraper & Auction Price Monitor

Catawiki Scraper & Auction Price Monitor

Monitor Catawiki auction bids, sold lots and price changes. Export structured lot details; pay for new or changed observations, with unchanged lots free in monitor mode. Public pages, no login or bidding.

Pricing

from $2.50 / 1,000 lot observations

Rating

0.0

(0)

Developer

Tom J

Tom J

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Categories

Share

Track Catawiki auction prices, current bids and sold lots without checking every object by hand. This Catawiki scraper accepts keywords, category pages, auction URLs and individual lot links. Export structured observations to CSV, Excel or JSON, or keep a watch running: new lots and actual changes are delivered, while unchanged observations are free of result charges in monitor mode.

Built for collectors, dealers and auction researchers who need to distinguish a live bid from a confirmed final bid. It reads public pages without a Catawiki account and never bids or buys.

Start with a small watch

{
"searchQueries": ["rolex"],
"mode": "monitor",
"stateName": "my-rolex-watch",
"maxItems": 20,
"maxPages": 2,
"maxKnownChecks": 10
}

Run again with the same stateName and locale to compare observations. Use a separate state name for each watchlist or customer. The default limits favour small, predictable runs. Set a maximum run cost in Apify as an additional guardrail.

For a known object, including a recently closed auction lot:

{
"startUrls": [{"url": "https://www.catawiki.com/en/l/107740761"}],
"mode": "snapshot",
"maxItems": 1
}

Example URLs can disappear or change status. Snapshot mode returns and charges each successful lot observation, including on repeated runs.

What a price means

FieldMeaning
currentBidDisplayed bid for an open lot; null after closure
lastBidThe displayed bid amount at observation time, including closed lots
finalBidSet only when the public bidding data explicitly says closed and sold
statusopen, sold, or closed_unsold
currencyCurrency reported by the public page; no exchange-rate conversion
reservePriceSet, reservePriceMetPublished indicators when available; never the hidden reserve amount
estimateLow, estimateHighPublished expert estimate in the reported currency, or null
nextMinimumBidNext allowed bid shown for an open lot, when available

A bid is not the total purchase cost. Buyer Protection fees, shipping and taxes are excluded. An estimate is not a valuation guarantee. A sold label records the site's auction outcome; it does not prove payment, delivery or the absence of a later cancellation. Closed but unsold objects never receive a fabricated final price.

Direct lot pages may omit the separate reserve-set indicator even when the catalogue exposes it. Missing data stays null. Some currency-specific estimates are not published. The source decides which currency it shows; this Actor does not promise EUR, GBP or USD conversion.

Monitoring and price changes

The first successful observation of a lot produces a lot row. Subsequent runs produce a change row when supported fields change: bid, currency, closed/sold status, end time, reserve status, estimate, title, subtitle or specifications. changeFields, previousValues and observation timestamps show what changed. One changed observation receives one change event even if several fields changed.

Known open lots that have disappeared from current search pages can be revisited through their saved public lot URLs, up to maxKnownChecks and the overall maxItems limit. This helps capture closure. If search results fill the overall limit, there may be no room for those revisits; uncheckedKnownLots makes this visible. Narrow your search or increase the limits for a focused watch.

Disappearance, a 404 or a blocked page is not treated as a sale. Closed lots are not automatically revisited once absent from the supplied sources. Include their URLs explicitly to check later corrections. Monitoring records changes between observations, not every intermediate bid.

State is limited to 1,000 known lots per watch. It retains identifiers, public URLs, comparison fields and timestamps—not seller or bidder profiles. Changing queries while retaining a state name retains its existing tracked lots; use a fresh state name for a different watch. Concurrent runs of the same watch are guarded by a best-effort lease; schedule them sequentially. If delivery is interrupted mid-checkpoint, the run stops on restart instead of replaying a potentially billed row. Exactly-once delivery across external failures is not guaranteed.

Inputs and limits

InputDefaultMeaning
searchQueriesRolex if no targets suppliedUp to 20 keywords and URLs combined
startUrlsEmptyPublic /s, /c, /a or /l Catawiki URLs
localeenGenerated query language: en, nl, fr, de, es, it or pt; pasted URLs retain theirs
modemonitorDeliver new/changed observations; snapshot delivers every successful observation
stateNamecatawiki-watchReuse for the same watch; letters, digits, hyphens and underscores
maxItems20Maximum unique lots inspected across the run, including failed and known lots; 1–200
maxPages2Catalogue pages per target; 1–10
maxKnownChecks20Additional known-open-lot checks within the overall item limit; 0–100
maxRequests100Public HTTP request cap, including redirects and recovery; 1–500
maxRunSeconds150Working time limit; 30–240 seconds, with brief cleanup afterwards
connectionautoDirect first, at most one datacenter recovery; direct and datacenter are explicit alternatives

Targets are processed in the supplied order. A broad first query can consume the item limit before later targets are inspected. Copy public filtered URLs from Catawiki; supported query keys are q, page, filters and sort. Filtering and ordering remain source-defined. Unsupported URLs and parameters are rejected instead of silently changing their meaning.

Output and coverage

Each row includes the lot ID and link, title/subtitle, price/status fields, auction/category IDs, public specifications, available images, timestamps and change metadata. Detailed lot observations are included in the result price; there is no separate detail surcharge.

OUTPUT reports lotsChecked, lotsDelivered, changesDelivered, unchangedLots, failedLots, sources, partial, stopped, warnings, uncheckedKnownLots, requests, connectionAttempts, recoveryEvents and chargedEvents.

Do not rely only on a green run status. A run can contain useful data and still be partial due to item, page, time, state or request limits. Source complete describes the supplied catalogue coverage; lot-detail failures are separately counted in failedLots and warnings. A structured no-match search is different from a blocked or unrecognized page. Catawiki sometimes fills an empty search with recommendations; those are dropped and counted in fallbackLotsDropped.

This is a bounded watch, not a full historical sales database. Catawiki does not provide a complete searchable archive of sold lots through these pages. Use known lot/auction links while they remain publicly available, and schedule observations near closure. Very old or removed objects can return not found. Search rankings, catalogue counts and live bids may change during a run.

Pricing

EventPriceWhen charged
lot$0.0025A delivered new lot in monitor mode, or a delivered snapshot
change$0.0015A delivered changed observation of a known lot
apify-actor-start$0.00005 per allocated GB, minimum oneStandard start, including failed runs

At the default memory, examples are:

  • 20 new lots: $0.05005.
  • 1,000 delivered new lots across five 200-lot runs: $2.50025.
  • A later run with 10 changed observations: $0.01505.
  • An entirely unchanged monitor run: the standard $0.00005 start event only, with no result events.

Duplicates, failed lot lookups, dropped fallback recommendations and unchanged monitor observations receive no result charge. There is no automatic dataset-item event. A changed row receives only the change event, not a lot event as well. Check the live Pricing tab before running. When testing your own Actor, Apify's platform-cost cap can stop a run even when no result events are being charged.

Scheduling and integrations

Create an Apify Task with your watch input, then schedule it at a suitable interval. Keep the same state name and avoid overlapping runs. Export the dataset or connect it to Google Sheets, Make, Zapier or n8n. Use OUTPUT to route partial or failed checks for review.

Via API, send the same input to:

POST https://api.apify.com/v2/acts/olliolli~catawiki-prices/runs
Authorization: Bearer YOUR_APIFY_TOKEN
Content-Type: application/json

Read the returned run's dataset and OUTPUT after completion. Keep your Apify token secret.

FAQ

Can I find underpriced objects? The Actor provides observations and available estimates for your own analysis. It does not establish authenticity, fair value, profitability or a guaranteed bargain.

Why is there no row on a repeat run? In monitor mode this can be expected for unchanged lots. Confirm unchangedLots, coverage and warnings before concluding nothing changed.

Does it collect sellers or bidders? It excludes dedicated seller, expert and bidder profile fields, contact fields and bid histories. Item titles/specifications may still name artists or contain identifying object information; this is not a guarantee of anonymization.

Does it log in, bid or solve a CAPTCHA? No. It uses anonymous public requests with browser-compatible transport. Lots whose public data flags an age check are excluded (including some alcohol lots). It stops on recognized login/challenge pages and does not endlessly rotate IPs. Availability can change.

Why did a result change since my last visit? Bids are live. Compare the observation timestamp and currency. Results describe what the public page returned at that time.

Independent product; not affiliated with or endorsed by Catawiki. See Catawiki's reserve-price explanation and Buyer Protection fee explanation for the distinction between a bid, a sale and checkout costs.