Download OpenAPI specification:
Calculates ecosystem service scores for urban greening and biodiversity projects. Inputs are derived from project data (BioValues) and reduced to only the fields relevant to each calculation.
Score interpretation
score: normalised index in the range [0, 1] (higher = better)category: qualitative tier derived from the scorelow — 0.00–0.39medium — 0.40–0.69high — 0.70–1.00Calculates a normalised connectivity score based on green patch geometry, corridor dimensions, and vegetation cover. Returns a score, category, and improvement recommendations.
| projectId | string Project entry ID — used for traceability, not for calculation. |
object | |
| bffArea required | number >= 0 Total biodiversity promotion area in m². |
| bffBuildingArea required | number >= 0 Building footprint in m². |
| projectType | string Category ID for project type. |
| useType | Array of strings Category IDs for land use types. |
| density | string Category ID for site density. |
| patchArea | number >= 0 Area of the largest continuous green patch on site (m²). Maps to characteristic_2_1. |
| corridorWidth | number >= 0 Minimum width of the main green corridor on site (m). Maps to characteristic_2_2. |
| steppingStoneCount | number >= 0 Number of stepping-stone habitat elements. Maps to characteristic_2_3. |
| habitatQualityIndex | number or null Reserved — confirm field meaning with domain experts. Maps to characteristic_2_4. |
| greenCoverFraction | number [ 0 .. 1 ] Fraction of bffArea covered by vegetation (0–1). Maps to characteristic_2_5. |
| connectivityBarrierCount | number Reserved — confirm field meaning with domain experts. Maps to characteristic_2_6. |
{- "projectId": "275050",
- "location": {
- "zipcode": "8037",
- "place": "Zurich"
}, - "bffArea": 200,
- "bffBuildingArea": 100,
- "projectType": "521",
- "useType": [
- "3922"
], - "density": "524",
- "patchArea": 80,
- "corridorWidth": 3.5,
- "steppingStoneCount": 2,
- "greenCoverFraction": 0.6,
- "connectivityBarrierCount": 0
}{- "serviceId": "connectivity",
- "score": 0.72,
- "category": "high",
- "unit": "index",
- "recommendations": [
- {
- "priority": "medium",
- "text": "Increase corridor width to at least 5 m to allow movement of medium-sized mammals.\n"
}
], - "breakdown": {
- "patchArea": 0.8,
- "corridorWidth": 0.65,
- "steppingStoneCount": 0.7
}, - "calculatedAt": "2026-04-17T08:01:15+02:00"
}Estimates the site's cooling contribution based on tree canopy cover, green roof area, and vegetation composition. Returns a score, category, and improvement recommendations.
| projectId | string Project entry ID — used for traceability, not for calculation. |
object | |
| bffArea required | number >= 0 Total biodiversity promotion area in m². |
| bffBuildingArea required | number >= 0 Building footprint in m². |
| projectType | string Category ID for project type. |
| useType | Array of strings Category IDs for land use types. |
| density | string Category ID for site density. |
| treeCanopyFraction | number [ 0 .. 1 ] Fraction of site area shaded by tree canopy (0–1). Maps to characteristic_3_1. |
| greenRoofArea | number >= 0 Area of green roof on the building (m²). Maps to characteristic_3_2. |
| vegetationTypes | Array of strings List of vegetation type identifiers present on site. Maps to characteristic_3_3. |
| shadingElements | Array of strings Non-vegetation shading features (e.g. pergola, sail). Maps to characteristic_3_4. |
{- "projectId": "275050",
- "location": {
- "zipcode": "8037",
- "place": "Zurich"
}, - "bffArea": 200,
- "bffBuildingArea": 100,
- "projectType": "521",
- "useType": [
- "3922"
], - "density": "524",
- "treeCanopyFraction": 0.25,
- "greenRoofArea": 40,
- "vegetationTypes": [
- "shrubs",
- "perennials"
], - "shadingElements": [
- "pergola"
]
}{- "serviceId": "connectivity",
- "score": 0.72,
- "category": "high",
- "unit": "index",
- "recommendations": [
- {
- "priority": "medium",
- "text": "Increase corridor width to at least 5 m to allow movement of medium-sized mammals.\n"
}
], - "breakdown": {
- "patchArea": 0.8,
- "corridorWidth": 0.65,
- "steppingStoneCount": 0.7
}, - "calculatedAt": "2026-04-17T08:01:15+02:00"
}Assesses soil loss risk based on surface permeability, cover types, and site characteristics. Returns a score, category, and improvement recommendations.
| projectId | string Project entry ID — used for traceability, not for calculation. |
object | |
| bffArea required | number >= 0 Total biodiversity promotion area in m². |
| bffBuildingArea required | number >= 0 Building footprint in m². |
| projectType | string Category ID for project type. |
| useType | Array of strings Category IDs for land use types. |
| density | string Category ID for site density. |
| surfaceTypes | Array of strings Identifiers of surface cover types present on site. Maps to characteristic_4_0. |
| permeableSurfaceFraction | number [ 0 .. 1 ] Fraction of total site area that is water-permeable (0–1). Maps to characteristic_4_1. |
| slopeGradient | number Reserved — confirm field meaning with domain experts. Maps to characteristic_4_2. |
| soilErodibility | number Reserved — confirm field meaning with domain experts. Maps to characteristic_4_3. |
| rainfallErosivity | number Reserved — confirm field meaning with domain experts. Maps to characteristic_4_4. |
| vegetationCoverFactor | number Reserved — confirm field meaning with domain experts. Maps to characteristic_4_5. |
{- "projectId": "275050",
- "location": {
- "zipcode": "8037",
- "place": "Zurich"
}, - "bffArea": 200,
- "bffBuildingArea": 100,
- "projectType": "521",
- "useType": [
- "3922"
], - "density": "524",
- "surfaceTypes": [
- "gravel",
- "lawn"
], - "permeableSurfaceFraction": 0.55,
- "slopeGradient": 0,
- "soilErodibility": 0,
- "rainfallErosivity": 0,
- "vegetationCoverFactor": 0
}{- "serviceId": "connectivity",
- "score": 0.72,
- "category": "high",
- "unit": "index",
- "recommendations": [
- {
- "priority": "medium",
- "text": "Increase corridor width to at least 5 m to allow movement of medium-sized mammals.\n"
}
], - "breakdown": {
- "patchArea": 0.8,
- "corridorWidth": 0.65,
- "steppingStoneCount": 0.7
}, - "calculatedAt": "2026-04-17T08:01:15+02:00"
}