Italy Property Auctions API - PVP Judicial Auctions in English
Pricing
from $1.50 / 1,000 auction records
Italy Property Auctions API - PVP Judicial Auctions in English
[💵 $2.00 / 1K] Aste giudiziarie dal Portale delle Vendite Pubbliche: prezzo base, offerta minima, stato occupazione, tribunale. Clean English schema for international investors - base price, minimum offer, discount %, occupancy, coordinates & bidding links. Not a pvp.giustizia.it dump.
Pricing
from $1.50 / 1,000 auction records
Rating
0.0
(0)
Developer
WebData Labs
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
10 days ago
Last modified
Share
One clean English row for every Italian judicial auction. Filter by region, city, category and price band, or pass specific announcement IDs, and get analysis-ready investor leads from Italy's official Ministry of Justice auction portal (pvp.giustizia.it - the Portale delle Vendite Pubbliche): base price, minimum offer, the discount vs base price, occupancy status, sale date and offer deadline, coordinates, court, and the direct links to the official bidding sites - decoded from the register's internal codes into one consistent schema.
Italy runs the largest judicial-auction market in Europe - hundreds of thousands of court-ordered sales of apartments, commercial buildings, land, vehicles, machinery and company shares flow through the PVP register. But the register speaks an undocumented internal dialect: sale types are cryptic codes (SENIN, VENDAS), occupancy arrives as truncated flags (LIBER/OCCUP), categories are SCREAMING_SNAKE Italian, some sale dates are data-entry junk (the register really contains auctions dated year 3019 - this Actor flags them), and the number an investor actually wants - how far below the base price the minimum offer sits - is never given. The few existing Italy auction scrapers dump raw Italian from third-party aggregator sites. This Actor reads the official register itself and does the hard part: decodes every code to English, normalizes dates and money, derives the discountPctVsBase signal, resolves occupancy, and returns one consistent row per auction with the official bidding links attached.
✅ What you get / ❌ what this isn't
| This Actor gives you | This Actor is not |
|---|---|
| One normalized row per auction, English-labeled, identical shape every time | Not a raw Italian pvp.giustizia.it dump |
| Economics decoded: base price, minimum offer, bid increment, derived discount % | Not affiliated with or endorsed by the Ministry of Justice or any court |
Occupancy resolved: FREE / OCCUPIED / UNKNOWN | Not investment, legal, or bidding advice |
| Sale schedule: sale date/time, offer deadline, junk-date flag | Not a guarantee that every auction exposes every field |
| Search by region (English names work: Tuscany, Sicily...), city, category, price band | Not real-time - reflects the register's publication cadence |
| Direct links to the official listing & telematic bidding sites per auction | Not a bidding or escrow service - you bid through the official channels |
🔎 Why use this Actor
- Source below-market Italian property deals by filtering on base price and the derived discount.
- Get a fresh, structured feed of auctions currently on sale for any region or city.
- See occupancy status up front - the difference between a usable property and a legal project.
- Jump straight to the official telematic bidding site via
listingSites[]. - Get English auction leads for an international pipeline instead of Italian register codes.
- Feed normalized auction data into a CRM, dashboard, model, or LLM workflow.
👥 Who it's for
- Property investors, flippers, and buy-to-let buyers hunting distressed and below-market assets in Italy.
- Real-estate lead-gen agencies and portals serving auction buyers.
- Funds and brokers tracking judicial sales by region, category, or price band.
- Proptech and data teams building Italian auction alerts or dashboards.
- Anyone who wants one tidy English schema instead of a
pvp.giustizia.itreverse-engineering project.
🗂️ What data you get
One row per auction:
| Field | Type | Description |
|---|---|---|
auctionId, announcementUrl | number / string | PVP announcement ID and the official public URL |
assetClass | string | REAL_ESTATE / MOVABLE / COMPANY / SECURITIES_CREDITS / OTHER |
category, categoryIt | string | RESIDENTIAL / COMMERCIAL / INDUSTRIAL / ... (+ Italian) |
itemTypes[] | array | English item typologies: Apartment, Parking space, Building land... |
basePrice | number | Prezzo base d'asta in EUR |
minimumOffer | number | Offerta minima in EUR |
minBidIncrement | number | Rialzo minimo in EUR |
discountPctVsBase | number | Derived: how far the minimum offer sits below the base price |
occupancyStatus | string | FREE / OCCUPIED / UNKNOWN (decoded from register flags) |
saleDate, saleDateTime | string | Auction date (ISO 8601) |
saleDateSuspect | boolean | Flags register data-entry junk (e.g. year 3019 sale dates) |
offerDeadline | string | Deadline to submit an offer (ISO 8601) |
saleType, saleMode | string | SEALED_BID / OPEN_OUTCRY + ONLINE_ASYNC / ONLINE_LIVE / IN_PERSON |
address, city, province, region | object / string | Structured location with postal code |
latitude, longitude | number | Geocoded coordinates when the register provides them |
court, courtCode, procedureNumber | string | The court and procedure behind the sale |
listingSites[] | array | Official listing and telematic bidding URLs for this auction |
items[], itemCount | array / number | Every item in the lot with English typology and description |
significantEvents[] | array | Rectifications and notices attached to the announcement |
outcome | string | Sale outcome, when the register exposes one |
⚙️ How to pull auction data
- Open the Actor on Apify.
- Set
region(Italian or English name -Lazio,Tuscany,Sicily...), optionalcity,propertyCategory, and a price band. Or paste specificauctionIds. - Keep
timeFilteron On sale / upcoming for live leads, or switch to recent outcomes / full archive. - Run the Actor and open the
Auctionsdataset view. - Export JSON, CSV, Excel, HTML, or XML, or call the Actor through the Apify API.
📥 Input
{"region": "Lazio","city": "Roma","assetType": "real-estate","propertyCategory": "residential","timeFilter": "on-sale","maxBasePrice": 300000,"maxResults": 50}
📤 Output
{"recordType": "auction","auctionId": 4600384,"announcementUrl": "https://pvp.giustizia.it/pvp/it/detail_annuncio.page?idAnnuncio=4600384","assetClass": "REAL_ESTATE","category": "RESIDENTIAL","itemTypes": ["Social housing unit"],"currency": "EUR","basePrice": 83500.0,"minimumOffer": 62625.0,"minBidIncrement": 3000.0,"discountPctVsBase": 25.0,"occupancyStatus": "FREE","saleDate": "2026-11-19","saleDateTime": "2026-11-18T10:30","saleDateSuspect": false,"offerDeadline": "2026-11-18T23:59","saleType": "SEALED_BID","saleMode": "ONLINE_ASYNC","city": "Roma","province": "Roma","region": "Lazio","latitude": 41.8835806,"longitude": 12.578722,"court": "Tribunale di ROMA","listingSites": [{ "url": "https://www.fallcoaste.it/vendita/...", "site": "https://www.fallcoaste.it", "type": "listing" }],"itemCount": 1}
💵 How much does it cost?
The launch price is about $2.00 / 1,000 auctions, tier-discounted for higher Apify plans. One auction row is one charged result. A run returning 80 auctions is 80 results. Failed lookups are not charged.
🔁 Run it on the Apify platform
Schedule a recurring run to keep a regional auction feed fresh (new announcements, upcoming deadlines), call it from the Apify API, export to CSV/JSON/Excel, or connect the dataset to Make, Zapier, webhooks, a warehouse, a CRM, or an LLM pipeline.
⚠️ Limits and caveats
- This Actor reads the public official register (
pvp.giustizia.it, Portale delle Vendite Pubbliche, Ministry of Justice). It is not affiliated with the Ministry or any court and returns only data already public there. - Not investment or legal advice. Occupancy, descriptions, and procedure details are reproduced from the register; verify every lot with the official documentation before bidding.
- Field coverage varies. Older or movable-goods auctions may lack coordinates, images, or occupancy flags;
occupancyStatusis thenUNKNOWN. - Some register dates are junk. A few sale dates are court data-entry errors (year 3019 and similar); they are flagged with
saleDateSuspect: true, not silently dropped. - Deep pagination is capped by
maxResults(up to 1,000 per run); narrow by region, category, or price band for bigger pulls. - Data reflects the register's publication cadence, not real time.
🧩 Related Actors
- Spain Property Auctions API - BOE Subastas decoded into English investor leads.
- EU Tenders API - normalized TED public procurement in one English schema.
- Brazil CNPJ Company API - clean English firmographics for any Brazil CNPJ.
- US Building Permits API - normalized construction permits and contractor leads.
❓ FAQ
What is the Portale delle Vendite Pubbliche?
pvp.giustizia.it is the Italian Ministry of Justice's official register of court-ordered sales: real-estate foreclosures, bankruptcy liquidations, and movable-asset auctions from every Italian tribunal. Publication there is mandated by law, which makes it the single most complete source of Italian judicial auctions - and this Actor turns it into clean, English-labeled investor leads.
What is discountPctVsBase?
It is the gap between the base auction price (prezzo base d'asta) and the minimum acceptable offer (offerta minima), as a percentage. Italian procedure commonly allows offers down to 75% of base, so 25% is typical - and repeated failed auctions push the base itself far below market. Always verify the lot before acting.
Why does occupancy matter?
An OCCUPIED property may involve a lengthy legal process before you can use it; a FREE one is immediately available. The register encodes this in truncated per-item flags; this Actor resolves them into one occupancyStatus per auction.
Can I search all of Italy?
Yes. Leave region empty for the whole country, or set a region in Italian or English (Lombardia or Lombardy, Toscana or Tuscany) plus an optional city.
How do I actually bid?
Through the official channels only. Each row carries listingSites[] with the auction's official listing pages and the telematic bidding site (type: "bidding") registered for that sale.
Does it need a proxy?
No. The PVP register is a public official source served reliably to datacenter IPs. Enable Apify Proxy only for very large batches.
🇮🇹 In italiano
Estrai le aste giudiziarie dal Portale delle Vendite Pubbliche (pvp.giustizia.it) in uno schema pulito e strutturato: prezzo base, offerta minima, rialzo minimo, sconto sul prezzo base, stato di occupazione, data vendita e termine presentazione offerte, tribunale, coordinate e i link ufficiali per fare offerta - pronto per Excel, CSV o JSON.
- Filtra per regione e città (per esempio Lazio/Roma, Lombardia/Milano) o cerca in tutta Italia.
- Solo annunci in vendita, esiti recenti, o l'intero archivio storico.
- I link ufficiali ai siti di pubblicità e ai gestori delle vendite telematiche sono inclusi in ogni riga.
- Gli importi sono numeri puliti e le etichette sono tradotte in inglese per investitori internazionali - i codici originali del registro restano disponibili con
includeRaw.
Manca un campo o qualcosa non funziona? Apri un issue dell'Actor con l'URL della run e rispondiamo di solito entro un giorno.
🛠️ Support
For bugs, missing fields, or a feature request, open an Actor issue with the run URL, the filters or auction IDs used, and the field or behavior you expected.
⭐ Rate this Actor
If this Actor saved you time, please take 30 seconds to leave a review on the Reviews tab of Italy Property Auctions API - PVP Judicial Auctions in English - reviews are the main trust signal other users see, and they directly decide which features get built next. If something is broken or a field is missing, please open an issue first - we typically respond within a day and would love the chance to fix it before you rate.