Subito.it Scraper
Subito.it is Italy's largest classifieds marketplace, and its listings are Italian prose read one at a time to find a price or spec.
Subito.it is Italy's largest classifieds marketplace, and its listings are Italian prose read one at a time to find a price or spec. Rows return price in euros, condition, a shipping flag, comune, provincia, regione and a business-or-private flag. No seller contact routes collected.
$3.00 / 1,000 · 100.0% success over 26 public runs in the last 30 days.
Run it on Apify → Free to try - runs bill per result on your own account.
What you give it
Every field is optional unless marked; sensible defaults do the rest.
| Field | Type | What it does | Default |
|---|---|---|---|
searchQuery |
string | What to search for on Subito.it, exactly as you would type it in the site's search box, e.g. "bici da corsa" or "iphone 15". Searches all of Italy. Leave it out when you only re-check listings through listingIds. | bici |
listingIds |
array | Re-check listings you already know instead of searching: one listing ID per line (the number before .htm at the end of every Subito address, and the listingId of every dataset item), or the listing's full address. Each one comes back in exactly the shape a search result has - same fields, same values. A listing that is gone from the site (sold, expired, removed) is skipped, named in the log and not billed. When given, the search fields of this form are ignored and the run status says which. Up to 50. |
[] |
priceMinEur |
integer | Only include listings costing at least this many euros. | - |
priceMaxEur |
integer | Only include listings costing at most this many euros. | - |
sortBy |
string | Order of results: date (newest first, best for monitoring) or relevance. | date |
postedAfter |
string | Only include listings posted on or after this date. With newest-first sorting the run stops early once older listings are reached. Format: YYYY-MM-DD (for example 2026-09-08) or a full ISO timestamp such as 2026-09-08T14:30:00Z. Slash dates like 08/09/2026 are refused on purpose: they are read as September in Europe and August in the United States, and this actor will not guess which you meant. |
- |
postedBefore |
string | Only include listings posted on or before this date. Format: YYYY-MM-DD (for example 2026-09-08) or a full ISO timestamp such as 2026-09-08T14:30:00Z. Slash dates like 08/09/2026 are refused on purpose: they are read as September in Europe and August in the United States, and this actor will not guess which you meant. |
- |
maxItems |
integer | Stop after this many listings. Free-plan runs are capped at 5 items. The form starts at 25 for a cheap first run - that is the form's prefill, not a cap on your plan; clear it to use the default of 500. One run cannot return more than about 2,100 items however high you set this: Subito starts repeating results past 60 pages of 35. | 500 |
reportFailures |
boolean | When a run fails, send the developer the actor name and build, an error category, the error message (truncated) and a one-way hash of your input - so a bug can be fixed without anyone asking you to reproduce it. Your input itself, your results and your identity are never sent, and successful runs send nothing at all. Switch this off and the actor behaves exactly the same. | True |
What you get back
One JSON object per result, with exactly these fields - no seller identities, no contact data, ever.
A real result row from a recent run:
{
"category": "Biciclette",
"condition": "Come nuovo - perfetto o ricondizionato",
"currency": "EUR",
"description": "1 anno di vita percorsi meno di 1000 km \nBici immacolata come nuova tenuta da amatore \nVendo per passaggio a bici da corsa\nTaglia M/L\nRitiro...",
"imageUrls": [],
"listingId": "664755042",
"postedAt": "2026-10-16 12:26:54",
"priceEur": 2800,
"province": "Bergamo",
"region": "Lombardia",
"sellerType": "private",
"shippable": true,
"title": "Trek Checkpoint SL 6 AXS Gen 3 2026",
"town": "Credaro",
"url": "https://www.subito.it/biciclette/trek-checkpoint-sl-6-axs-gen-3-2026-bergamo-664755042.htm"
}
| Field | Type | Meaning |
|---|---|---|
listingId |
string | Subito listing ID. |
url |
string | Direct link to the listing. |
title |
string | Listing title as posted. |
description |
string | Listing description as the seller wrote it. |
priceEur |
['integer', 'null'] | Asking price in euros. Null when the listing has no price. |
currency |
string | Always EUR. |
category |
['string', 'null'] | Subito category label, e.g. Biciclette, Elettronica. |
condition |
['string', 'null'] | Item condition as displayed, when reported. |
shippable |
['boolean', 'null'] | Whether the seller offers shipping, when reported. |
town |
['string', 'null'] | Municipality (comune). Locality-level only - no addresses or coordinates. |
province |
['string', 'null'] | Province. |
region |
['string', 'null'] | Italian region, e.g. Marche, Lombardia. |
sellerType |
string | business or private. Seller identity is never collected. |
postedAt |
['string', 'null'] | When the listing was posted, as the site displays it. |
imageUrls |
array | Listing photo base URLs (up to 8). |
Health
100.0% success over 26 public runs in the last 30 days. Live record, failures included: status page.
Full documentation, examples and the AI-assistant prompt live on the store page.