wallapop-cli
Command reference

watch

Track searches, items and sellers and get events when they change

wallapop watch

Track searches, items and sellers and get events when they change

Track searches, items and sellers and get events when they change.

A watch is local. "check" runs every due watch once, prints new events and delivers them to the watch's sinks; "run" loops in the foreground; "service" installs a systemd timer or launchd agent that runs "check" on a schedule.

wallapop watch add search "thinkpad x1" --max-price 400 --name x1 --notify phone
wallapop watch add item https://es.wallapop.com/item/... --name that-bike
wallapop watch add seller p8j35kmwr7z9 --name good-seller
wallapop watch add search patinete --max-price 100 --name pat --emit-initial   # seed a feed
wallapop watch check --all --format jsonl | jq -r 'select(.type=="item.new") | .item.url'
wallapop watch run --interval 2m
wallapop watch service install --interval 10m

wallapop watch add

Create a watch

wallapop watch add item

Watch one item for price, reserved, sold, removed

wallapop watch add item ITEM [flags]
FlagTypeDefaultDescription
--emit-initialboolfalsereport everything that exists now as events instead of baselining silently
--intervalduration0show often this watch is due (default from config, 5m; floor 30s)
--namestring-watch name (required, used in events and commands)
--notifystringSlice[]sink names from config, repeatable

Watch a search for new items and price changes

wallapop watch add search [keywords...] [flags]

Watch a search for new items and price changes.

Give keywords and search flags, or --from-alert ID to copy the query of one of the account's saved searches (see wallapop alert list). The two are exclusive: the saved query is replayed as Wallapop stored it.

FlagTypeDefaultDescription
--categoryint0category id (see wallapop category list)
--conditionstringSlice[]item condition, repeatable: new, as_good_as_new, good, fair, has_given_it_all
--distanceint0radius in km
--emit-initialboolfalsereport everything that exists now as events instead of baselining silently
--filterstringToString[]category-specific filter key=value, repeatable (see wallapop search filters)
--from-alertstring-copy the query of this saved search (see wallapop alert list)
--intervalduration0show often this watch is due (default from config, 5m; floor 30s)
--latfloat640latitude of the search centre (default: profile location)
--lngfloat640longitude of the search centre
--max-priceint-1maximum price
--min-priceint-1minimum price
--namestring-watch name (required, used in events and commands)
--notifystringSlice[]sink names from config, repeatable
--pagesint1result pages to diff per check
--shippingboolfalseonly items that can be shipped
--sincestring-listing age: today, week, month
--sortstring-order: relevance, newest, price_asc, price_desc

wallapop watch add seller

Watch a seller for new and removed items

wallapop watch add seller USER [flags]
FlagTypeDefaultDescription
--emit-initialboolfalsereport everything that exists now as events instead of baselining silently
--intervalduration0show often this watch is due (default from config, 5m; floor 30s)
--namestring-watch name (required, used in events and commands)
--notifystringSlice[]sink names from config, repeatable

wallapop watch check

Run due watches once and print their events

wallapop watch check [NAME...] [flags]

Run watches once. With names, those watches run regardless of schedule. Without names, watches whose interval has elapsed run; --all forces every watch. Prints the events produced (none is fine: exit 0) and delivers them to sinks.

FlagTypeDefaultDescription
--allboolfalserun every watch of the profile, due or not

wallapop watch events

Show stored events, newest first

wallapop watch events [NAME] [flags]
FlagTypeDefaultDescription
--limitint100maximum events
--sinceduration0sonly events newer than this (e.g. 24h)

wallapop watch list

List watches for the active profile

wallapop watch list [flags]
FlagTypeDefaultDescription
--all-profilesboolfalseinclude every profile's watches

wallapop watch remove

Delete a watch and its history

wallapop watch remove NAME [flags]
FlagTypeDefaultDescription
--yesboolfalsedo not prompt

wallapop watch run

Check due watches in a loop until Ctrl-C

wallapop watch run [flags]

Foreground loop. Every tick runs the due watches and prints events as they happen (use --format jsonl to stream). The tick defaults to the shortest watch interval, floored at 30s, with up to 10% jitter.

FlagTypeDefaultDescription
--intervalduration0stick length (default: shortest watch interval)

wallapop watch service

Run checks on a schedule via systemd (Linux) or launchd (macOS)

wallapop watch service install

Install a user-level timer that runs watch check --all

wallapop watch service install [flags]
FlagTypeDefaultDescription
--intervalduration0stimer period (default from config, 5m)

wallapop watch service status

Show the timer's state and last run

wallapop watch service status

wallapop watch service uninstall

Remove the timer and its log

wallapop watch service uninstall

On this page