European Central Bank — Structural Housing Indicators (RESH)
Structural Housing Indicators (RESH) — official time series from the European Central Bank Data Portal, published as the RESH dataflow over SDMX 2.1 REST. One endpoint serves XML (SDMX-ML), CSV (?format=csvdata) and JSON (?format=jsondata); extract exactly the series you need with a key path and startPeriod / endPeriod / lastNObservations filters. Browse and chart the same series on the ECB Data Portal.
Trust score
How is this computed?Weighted across five axes. Tap a ring for what it measures.
Data schema (32 fields)
Click a field to see example values.
| Field | Type | Description |
|---|---|---|
| FREQFrequency | dimension | 2 codes (e.g. Annual, Quarterly) |
| REF_AREAReference area | dimension | 31 codes (e.g. Austria, EU27 (fixed composition) as of 31 January 2020 (brexit), Belgium) |
| REGIONRegion and geographical coverage | dimension | 1 codes (e.g. Whole country) |
| ADJUSTMENTAdjustment indicator | dimension | 1 codes (e.g. Neither seasonally nor working day adjusted) |
| PROPERTY_TYPEType of properties | dimension | 2 codes (e.g. Residential property, All dwelling types, new, Residential property, All dwelling types, new and existing) |
| INDICATOR | dimension | 11 codes (e.g. Number of construction/housing completions, Number of construction/housing starts, Number of properties) |
| DATA_PROVIDER | dimension | 28 codes (e.g. Oesterreichische Nationalbank (Austria), European Central Bank (ECB), Banque Nationale de Belgique (Belgium)) |
| PRICE_TYPE | dimension | 2 codes (e.g. Not applicable, Transaction based) |
| TRANSFORMATION | dimension | 1 codes (e.g. Non transformed data) |
| UNIT_MEASUREUnit of measure | dimension | 3 codes (e.g. Not applicable, Ratio, Euro) |
| TIME_PERIODTime period or range | time | Time dimension — filter with startPeriod / endPeriod query params. |
| OBS_VALUEObservation value | number | The observed numeric value for each cell. |
| TIME_FORMATTime format code | attribute | — |
| ADJU_DETAILAdjustment detail | attribute | — |
| BREAKS | attribute | — |
| COMMENT_TSSeries comment including brief description of the underlying statistic | attribute | — |
| COMPILING_ORGCompiling organisation | attribute | — |
| COVERAGE | attribute | — |
| DATA_COMPUnderlying compilation | attribute | — |
| DECIMALS | attribute | — |
| DISS_ORGData dissemination organisation | attribute | — |
| DOM_SER_IDSDomestic series ids | attribute | — |
| TIME_PER_COLLECTTime period collection | attribute | — |
| TITLE | attribute | — |
| TITLE_COMPLTitle complement | attribute | — |
| UNIT_INDEX_BASE | attribute | — |
| UNIT_MULTUnit multiplier | attribute | — |
| UPDATE_STATUS | attribute | — |
| OBS_STATUSObservation status | attribute | — |
| CONF_STATUSConfidentiality status | attribute | — |
| PRE_BREAK_VALUE | attribute | — |
| COMMENT_OBSComments to the observation value | attribute | — |
Schema captured from sdmx 1 month ago.
Query the data
Pick columns and a sort, then fetch a live preview straight from the source. Choose an API-filterable column (marked ▾) under “Where” to pick from its list of values.
Sample data (5 records)
Record 1FREQ: A · REGION: _T
{
"FREQ": "A",
"REGION": "_T",
"REF_AREA": "AT",
"INDICATOR": "HCOM",
"OBS_VALUE": 70.071,
"ADJUSTMENT": "N",
"PRICE_TYPE": "_Z",
"TIME_PERIOD": "2023",
"UNIT_MEASURE": "_Z",
"DATA_PROVIDER": "AT2",
"PROPERTY_TYPE": "NTR",
"TRANSFORMATION": "N"
}Record 2FREQ: A · REGION: _T
{
"FREQ": "A",
"REGION": "_T",
"REF_AREA": "AT",
"INDICATOR": "HSTA",
"OBS_VALUE": 55.306,
"ADJUSTMENT": "N",
"PRICE_TYPE": "_Z",
"TIME_PERIOD": "2024",
"UNIT_MEASURE": "_Z",
"DATA_PROVIDER": "AT2",
"PROPERTY_TYPE": "NTR",
"TRANSFORMATION": "N"
}Record 3FREQ: A · REGION: _T
{
"FREQ": "A",
"REGION": "_T",
"REF_AREA": "AT",
"INDICATOR": "NPRO",
"OBS_VALUE": 5080.357,
"ADJUSTMENT": "N",
"PRICE_TYPE": "_Z",
"TIME_PERIOD": "2024",
"UNIT_MEASURE": "_Z",
"DATA_PROVIDER": "AT2",
"PROPERTY_TYPE": "_TR",
"TRANSFORMATION": "N"
}Record 4FREQ: A · REGION: _T
{
"FREQ": "A",
"REGION": "_T",
"REF_AREA": "AT",
"INDICATOR": "NTRA",
"OBS_VALUE": 62.499,
"ADJUSTMENT": "N",
"PRICE_TYPE": "_Z",
"TIME_PERIOD": "2025",
"UNIT_MEASURE": "_Z",
"DATA_PROVIDER": "AT2",
"PROPERTY_TYPE": "_TR",
"TRANSFORMATION": "N"
}Record 5FREQ: A · REGION: _T
{
"FREQ": "A",
"REGION": "_T",
"REF_AREA": "AT",
"INDICATOR": "PRHH",
"OBS_VALUE": 4182.056,
"ADJUSTMENT": "N",
"PRICE_TYPE": "_Z",
"TIME_PERIOD": "2025",
"UNIT_MEASURE": "_Z",
"DATA_PROVIDER": "AT2",
"PROPERTY_TYPE": "_TR",
"TRANSFORMATION": "N"
}Live sample captured at profiling time — values may have changed upstream.
Verification Status
Using the API
Query examples
curl -s 'https://data-api.ecb.europa.eu/service/dataflow/ECB' -H 'Accept: application/vnd.sdmx.structure+xml;version=2.1'All dataflows (datasets) published by this agency, as SDMX-ML.
Machine-readable & source
Embed this badge in a README or wiki — it always shows the latest verification state and quality tier.