# API scraper Subito.it — $0.001 per annuncio

> API scraper Subito.it: Annunci di Subito.it — motori per km, anno e carburante, immobili. $0.001 per annuncio consegnato: se non arriva nulla, non paghi nulla.

[Home EN](https://quanticdata.io/)/[Collector EN](https://quanticdata.io/collectors/)/*API scraper Subito.it*

# API scraper Subito.it

Un’API per fare scraping di Subito.it, il più grande sito di annunci in Italia: una riga per annuncio con descrizione completa, prezzo, categoria, condizione, geo fino al comune, tipo di venditore e spedizione — più chilometraggio esatto, anno, carburante e cambio sui motori, metri quadri e locali sugli immobili. Filtra su tutto, in ognuna delle 44 categorie e 20 regioni, e paga solo gli annunci consegnati.

[Ottieni la chiave API gratis](https://app.quanticdata.io/register?utm_source=collector-page&amp;utm_medium=website&amp;utm_campaign=data-api&amp;utm_content=it-subito-scraper-api-hero&amp;lng=it) [Vedi la richiesta](/collectors/subito-scraper-api/#integration)

$0.001 per annuncio consegnato · $2 gratis ogni mese · Le run fallite non si pagano

[This page in English](https://quanticdata.it/collectors/subito-scraper-api/)

POST /v1/scraper/collectors/subito_search/run

```
$ curl $QD/subito_search/run \
    -H "Authorization: Bearer $QD_API_KEY" \
    -d '{"query": "iphone 15", "title_only": true, "max_results": 30}'
{ "status": "done", "count": 30,
  "results": [
    {
      "ad_id": "…",
      "title": "…",
      "url": "…",
      "price": "…" } ],
  "cost": 0.03 }
# 30 annunci × $0.001 · non consegnato, non pagato
```

**$0.001 / annuncio**2.000 annunci con i $2 gratis di ogni mese

**Input semantico**query, category, region — niente liste di URL

**Fino a 150**annunci per run, paginazione inclusa

**Niente browser**letto via HTTP/TLS — più economico e più veloce del rendering

In questa pagina: [Provalo](/collectors/subito-scraper-api/#try) [Cos’è](/collectors/subito-scraper-api/#what) [Limiti](/collectors/subito-scraper-api/#caps) [Campi di output](/collectors/subito-scraper-api/#output) [Input](/collectors/subito-scraper-api/#input) [Prezzi](/collectors/subito-scraper-api/#pricing) [Integrazione](/collectors/subito-scraper-api/#integration) [Casi d’uso](/collectors/subito-scraper-api/#use-cases) [Contro le alternative](/collectors/subito-scraper-api/#compare) [FAQ](/collectors/subito-scraper-api/#faq)

Provalo

## Annunci Subito.it, in esecuzione adesso

Cambia l’input e lancialo sul collector vero — niente da installare, nessuna registrazione.

Lancialo dal tuo codice, sui tuoi input

Stesso collector, stesse righe — $2 di credito API gratis ogni mese, senza carta.

[Ottieni la chiave API gratis](https://app.quanticdata.io/register?utm_source=collector-page&amp;utm_medium=website&amp;utm_campaign=data-api&amp;utm_content=it-subito-scraper-api-closing&amp;lng=it)

## Cosa fa l’API scraper per Subito.it

Subito serve ogni ricerca come payload di idratazione dietro la pagina, ed è quello che legge questo collector — non le card visibili, costruite con classi CSS generate e che mostrano strettamente meno: la descrizione è troncata, i chilometri sono una fascia ("70.000 - 74.999"), il comune e l’id del venditore non compaiono proprio. Dal payload la riga porta il testo intero dell’annuncio, il contachilometri al chilometro, tutte le foto e la data di pubblicazione in ISO 8601 con l’offset Europe/Rome davvero in vigore.

I filtri sono la parte che uno scraper fatto in casa sbaglia senza accorgersene. Subito onora prezzo, tipo di venditore, km, anno e superficie solo dentro alcune categorie e altrove li ignora in silenzio — *veicoli commerciali* non ha né il filtro km né quello anno, e sulla ricerca in tutte le categorie non ne vale nessuno. Questo collector li manda comunque e poi **ricontrolla ognuno sulle righe consegnate**: un intervallo vale quello che dice, in qualunque categoria. Segue anche una stranezza di Subito sulle parole marca/modello: "golf" o "panda" reindirizzano a un listing canonico che perde ordinamento, filtri e numero di pagina, e la run legge da quel listing invece di consegnare una prima pagina disordinata e fermarsi lì.

L’input è un significato, non un URL *query* *category* *region* *city* *town*

## Limiti, in numeri

Tutto ciò che delimita una run di questo collector. Nessun limite nascosto.

Massimo per run

150 annunci

Prezzo

$0.001 / annuncio

Ogni 1.000

$1.00

Run fallite

Gratis zero righe, zero addebito

Gratis ogni mese

$2 senza carta

Rate limit

60 req/min sul piano gratuito

## Com’è fatto un annuncio

Ogni annuncio consegnato porta questi campi. Nullable vuol dire che la fonte non lo pubblica: il campo resta vuoto invece di essere inventato.

| Campo | Tipo | Cosa contiene |
| --- | --- | --- |
| `rank` | integer | Posizione nei risultati consegnati, a partire da 1. |
| `page` | integer | Pagina dei risultati da cui viene l’annuncio. |
| `ad_id` | string | Id dell’annuncio su Subito (il numero alla fine dell’URL). |
| `title` | string | Titolo dell’annuncio. |
| `url` | string · nullable | URL dell’annuncio. |
| `price` | string · nullable | Prezzo come appare ("450 €"). Vuoto per gli annunci in regalo e per i «cerco». |
| `price_value` | number · nullable | Prezzo in euro, come numero. |
| `category` | string · nullable | Categoria in cui è pubblicato l’annuncio ("Telefonia"). |
| `category_slug` | string · nullable | Slug della categoria ("telefonia"). |
| `condition` | string · nullable | Condizione dichiarata dell’oggetto ("Come nuovo - perfetto o ricondizionato"). |
| `km` | integer · nullable | Motori. Chilometraggio esatto: la scheda di Subito mostra solo la fascia ("70.000 - 74.999"). |
| `year` | integer · nullable | Motori. Anno di immatricolazione. |
| `fuel` | string · nullable | Motori. Alimentazione come chiave stabile ("diesel", "plugin_hybrid_petrol"), uguale ai valori del filtro in ingresso; l’etichetta italiana sta in features. |
| `gearbox` | string · nullable | Motori. "manual", "automatic" o "sequential". |
| `vehicle_condition` | string · nullable | Motori. "used", "km0" o "new". |
| `size_sqm` | integer · nullable | Immobili. Superficie in metri quadri. |
| `rooms` | integer · nullable | Immobili. Numero di locali. |
| `date` | string · nullable | Data e ora di pubblicazione in ISO 8601 con il fuso Europe/Rome in vigore ("2026-09-03T00:56:18+02:00"; +01:00 d’inverno). |
| `region` | string · nullable | Regione ("Emilia-Romagna"). |
| `city` | string · nullable | Provincia ("Parma"). |
| `town` | string · nullable | Comune ("Parma"). |
| `seller_type` | string | "private" (privato) o "company" (azienda). |
| `seller_name` | string · nullable | Nome del negozio o dell’inserzionista, quando è indicato. |
| `seller_id` | string · nullable | Id utente Subito del venditore. |
| `shippable` | boolean | Il venditore offre la spedizione. |
| `shipping_cost` | number · nullable | Costo della spedizione in euro, quando è indicato. |
| `promoted` | boolean | Visibilità a pagamento (annuncio in vetrina). |
| `urgent` | boolean | Segnato come urgente dal venditore. |
| `description` | string · nullable | Testo completo dell’annuncio (primi 600 caratteri), non l’estratto tagliato della scheda. |
| `thumbnail` | string · nullable | Prima foto. |
| `images` | string[] | Tutte le foto, nell’ordine dell’annuncio. |
| `features` | object | Ogni altra caratteristica indicata nell’annuncio, come etichetta → valore ("Km": "142.000", "Superficie": "85 mq"). Le chiavi dipendono dalla categoria. |

## Input

La richiesta completa. Tutto ciò che ometti prende il default indicato nel catalogo.

| Input | Tipo | Obbligatorio | Cosa fa |
| --- | --- | --- | --- |
| `query` | string | no | Cosa cercare, per esempio "iphone 15". Facoltativo quando è indicata una categoria: senza testo si scorre la categoria con i soli filtri, come si fa di solito per motori e immobili. |
| `category` | string | no | Categoria di Subito in cui cercare. "all" cerca in tutte le categorie (e spegne i filtri di prezzo e venditore di Subito: questo collector li riapplica). Uno tra: `all`, `motori`, `auto`, `accessori-auto`, `moto-e-scooter`, `accessori-moto`, `nautica`, `caravan-e-camper`, `veicoli-commerciali`, `immobili`, `appartamenti`, `camere-posti-letto`, `ville-singole-e-a-schiera`, `terreni-e-rustici`, `garage-e-box`, `loft-mansarde`, `case-vacanza`, `uffici-locali-commerciali`, `lavoro`, `offerte-lavoro`, `servizi`, `cerco-lavoro`, `attrezzature`, `elettronica`, `informatica`, `videogiochi`, `audio-video`, `fotografia`, `telefonia`, `casa-e-persona`, `arredamento-casalinghi`, `elettrodomestici`, `giardino-fai-da-te`, `abbigliamento-accessori`, `bambini-giocattoli`, `sport-hobby`, `animali`, `accessori-per-animali`, `musica-film`, `libri-riviste`, `strumenti-musicali`, `sport`, `biciclette`, `hobby-collezionismo`, `vari`, `annunci-vari`. |
| `region` | string | no | Regione in cui cercare. "italia" cerca in tutto il Paese. Uno tra: `italia`, `abruzzo`, `basilicata`, `calabria`, `campania`, `emilia-romagna`, `friuli-venezia-giulia`, `lazio`, `liguria`, `lombardia`, `marche`, `molise`, `piemonte`, `puglia`, `sardegna`, `sicilia`, `toscana`, `trentino-alto-adige`, `umbria`, `valle-d-aosta`, `veneto`. |
| `city` | string | no | Provincia facoltativa dentro la regione, come appare in un URL di Subito ("roma", "milano", "reggio-emilia"). Richiede `region`. |
| `town` | string | no | Comune facoltativo dentro la provincia, come appare in un URL di Subito ("ladispoli", "sesto-san-giovanni"). Richiede `city`. È il livello che serve di solito per gli immobili. |
| `ad_type` | string | no | Tipo di annuncio: in vendita, in regalo o «cerco». Uno tra: `sale`, `free`, `wanted`. |
| `sort` | string | no | Ordine dei risultati. Uno tra: `recent`, `relevance`, `price_asc`, `price_desc`. |
| `title_only` | boolean | no | Cerca il testo solo nei titoli. Di default Subito cerca anche nella descrizione, e arrivano annunci poco pertinenti. |
| `shippable_only` | boolean | no | Solo annunci con spedizione. |
| `min_price` | integer | no | Prezzo minimo in euro. Se lo imposti, gli annunci senza prezzo restano fuori. |
| `max_price` | integer | no | Prezzo massimo in euro. Se lo imposti, gli annunci senza prezzo restano fuori. |
| `seller_type` | string | no | Venditori privati, rivenditori verificati o entrambi. Uno tra: `any`, `private`, `company`. |
| `min_km` | integer | no | Motori. Chilometraggio minimo. Applicato agli annunci anche nelle categorie in cui Subito non ha il filtro dei chilometri (veicoli commerciali, caravan). |
| `max_km` | integer | no | Motori. Chilometraggio massimo. |
| `min_year` | integer | no | Motori. Anno di immatricolazione minimo. |
| `max_year` | integer | no | Motori. Anno di immatricolazione massimo. |
| `fuel` | string | no | Motori. Subito distingue gli ibridi per tipo: "hybrid" è un valore a sé e non comprende mild, full e plug-in. Uno tra: `petrol`, `diesel`, `lpg`, `electric`, `cng`, `hybrid`, `mild_hybrid_petrol`, `mild_hybrid_diesel`, `full_hybrid_petrol`, `full_hybrid_diesel`, `plugin_hybrid_petrol`, `plugin_hybrid_diesel`. |
| `gearbox` | string | no | Motori. Tipo di cambio. Uno tra: `manual`, `automatic`, `sequential`. |
| `vehicle_condition` | string | no | Motori. Usato, km 0 o nuovo. Uno tra: `used`, `km0`, `new`. |
| `min_size` | integer | no | Immobili. Superficie minima in metri quadri. |
| `max_size` | integer | no | Immobili. Superficie massima in metri quadri. |
| `min_rooms` | integer | no | Immobili. Numero minimo di locali. |
| `max_rooms` | integer | no | Immobili. Numero massimo di locali (il filtro di Subito si ferma a "più di 10"). |
| `max_results` | integer | no | Quanti annunci consegnare al massimo (1–150). Paghi solo quelli consegnati. |

Prezzi

## Quanto costa l’API scraper per Subito.it

$0.001 per annuncio consegnato. Una run che non consegna nulla non costa nulla: pagine bloccate, challenge e retry sono a carico nostro, e i $2 gratuiti di ogni mese coprono circa 2.000 annunci prima che tu spenda un centesimo.

**$0.001**per annuncio consegnato*$1 ogni 1.000 annunci consegnati*

**2.000 annunci**col credito gratuito*$2 ogni mese, senza carta*

**Zero righe**zero addebito*blocchi, captcha e retry sono a carico nostro*

**−30%**sui piani a volume*il catalogo restituisce il prezzo della tua chiave*

[Pay as you go $0 /mese $2 di credito gratis / mese 60 richieste / min Prezzi di listino](https://app.quanticdata.io/register?utm_source=collector-page&amp;utm_medium=website&amp;utm_campaign=data-api&amp;utm_content=it-subito-scraper-api-tier-1&amp;lng=it) [Starter $19 /mese $15 di credito gratis / mese 300 richieste / min −10% sui prezzi unitari](https://app.quanticdata.io/register?utm_source=collector-page&amp;utm_medium=website&amp;utm_campaign=data-api&amp;utm_content=it-subito-scraper-api-tier-2&amp;lng=it) [Il più scelto Growth $79 /mese $50 di credito gratis / mese 600 richieste / min −20% sui prezzi unitari](https://app.quanticdata.io/register?utm_source=collector-page&amp;utm_medium=website&amp;utm_campaign=data-api&amp;utm_content=it-subito-scraper-api-tier-3&amp;lng=it) [Scale $299 /mese $250 di credito gratis / mese 1.200 richieste / min −30% sui prezzi unitari](https://app.quanticdata.io/register?utm_source=collector-page&amp;utm_medium=website&amp;utm_campaign=data-api&amp;utm_content=it-subito-scraper-api-tier-4&amp;lng=it)

Stesso portafoglio, stessa chiave e stessi $2 mensili di ogni altra [Data API EN](https://quanticdata.io/web-data-api-for-ai/). Sono prezzi di lancio letti dal vivo dalla configurazione di billing — `GET /v1/scraper/collectors` restituisce il prezzo che la tua chiave paga davvero.

Integrazione

## Una POST, righe tipizzate

Base URL `https://api.quanticdata.io/v1`, autenticazione Bearer, la stessa chiave di ogni altra Data API. Endpoint: `POST /v1/scraper/collectors/subito_search/run`.

```
curl -X POST https://api.quanticdata.io/v1/scraper/collectors/subito_search/run \
  -H "Authorization: Bearer $QD_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"query":"iphone 15","title_only":true,"max_results":30}'
```

```
import requests

r = requests.post(
    "https://api.quanticdata.io/v1/scraper/collectors/subito_search/run",
    headers={"Authorization": f"Bearer {QD_API_KEY}"},
    json={
        "query": "iphone 15",
        "title_only": True,
        "max_results": 30
    },
    timeout=120,
)
for row in r.json()["payload"]["results"]:
    print(row)
```

```
const res = await fetch(
  "https://api.quanticdata.io/v1/scraper/collectors/subito_search/run",
  {
    method: "POST",
    headers: {
      Authorization: `Bearer ${process.env.QD_API_KEY}`,
      "Content-Type": "application/json",
    },
    body: JSON.stringify({"query":"iphone 15","title_only":true,"max_results":30}),
  },
);
const { payload } = await res.json();
console.table(payload.results);
```

```
claude mcp add quanticdata \
  -e QUANTICDATA_API_KEY=qd_live_your_key_here \
  -- npx -y quanticdata-mcp

# poi, nella chat:
> esegui il collector subito_search con query="iphone 15" e title_only=true
```

## Cosa si costruisce con l’API scraper per Subito.it

Le tre forme di lavoro attorno a cui è stato disegnato questo endpoint.

### Prezzi del mercato dell’usato auto

Diesel automatiche dal 2018 al 2022 sotto i 120.000 km, ordinate per prezzo, una regione alla volta — con i chilometri esatti su ogni riga invece della fascia mostrata dalla card, così un modello prezzo-per-chilometro ha davvero dei chilometri su cui lavorare.

### Monitoraggio immobiliare per comune

Trilocali e quadrilocali fra 100 e 150 mq in un comune, solo da privati. Rilancia a intervalli e confronta per `ad_id`: nuovi annunci e variazioni di prezzo emergono come righe nuove.

### Scoperta di affari e di domanda

Tutto ciò che è spedibile sotto un prezzo, gli oggetti in regalo di una categoria, o gli annunci "cercasi" che rivelano cosa cerca la gente — con il venditore segnato come privato o rivenditore su ogni riga.

## API scraper Subito.it contro farselo in casa

Le differenze che costano davvero tempo quando lo costruisci internamente.

|  | Scraper fatto in casa | Questo collector |
| --- | --- | --- |
| Filtri | Solo dove Subito li offre — nessuno sui furgoni, nessuno su tutte le categorie | Ogni filtro ricontrollato sulle righe, in ogni categoria |
| Chilometraggio | La fascia mostrata dalla card ("70.000 - 74.999") | Il valore esatto del contachilometri |
| Una parola marca o modello | Redirect — ordinamento, filtri e paginazione persi in silenzio | Seguita fino al listing canonico con ordinamento e filtri intatti |
| Una città scritta male | Un risultato vuoto che sembra "nessun annuncio" | Un errore chiaro che nomina il luogo, prima di addebitare qualsiasi cosa |
| Blocchi e retry | I tuoi IP, il tuo problema | Uscite residenziali italiane, run fallite mai addebitate |

## Cosa cerca la gente

La domanda reale dall’autocomplete attorno a Annunci Subito.it, raccolta col nostro collector Keyword ideas.

Ricerche: [subito it scraper](/collectors/subito-scraper-api/#try) [subito it scraping](/collectors/subito-scraper-api/#try) [scraping subito it](/collectors/subito-scraper-api/#try) [scraper usato subito](/collectors/subito-scraper-api/#try) [subito scraper github](/collectors/subito-scraper-api/#try) [subito it api](/collectors/subito-scraper-api/#try) [subito api developer](/collectors/subito-scraper-api/#try) [subito it api developer](/collectors/subito-scraper-api/#try) [subito api key](/collectors/subito-scraper-api/#try) [subito api rest](/collectors/subito-scraper-api/#try) [subito it api documentation](/collectors/subito-scraper-api/#try)

## FAQ

Le domande che riceviamo sull’API scraper per Subito.it.

[Altro? Scrivici](/collectors/subito-scraper-api/#ask)

### Subito.it ha un’API pubblica?

Non per sviluppatori. Quello che esiste è rivolto agli inserzionisti professionali che importano i propri annunci; non c’è un endpoint documentato per cercare o leggere gli annunci, ed è per questo che cercare una API key o una documentazione REST di Subito non porta da nessuna parte. Questo collector legge invece le pagine di ricerca pubbliche — nessun account Subito, nessuna chiave da Subito.

### Perché non uno script di scraping di Subito preso da GitHub?

Quasi tutti leggono le card visibili tramite nomi di classe CSS che Subito rigenera a ogni deploy, quindi si rompono in silenzio e restituiscono zero righe; nessuno sa che i filtri di prezzo e chilometri funzionano solo dentro una categoria, o che "golf" reindirizza lontano dalla pagina richiesta. Questo collector legge il payload dietro la pagina, riapplica ogni filtro sulle righe, segue il redirect, e arriva con uscite residenziali italiane e retry — e una run che non consegna nulla non costa nulla.

### Quanto sono precisi gli intervalli di chilometri, anno e prezzo?

Esatti. Ogni intervallo viene mandato a Subito, che lo onora solo in alcune categorie, e poi ricontrollato su ogni riga consegnata. Un annuncio che non dichiara affatto il valore viene escluso quando imposti un intervallo: "furgoni sotto i 150.000 km" non contiene mai un furgone con chilometraggio ignoto.

### Posso cercare in una provincia o in un singolo comune?

Sì — regione, provincia e comune, con i nomi così come compaiono negli URL di Subito (`lazio`, `roma`, `ladispoli`). Un luogo che Subito non conosce produce un errore che lo nomina, invece del risultato vuoto che Subito stesso restituisce per un URL sbagliato.

### Cosa succede con una parola come "golf" o "panda"?

Subito reindirizza una marca o un modello esatto a un listing canonico e butta via tutto il resto della richiesta: l’ordinamento, i filtri e il numero di pagina. Il collector lo capisce dalla pagina che riceve, rilegge il listing dal path canonico con il tuo ordinamento e i tuoi filtri applicati, e pagina da lì.

### Quali dati raccoglie, e da dove?

Solo ciò che la pagina di ricerca pubblica mostra a chiunque senza login: l’annuncio, il suo prezzo e i suoi attributi, il comune, e il venditore come lo mostra Subito — privato o rivenditore, con il nome del negozio quando c’è. Non viene usato alcun account e non si legge nulla dietro un login. Come conservi e usi le righe dopo è responsabilità tua, come per qualunque dato pubblico.

### Esiste un’API scraper per Subito.it gratis?

Ogni account riceve $2 di credito al mese senza carta, cioè circa 2.000 annunci consegnati su questo endpoint a $0.001 l’uno. Si rinnova ogni mese, e una run che non consegna nulla non viene mai addebitata: un tentativo fallito o bloccato non consuma il credito.

### Quanto costa una run?

Moltiplica le righe che ricevi davvero per $0.001. Una run al massimo di 150 annunci — il tetto di questo collector — costa $0.15 se tornano tutte, e meno quando la fonte ne ha di meno. I piani a volume scontano fino al 30%, e `GET /v1/scraper/collectors` restituisce il prezzo che la tua chiave paga davvero.

## Prova l’API scraper per Subito.it adesso

$2 di credito gratis ogni mese, senza carta. La tua chiave legge i propri prezzi da `GET /v1/scraper/collectors`.

[Ottieni la chiave API gratis](https://app.quanticdata.io/register?utm_source=collector-page&amp;utm_medium=website&amp;utm_campaign=data-api&amp;utm_content=it-subito-scraper-api-cta-3&amp;lng=it)

Correlati: [Tutti gli 82 collector EN](https://quanticdata.io/collectors/) [Kleinanzeigen Scraper API EN](https://quanticdata.io/collectors/kleinanzeigen-scraper-api/) [Idealista Scraper API EN](https://quanticdata.io/collectors/idealista-scraper-api/) [Autotrader Scraper API EN](https://quanticdata.io/collectors/autotrader-scraper-api/) [eBay scraper API EN](https://quanticdata.io/collectors/ebay-scraper-api/) [Real estate data scraping EN](https://quanticdata.io/real-estate-data-scraping/) [Competitor price monitoring EN](https://quanticdata.io/competitor-price-monitoring/) [Documentazione EN](https://quanticdata.io/docs/)

---

Fonte: https://quanticdata.it/collectors/subito-scraper-api/ · Indice del sito per le AI: https://quanticdata.it/llms.txt
