Italy Real Estate Market Data API - Prices, Sales, Forecasts
Pricing
from $15.00 / 1,000 market record returneds
Italy Real Estate Market Data API - Prices, Sales, Forecasts
Italian real estate market data by region, province, municipality or micro-zone: listing prices and history, price forecasts, listings stock, transaction prices and volumes, and buyer and tenant demand, for sale and rent. Read only. Pay per result. Bring your own credentials.
Pricing
from $15.00 / 1,000 market record returneds
Rating
0.0
(0)
Developer
Nabeel Hassan
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
Turn a list of Italian regions, provinces, municipalities or micro-zones into a dataset of asking prices, sale prices, sales volumes, price forecasts and buyer demand, for sale or rent.
What it collects
- Listing prices: average, minimum and maximum price per square metre, average, minimum and maximum asking price, negotiation margin, price elasticity and variability, each with its change over the window and its ranking among sibling zones, plus 10th to 90th percentile prices by typology, room count and maintenance condition.
- Price history and forecast: quarterly time series of listing prices by room count and condition, and a five year forecast of the average price per square metre with its 95 percent range, either as one average or split by high, medium and low energy class.
- Listings stock: number of listings, time on market, time to sell, absorption index and stock renewal, with their history.
- Transactions: sale prices per square metre and average sale price from processed land registry (Agenzia delle Entrate) data, percentiles by cadastral category, number of sales (NTN), turnover, average surface and surface classes, with their history.
- Demand: share of searches and views in the area, conversion rate, average leads per listing, searched surface and spending propensity, split by typology and condition, with their history.
- Zones and vocabularies: every region, province, municipality, macro-zone or micro-zone with its ID, the zones inside a given zone, the request codes, and the months for which data and transaction data are available.
How to use it
- Pick a service. If you do not know the zone ID you need, run Zones - every zone of one type with zone type Region, then Zones - inside each given zone on the region you want, and so on down to municipality or micro-zone.
- Put one zone per line in Zone IDs: a bare ID read with the zone type input, or
type:idsuch asreg:3orcom:100005to mix types in one run. - Set the contract (sale or rent), the time window, the year and the month. A quarterly window only ends in March, June, September or December, a semiannual one in June or December, an annual one in December. The actor refuses any other month before spending a call, because the provider does too.
- Optionally narrow by property typology (listing services), cadastral category (transaction services) or forecast segmentation (price forecast). A filter the selected service does not document is left off with a warning rather than sent.
- Add your credentials and press Start.
Example output
{"service": "price","serviceLabel": "Listing prices","endpoint": "/api/price","zoneType": "com","zoneId": "100005","window": "1M","year": 2024,"month": 12,"contract": 1,"found": true,"recordType": "market","requestId": "1eb7d444-17a7-4808-83e7-8b6ba3c51637","retrievedAt": "2026-09-25T10:14:52.118Z","record": {"price_sqm_avg": { "value": 2131, "delta": { "value": 0.76, "window": "1M" }, "ranking": { "of": 7, "position": 3 } },"discount": { "value": 8.4, "delta": { "value": 0.0, "window": "1M" }, "ranking": { "of": 7, "position": 1 } },"rooms": { "2": { "price_10pc": 1737, "price_50pc": 2574, "price_90pc": 3452 } },"...": "every other field the provider published, unchanged"},"note": null}
FAQ
What is an Italian real estate market data API used for?
Pricing and screening across Italy at a scale that portal browsing cannot reach. A lender or valuer reads price per square metre and its percentiles for every municipality in a portfolio. An investor compares transaction prices, sales volumes and absorption across provinces to find where the market is moving. A developer reads demand, searched surface and time on market before committing to a site. A proptech product puts price history and five year forecasts behind its own screens. The common shape is a list of zones in and a table of market facts out.
Where does the data come from?
The listing, stock and demand services are built from the listings and search activity of a large Italian property portal. The transaction services are built from processed Agenzia delle Entrate (Italian revenue agency) sales data, which is why they are filtered by cadastral category rather than by listing typology.
How do I find a zone ID?
Run the zones service. With zone type Region it lists the twenty Italian regions with their IDs (Lombardia is 3, Lazio is 12). The zones-inside service then lists the provinces of a region, the municipalities of a province, and so on. Those IDs go straight into the Zone IDs input of any market service.
What happens to a zone with no data?
It becomes its own row, marked found: false, with the provider's own reason in note. A run over fifty municipalities therefore returns fifty rows, and you can see at a glance which ones had nothing for that period. Rows without data are never charged.
Which period should I ask for?
Run the available periods service first. It lists, month by month, whether listing data, transaction data and energy class data exist. Transaction data lags listing data, so a month that answers the listing prices service may not yet answer the transaction services.
Can this actor change anything on my account?
No. Every route it can reach reads data. The provider's appraisal product on the same documentation portal also has routes that insert and update appraisal records, and none of them is wired into this actor. Signing in exchanges your credentials for a token and creates nothing.
Do I need an API key?
Yes. This actor is bring-your-own-key and never ships a credential of its own. The provider signs in with an OAuth password grant, so you have two options. Paste an access token you already have into the API key field (or set it as the DATA_API_KEY environment secret); tokens last four hours. Or give the client ID, client secret, username and password from your provider contract, and the actor signs in once at the start of the run and reuses the token, because the provider warns that signing in before every request can get an account temporarily blocked. All credential fields are stored as secrets. Without any credential the run ends cleanly with a message saying what to add.
Why is the provider's record kept whole instead of split into columns?
Because each service answers in its own nested shape, and the provider states that new fields can be added at any time. The columns that are lifted are the ones every row has: which service answered, the zone type and ID, the window, year, month and contract it was asked with, whether anything came back, and the provider's own request ID. The full answer sits beside them under record, unchanged.
What does it cost?
Pay per result. A market reading about one zone and period is the main event. A zone from a zone listing and a reference vocabulary are priced well below it, because they are what you read before spending anything on market data. Zones with no data are never charged.
Keyword map
Italy real estate API, Italian property data API, Italy house prices API, prezzi immobili API, price per square metre Italy, Italian property market data, Agenzia delle Entrate transaction data, compravendite API, NTN sales volume Italy, Italy rent prices API, affitti prezzi API, property price forecast Italy, Italian real estate demand data, listings stock Italy, time on market Italy, cadastral category prices, microzone property prices, municipality house prices Italy, Milan property prices API, Rome property prices API, proptech data Italy, real estate market intelligence Italy.