Skip to content

Building Data Model

The Building object represents a single residential building with:

  • Address information
  • Geospatial references
  • Roof characteristics
  • Photovoltaic (PV) status
  • Solar potential metrics
  • Economic indicators
  • Grid-based neighborhood metrics
  • Geometry data (GeoJSON)

It is returned by:

  • GET /building
  • GET /building-coordinates
  • POST /buildings
  • POST /buildings-coordinates
  • POST /bbox/buildings
  • POST /query/buildings

Core Identifiers

Field Type Description
building_id string (24) Unique building identifier
postcode string (5) German postcode
ags string (8) Municipality identifier (Amtlicher Gemeindeschlüssel)

building_id is the primary identifier used for:

  • Batch queries
  • Cursor pagination
  • Linking to other systems

Address Information

Field Type Description
street string Street name
house_number string House number
postcode string Postcode
locality string City / municipality name
county string Landkreis
state string Bundesland

H3 Grid References

Each building is linked to multiple H3 grid resolutions:

Field Description
h3_4 H3 ID (resolution 4)
h3_5 H3 ID (resolution 5)
h3_6 H3 ID (resolution 6)
h3_7 H3 ID (resolution 7)
h3_8 H3 ID (resolution 8)
h3_9 H3 ID (resolution 9)
h3_10 H3 ID (resolution 10)

These are useful for:

  • Regional grouping
  • Aggregation
  • Spatial indexing

Building Characteristics

Field Type Description
building_type string Building category (e.g., single-family house, terraced house, apartment building)
roof_type string Roof type (e.g., Flachdach, Satteldach)
roof_area integer Total roof area (m²)
building_height integer Height in meters
n_roofs integer Number of roof segments

PV Status

Field Type Description
pv boolean Whether PV is installed
solar_thermal boolean Whether 1-3 solar thermal collectors are installed
img_date string Date of aerial image used for classification

Solar Potential Metrics

Field Type Description
radiation integer Annual radiation (kWh/m²)
suitable_roof_area integer Usable roof area (m²)
building_kwh integer Expected annual production (kWh)
building_kwp integer Expected system capacity (kWp)
building_panels integer Estimated number of panels
building_co2 number Annual CO₂ savings (tons)

Economic Indicators

Field Type Description
earnings integer Annual gross earnings (EUR)
costs integer Installation costs (EUR)
return_on_investment number Return on investment (percentage)
amortization number Payback period (years)
total_earnings integer Total net earnings over 25 years (EUR)

Sales Opportunity

Field Type Description
sales_opportunity_score number (0–10) Sales opportunity score based on expected sales value and probability
deal_size_class string Categorized deal size class (super, good, other)

Grid-Based Neighborhood Metrics

These values are based on 100x100m INSPIRE grid cells.

Field Description
grid_count_buildings Number of residential buildings in the grid cell
grid_share_owned Share of owner-occupied buildings
grid_share_2020s Share built in 2020s
grid_share_2010s Share built in 2010s
grid_share_2000s Share built in 2000s
grid_share_1990s Share built in 1990s
grid_share_pre_1990s Share built before 1990

These metrics support:

  • Socioeconomic analysis
  • Campaign targeting
  • Neighborhood profiling

Roof-Level Information

Each building may have multiple roof segments.

Field Type Description
roof_ids array[string] Roof identifiers
roof_areas array[int] Roof areas (m²)
roof_directions array[int] Orientation in degrees
roof_direction_labels array[string] Cardinal direction labels
roof_pitches array[int] Roof inclination (degrees)
roof_suggested_usage array[number] Suggested PV usage share
roof_kwh_m2 array[number] Production per m²
roof_kwp array[number] Capacity per roof segment
roof_panels array[number] Panel count per roof segment
roof_geoms array[GeoJSON Polygon] Roof geometries

Geometry

The building includes GeoJSON geometries.

Field Type Description
coordinates GeoJSON Point Building centroid
geometry GeoJSON Polygon Building footprint

All coordinates use:

  • WGS84 reference system
  • [longitude, latitude] order

Example (simplified)

{
  "building_id": "0009c4da348d4cc82f2d3448",
  "postcode": "90461",
  "pv": false,
  "roof_area": 120,
  "building_kwh": 10500,
  "building_kwp": 9,
  "building_type": "single-family house",
  "geometry": {
    "type": "Polygon",
    "coordinates": [...]
  }
}

Projection-Friendly Variant

Some endpoints return a projection-friendly BuildingOut object.

Characteristics:

  • Always includes building_id
  • Includes only fields requested via options.select

Example:

{
  "building_id": "0009c4da348d4cc82f2d3448",
  "roof_area": 120
}

For:

  • Map rendering → select minimal fields (building_id, geometry)
  • Campaign exports → select relevant economic and opportunity fields
  • Analytics → use grid metrics + solar potential

Avoid requesting full roof geometries unless necessary.


Summary

The Building model provides:

  • Address-level identification
  • PV classification
  • Solar production potential
  • Economic evaluation
  • Roof-level granularity
  • Spatial geometry

It forms the core entity of the Solar Lake Enterprise API.