Wallapop & Poshmark Scraper - Secondhand Listings, No Login avatar

Wallapop & Poshmark Scraper - Secondhand Listings, No Login

Pricing

from $0.09 / 1,000 listings

Go to Apify Store
Wallapop & Poshmark Scraper - Secondhand Listings, No Login

Wallapop & Poshmark Scraper - Secondhand Listings, No Login

Scrape Wallapop (Spain, Italy, Portugal) and Poshmark (US, Canada) listings for any search, newest first: price, brand, size, condition, photos, public seller name and Wallapop location. Only-new mode for monitoring. No login.

Pricing

from $0.09 / 1,000 listings

Rating

0.0

(0)

Developer

Cliqto Media

Cliqto Media

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Categories

Share

Wallapop & Poshmark Scraper searches Wallapop (Spain, Italy, Portugal) or Poshmark (US, Canada) for your search words and returns one clean row per listing, newest first: title, price, brand, size, condition, location, photos, publish time and the seller's public name.

Use it to research secondhand prices or to watch new listings without a login, cookies or an API key. The smallest run is one search with 10 listings: it finishes in a few seconds and costs about $0.002.

Wallapop & Poshmark Listings Scraper: search Wallapop in Spain, Italy and Portugal or Poshmark in the US and Canada, get price, condition, location and photos, with an Only-new mode for monitoring

Table of contents

What it does

The Actor runs the same search you would type in the Wallapop or Poshmark search box and saves the results newest first. Each row is one listing. Both marketplaces use the same output fields, so you can put the rows in one table.

  • Wallapop: a whole country (ES, IT or PT), a large city, or a point with a radius. With Add brand, size, condition and seller on (the default), the Actor also reads each listing page and the seller's public name.
  • Poshmark: the US or Canada. Brand, size, condition and seller username come with the search results.

Good fit

  • Price research: collect asking prices for bikes, phones, clothes or furniture in one country or around one city.
  • Monitoring: run on a schedule with Only new since the last run and get only listings published after the previous run.
  • Resale and fashion data: brand, size, condition and original price for Poshmark listings; condition and category for Wallapop.

Not a fit / limits

  • No seller contact fields. The Actor saves only the seller's public name and profile link, not phone numbers, e-mails or full names. The listing description is the seller's own text and can contain whatever the seller wrote there.
  • One marketplace and one search per run. For both marketplaces, start two runs.
  • Up to 1,000 listings per run. Poshmark shows at most about 5,000 results for one search.
  • Wallapop mixes listings from Spain into searches in Italy and Portugal. The Actor drops them, so a search for a whole country (IT, PT) can stop early with few results. Use a city and Radius, km instead.
  • Brand and size exist only in some categories (for example clothes). For other items they are empty.
  • Poshmark does not show the seller's city: location, postalCode, latitude and longitude are empty for Poshmark.

Quick start

  1. Open the Input tab.
  2. Keep the prefilled example: Marketplace wallapop, Search words bicicleta, Max listings 10.
  3. Click Start.
  4. Open the Output tab. The Listings view shows title, price, condition, location and publish time.

Expected result: the 10 newest "bicicleta" listings in Spain, in a few seconds.

Use cases

Buyer jobInputOutputKey fieldsNext step
Compare used pricesquery, location, priceMin / priceMaxlisting rowprice, currency, condition, locationExport CSV or Excel
Watch new listingsonlyNew on a scheduleonly new rowsitemId, createdAt, urlWebhook or integration on run finish
Local dealslocation: "Madrid", radiusKmlisting rowprice, location, latitude, longitudeMap or spreadsheet
Fashion resale researchplatform: "poshmark", querylisting rowbrand, size, price, originalPrice, conditionDataset API

Input

Input fields

FieldPlain nameTypeRequiredDefault / prefillAllowed valuesEffect
platformMarketplacestringnodefault wallapopwallapop, poshmarkWhich marketplace to search
querySearch wordsstringyesprefill bicicletaany textWhat you would type in the search box. Use the local language for Wallapop
locationLocationstringnoWallapop ES, Poshmark USWallapop: ES, IT, PT, a large city or latitude,longitude; Poshmark: US, CAWhere to search
radiusKmRadius, kmintegernoempty = whole country1–1000Wallapop only: search this far around the city or point
priceMinMin pricenumbernoempty0 or moreLowest price in the marketplace currency
priceMaxMax pricenumbernoempty0 or moreHighest price in the marketplace currency
maxItemsMax listingsintegernodefault 50, prefill 101–1000Stop after this many saved listings, newest first
onlyNewOnly new since the last runbooleannofalsetrue / falseSkip listings that an earlier Only-new run of the same search already covered
includeDetailsAdd brand, size, condition and seller (Wallapop)booleannotruetrue / falseWallapop: read each listing page and the seller's public name
proxyConfigurationProxyobjectnono proxyApify Proxy settingsNot needed; use only if your runs get blocked

Large cities for Wallapop location: Madrid, Barcelona, Valencia, Sevilla, Zaragoza, Málaga, Bilbao, Murcia, Palma, Alicante, Valladolid, Vigo, Granada, Las Palmas, Santa Cruz de Tenerife; Roma, Milano, Napoli, Torino, Palermo, Genova, Bologna, Firenze, Bari, Venezia, Verona, Catania; Lisboa, Porto, Braga, Coimbra, Aveiro, Faro, Funchal. For other places, use latitude,longitude, for example "41.65,-0.88".

Prices are in the marketplace currency: EUR on Wallapop, USD (US) or CAD (Canada) on Poshmark. Rows with the same itemId are saved once per run.

Interacting settings

WhenInput AInput BEffective behavior
Search near a placelocation (city or point)radiusKmWallapop searches around the place; results are still newest first, not nearest first. Without radiusKm, a city or point searches the whole country
Poshmarkplatform: "poshmark"location city or radiusKmInvalid input: Poshmark has no city or distance search. Use US or CA
Price filterpriceMinpriceMaxBoth apply; listings without a price are skipped. priceMin must not be higher than priceMax
Narrow filterpriceMin / priceMax or IT / PTmany skipped resultsThe Actor stops early when almost nothing matches, so it does not read hundreds of pages for a few rows. The run summary says so
Fast Wallapop runplatform: "wallapop"includeDetails: falseFaster: listing pages are not read; brand, size, condition and seller fields are empty

Input examples

Newest listings in a country

{
"platform": "wallapop",
"query": "bicicleta",
"maxItems": 10
}

Expected output: 10 newest bike listings in Spain with price, condition, location, images.

Around a city with a price range

{
"platform": "wallapop",
"query": "sofá",
"location": "Barcelona",
"radiusKm": 30,
"priceMax": 300,
"maxItems": 100
}

Expected output: up to 100 sofas within 30 km of Barcelona, 300 EUR or less.

Poshmark monitoring

{
"platform": "poshmark",
"query": "lululemon",
"location": "US",
"maxItems": 200,
"onlyNew": true
}

Expected output: the first run returns the 200 newest listings; each next run returns only listings published since then.

Output

Output fields

FieldMeaningTypeCan be empty?Example
platformMarketplacestringnowallapop, poshmark
marketCountry searchedstringnoES, IT, PT, US, CA
itemIdListing ID on the marketplacestringnonz08qnyl276o
urlListing pagestringnohttps://www.wallapop.com/item/...
titleListing titlestringnoBicicleta Clásica Negra
descriptionSeller's textstringyes
priceAsking pricenumberyes250
currencyPrice currencystringyesEUR, USD, CAD
originalPriceOriginal retail price given by the seller (Poshmark)numberyes58
brandBrandstringyes (category-dependent; Wallapop needs details)lululemon athletica
sizeSizestringyes (category-dependent)8, XL / 46 / 56
conditionCondition in plain EnglishstringyesAs good as new, New with tags
conditionCodeCondition code from the marketplacestringyesas_good_as_new, nwt
categoryCategory pathstringyesBikes > Bikes & tricycles > Commuter bikes
availabilityListing statusstringyesavailable
locationCity and region (Wallapop)stringyes; always empty on PoshmarkLa Albatalia, Región de Murcia
postalCodePostal code (Wallapop)stringyes30009
countryCodeListing countrystringyesES
latitude, longitudeApproximate place (Wallapop)numberyes37.99, -1.16
shippingAvailableSeller ships the itembooleanyesfalse
sellerNameSeller's public name or usernamestringyesPablo
sellerIdSeller IDstringyesvjrdq4g2dw6k
sellerUrlSeller's public profilestringyeshttps://www.wallapop.com/user/...
imagesPhoto linksarraycan be []
createdAtWhen the listing was published (UTC)stringyes2026-10-15T09:09:48.035Z
updatedAtLast change on the marketplace (UTC)stringyes
searchQueryYour search wordsstringnobicicleta
positionPlace in the search resultsintegerno1
detailsFetchedListing page was readbooleannotrue
sourceWhere the row came fromstringnoapi.wallapop.com
fetchedAtWhen the Actor read the listing (UTC)stringno

Output entities and surfaces

SituationWhere to lookWhat you see
Normal runDataset (Listings view)One row per listing
No listings foundDataset is empty; RUN_SUMMARY status NO_RESULTSThe run succeeds; check the search words, place and filters
Only new, nothing newDataset is empty; RUN_SUMMARY status NO_RESULTSMessage "No new listings since the last onlyNew run"
Stopped earlyRUN_SUMMARY status PARTIAL, reason CHARGE_LIMIT, TIME_LIMIT, LOW_YIELD or PAGE_LIMITRows saved before the stop are kept
Marketplace errorRUN_SUMMARY status PARTIAL (reason SOURCE_ERROR) or ERRORThe run fails; saved rows are kept
Wrong inputRUN_SUMMARY status INVALID_INPUTThe run fails at once with a clear message

RUN_SUMMARY in the run's key-value store also has counts: listings saved, pages read, details read, and listings skipped as duplicates, already seen, outside the price range or from another country.

Output example

One Wallapop row from a bicicleta search in Spain (trimmed: 1 of 4 photos and the description):

{
"platform": "wallapop",
"market": "ES",
"itemId": "nz08qnyl276o",
"url": "https://www.wallapop.com/item/bicicleta-clasica-negra-1313302151",
"title": "Bicicleta Clásica Negra",
"description": "Bicicleta de estilo clásico con un diseño atemporal. ...",
"price": 250,
"currency": "EUR",
"originalPrice": null,
"brand": null,
"size": null,
"condition": "Fair condition",
"conditionCode": "fair",
"category": "Bikes > Bikes & tricycles > Commuter bikes",
"availability": "available",
"location": "La Albatalia, Región de Murcia",
"postalCode": "30009",
"countryCode": "ES",
"latitude": 37.996965516947384,
"longitude": -1.1657049559182022,
"shippingAvailable": false,
"sellerName": "Pablo",
"sellerId": "vjrdq4g2dw6k",
"sellerUrl": "https://www.wallapop.com/user/pablo-424599619",
"images": ["https://cdn.wallapop.com/images/10420/lp/wm/__/c10420p1313302151/i6798702660.jpg?pictureSize=W800"],
"createdAt": "2026-10-15T09:09:48.035Z",
"updatedAt": "2026-10-15T09:10:44.801Z",
"searchQuery": "bicicleta",
"position": 300,
"detailsFetched": true,
"source": "api.wallapop.com",
"fetchedAt": "2026-10-15T09:43:09.602Z"
}

null means the marketplace does not show that value for this listing. Here the bike has no brand or size, which is normal outside fashion categories.

Pricing and limits

Pricing unit

You pay per run start and per saved listing:

EventPrice (free plan)
Actor start$0.001 per run
Listing$0.0001 ($0.10 per 1,000)

Higher Apify plans get lower listing prices (down to $0.085 per 1,000). Wallapop details (brand, size, condition, seller) cost nothing extra. Platform usage (compute, storage) is included; you do not pay it separately.

  • A run with no matching listings, an invalid input, or an Only new run with nothing new costs only the start ($0.001).
  • Duplicates, listings already delivered (Only new), and listings dropped by the price or country filter are not charged.
  • Set Max total charge in run options to cap a run. The Actor stops before the cap and keeps what it saved.

Cost examples

ScenarioInputRowsCost on the free plan
Quick test (prefill)bicicleta, 10 listings10$0.002
Small batch100 listings100$0.011
Market snapshot1,000 listings1,000$0.101
Monitor, nothing newOnly new0$0.001

Limits

LimitValue
Listings per run1,000
Speed, Wallapop with details1,000 listings in about 60 seconds (measured)
Speed, Poshmark1,000 listings in about 15 seconds (measured)
Poshmark results per searchabout 5,000 (the marketplace cap)
Memory256 MB is enough for 1,000 listings

API, export and integrations

  • Export: download the dataset as JSON, CSV, Excel, XML or HTML from the Output tab, or with the dataset items API.
  • API: start the Actor with the Apify API or the Apify client for JavaScript or Python; send the same JSON as in the Input examples.
  • Scheduling: create a schedule for a saved task with onlyNew: true. Each run then returns only new listings. The Only-new history is kept in your account in the key-value store secondhand-listings-seen.
  • Webhooks and no-code: start a webhook, Zapier, Make or n8n flow when the run finishes, and read new rows from the dataset.

Use with AI agents (MCP)

  • MCP server with only this Actor: https://mcp.apify.com?tools=cliqtomedia/secondhand-listings-scraper
  • Smallest useful input: {"platform": "wallapop", "query": "bicicleta", "maxItems": 10}
  • Key output fields: title (what is offered), price + currency (asking price), condition (item state), location (city and region, Wallapop only), createdAt (published), url (listing page).
  • Typical run: a few seconds for 10 listings, about $0.002 on the free plan. Up to 1,000 listings per run; one marketplace per run; Poshmark accepts only US or CA as location.

Troubleshooting

The run finished with 0 rows

Symptom: the dataset is empty and RUN_SUMMARY status is NO_RESULTS. Likely reason: no listing matches the search words and filters, or, with Only new, nothing new was published since the last run. Check: run the same search on the marketplace website. Action: use the local language on Wallapop (bicicleta, not bike), remove a price filter or widen the radius.

Fewer rows than Max listings, reason LOW_YIELD

Symptom: RUN_SUMMARY status PARTIAL or NO_RESULTS with reason LOW_YIELD and a warning about filters. Likely reason: the price filter or the country (IT, PT) drops almost every result, so the Actor stopped instead of reading many pages for a few rows. Action: search around a city with radiusKm, widen the price range, or use more specific search words.

The run stopped with INVALID_INPUT

Symptom: the run fails at once with a message about the location or radius. Likely reason: a city that is not in the list, a Poshmark search with a city or radius, or priceMin above priceMax. Action: use latitude,longitude for other places; use US or CA for Poshmark.

Wallapop rows have no brand, size or condition

Symptom: detailsFetched is false. Likely reason: Add brand, size, condition and seller is off, or the listing was sold or removed a moment before its page was read.

FAQ

Do I need a Wallapop or Poshmark account, cookies or a proxy?

No. The Actor reads public search results and listing pages. No login, cookies or proxy are needed.

Does it collect seller phone numbers or e-mails?

No contact fields. It saves only the seller's public name or username and profile link. The description field is the seller's own listing text, so it can include contact details if the seller typed them.

How fresh is the data?

Each row is read during the run; fetchedAt shows when. createdAt is the publish time on the marketplace. Only-new mode compares publish times: a listing that the marketplace shows in search with a long delay after publishing can be missed by the next Only-new run. The first Only-new run of a search sets the starting point: listings older than the oldest one it returned (for example when it stops at maxItems) count as already known and are not returned later.

Can I search Wallapop in Italy or Portugal?

Yes: set location to IT, PT or a city there. Wallapop also returns listings from Spain for these searches; the Actor leaves them out, so check skippedOtherCountry in RUN_SUMMARY. A city with a radius gives the best results.

Is scraping Wallapop and Poshmark allowed?

The Actor reads only public data at a gentle pace and does not collect contacts. The marketplaces' terms of use restrict automated collection; you are responsible for using the data in line with those terms and the laws that apply to you, including privacy laws.

Support

For a bug, a question or a feature request, open an issue in the Issues tab of this Actor. Include the run ID and the input you used. Do not post API tokens or other private data.