> For the complete documentation index, see [llms.txt](https://docs.altum.ai/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.altum.ai/verduurzamen/verduurzaming-api-v2/authenticatie-invoer-en-resultaat.md).

# Authenticatie, invoer en resultaat

### Vraag een duurzaamheidsadvies op basis van het adres op.

<mark style="color:green;">`POST`</mark> `https://api.altum.ai/v2/sustainability`

Dit endpoint stelt je in staat om een response van de Altum AI Verduurzaming API te ontvangen over verduurzamingsmaatregelen en de Ecowaarde, op basis van postcode, huisnummer en eventuele huisletter/toevoeging.

**Headers**

<table><thead><tr><th width="200">Naam</th><th width="136.9998779296875">Type</th><th>Omschrijving</th></tr></thead><tbody><tr><td>Content-Type</td><td>string</td><td>applicatie/json</td></tr><tr><td>x-api-key<mark style="color:red;">*</mark></td><td>string</td><td>Unieke API-sleutel van Altum. Maak er een via Mopsus(https://mopsus.altum.ai)</td></tr></tbody></table>

**Request Body**

<table><thead><tr><th width="216">Naam</th><th width="117.99993896484375">Type</th><th width="282.2220458984375">Omschrijving</th><th>Standaard</th></tr></thead><tbody><tr><td>postcode<mark style="color:red;">*</mark></td><td>string</td><td>Zes-cijferige postcode formaat bijv. 1234AB</td><td></td></tr><tr><td>housenumber<mark style="color:red;">*</mark></td><td>integer</td><td>Huisnummer van het object</td><td></td></tr><tr><td>houseaddition</td><td>string</td><td>Huisnummertoevoeging</td><td></td></tr><tr><td>build_year</td><td>integer</td><td>Bouwjaar</td><td></td></tr><tr><td>roof_type</td><td>integer</td><td><p>1 = (voornamelijk) schuin dak</p><p>2 = (voornamelijk) plat dak</p><p>3 = deels schuin, deels plat dak</p></td><td>Standaard wordt <code>1</code> aangenomen als geen daktype is opgegeven of bekend is.</td></tr><tr><td>inner_surface_area</td><td>float</td><td>De totale woonoppervlakte (m²)</td><td></td></tr><tr><td>house_type</td><td>integer</td><td><p>1 = vrijstaande woning</p><p>2 = 2-onder-1-kapwoning</p><p>3 = hoekwoning</p><p>4 = tussenwoning</p></td><td></td></tr><tr><td>wall_insulation</td><td>integer</td><td>Bekijk <a href="https://docs.altum.ai/verduurzamen/verduurzaming-api-v2/maatregelen">maatregelen</a></td><td></td></tr><tr><td>floor_insulation</td><td>integer</td><td>Bekijk <a href="/pages/KAZHEPwySCCMzgjW64TP">maatregelen</a></td><td></td></tr><tr><td>sloped_roof_insulation</td><td>integer</td><td>Bekijk <a href="https://docs.altum.ai/verduurzamen/verduurzaming-api-v2/maatregelen">maatregelen</a></td><td></td></tr><tr><td>flat_roof_insulation</td><td>integer</td><td>Bekijk <a href="https://docs.altum.ai/verduurzamen/verduurzaming-api-v2/maatregelen">maatregelen</a></td><td></td></tr><tr><td>living_room_windows</td><td>integer</td><td>Bekijk <a href="https://docs.altum.ai/verduurzamen/verduurzaming-api-v2/maatregelen">maatregelen</a></td><td></td></tr><tr><td>bedroom_windows</td><td>integer</td><td>Bekijk <a href="https://docs.altum.ai/verduurzamen/verduurzaming-api-v2/maatregelen">maatregelen</a></td><td></td></tr><tr><td>installation</td><td>integer</td><td>Bekijk <a href="https://docs.altum.ai/verduurzamen/verduurzaming-api-v2/maatregelen">maatregelen</a></td><td>4</td></tr><tr><td>shower</td><td>integer</td><td>Bekijk <a href="https://docs.altum.ai/verduurzamen/verduurzaming-api-v2/maatregelen">maatregelen</a></td><td>1</td></tr><tr><td>ventilation</td><td>integer</td><td>Bekijk <a href="https://docs.altum.ai/verduurzamen/verduurzaming-api-v2/maatregelen">maatregelen</a></td><td></td></tr><tr><td>solar_panels</td><td>list</td><td>Bekijk <a href="https://docs.altum.ai/verduurzamen/verduurzaming-api-v2/maatregelen">maatregelen</a></td><td></td></tr><tr><td>cooling</td><td>integer</td><td><p>Is er een koelsysteem aanwezig?</p><p>1 = Geen koeling</p><p>2 = Airconditioning, directe luchtkoeling</p></td><td><p>1</p><p><br></p></td></tr><tr><td>electric_cooking</td><td>integer</td><td><p>Wat wordt gebruikt om te koken?</p><p>1 = Gasfornuis</p><p>2 = Elektrisch fornuis</p></td><td><p>2 <em>Als de installatie in [6,7] zit.</em></p><p>Anders 1<br></p></td></tr><tr><td>inhabitants</td><td>integer</td><td>Aantal bewoners</td><td>3</td></tr><tr><td>gas_usage</td><td>float</td><td>Overschrijft het geschatte jaarlijkse gasverbruik (m³)</td><td></td></tr><tr><td>heat_usage</td><td>float</td><td>Overschrijft het opgegeven jaarlijkse warmteverbruik (GJ)</td><td></td></tr><tr><td>electricity_usage</td><td>float</td><td>Overschrijft het opgegeven jaarlijkse elektriciteitsverbruik (kWh)</td><td></td></tr><tr><td>electricity_generation</td><td>float</td><td>Totale jaarlijkse elektriciteitsopbrengst van zonnepanelen (kWh)<br>Netto verbruik = verbruik − opbrengst</td><td></td></tr><tr><td>ev_charger</td><td>integer</td><td><p>Heeft het gebouw een laadpaal voor elektrische voertuigen?</p><p><code>0</code> = geen laadpaal<br><code>1</code> = laadpaal aanwezig</p></td><td>0</td></tr><tr><td>electricity_connection_type</td><td>integer</td><td><p>Het aansluitingstype van het gebouw</p><p><code>1</code> = 1-fase<br><code>2</code> = 3-fase</p></td><td>1</td></tr><tr><td>electricity_contract_type</td><td>integer</td><td><p>Type elektriciteitscontract</p><p><code>1</code> = vast contract<br><code>2</code> = dynamisch contract</p></td><td>1</td></tr><tr><td>dynamic_price_reference_year</td><td>integer</td><td><p>Het jaar vanaf wanneer dynamische prijzen worden gebruikt:</p><p><code>2023</code>, <code>2024</code>, <code>2025</code></p></td><td>2025</td></tr><tr><td>netting_enabled</td><td>integer</td><td><p>Of de salderingsregeling wordt toegepast.</p><p><code>0</code> = geen saldering<br><code>1</code> = saldering toegepast</p></td><td>1</td></tr><tr><td>battery_type</td><td>integer</td><td>Bekijk <a href="https://docs.altum.ai/verduurzamen/verduurzaming-api-v2/maatregelen">maatregelen</a></td><td></td></tr><tr><td>battery_system</td><td>integer</td><td>Bekijk <a href="https://docs.altum.ai/verduurzamen/verduurzaming-api-v2/maatregelen">maatregelen</a></td><td></td></tr><tr><td>minimum_solar_panels</td><td>integer</td><td>Het minimale aantal nieuwe zonnepanelen dat geplaatst moet worden</td><td></td></tr><tr><td>search_criteria</td><td>integer</td><td><p>1 = laagste investeringskosten</p><p>2 = laagste energiekosten</p><p>3 = hoogste rendement op investering</p><p>4 = laagste BENG2 (hoogste energielabel)</p></td><td>3</td></tr><tr><td>target_label</td><td>string</td><td>Gewenst doel energy label - standaard is energielabel A of D</td><td>A+</td></tr><tr><td>max_investment</td><td>integer</td><td>maximale investering, gebruik 0 voor onbeperkt</td><td></td></tr><tr><td>natural_gas</td><td>integer</td><td>1 = geen filter<br>2 = aardgas verplicht<br>3 = aardgasvrij</td><td>1</td></tr><tr><td>heat_pump_allowed</td><td>boolean</td><td><p><code>false</code> = niet toegestaan</p><p><code>true</code> = toegestaan</p></td><td>False</td></tr><tr><td>district_heating_allowed</td><td>boolean</td><td><p><code>false</code> = niet toegestaan</p><p><code>true</code> = toegestaan</p></td><td>False</td></tr><tr><td>heatpump_insulation_req</td><td>integer</td><td><p>Minimale isolatie-eis voordat een warmtepomp is toegestaan.<br>1 = geen minimum vereist</p><p>2 = schil, inclusief glas minimaal 2</p><p>3 = woning voldoet aan “standaard”</p></td><td>1</td></tr><tr><td>exclude_vat</td><td>boolean</td><td><p>Prijzen zijn inclusief of exclusief btw.</p><p>0 = inclusief btw</p><p>1 = exclusief btw</p></td><td>0</td></tr><tr><td>cost_indicators</td><td>dict</td><td>Bekijk <a href="https://docs.altum.ai/verduurzamen/verduurzaming-api-v2/kostenindicatoren">Kostenindicatoren</a></td><td></td></tr><tr><td>wall_filters</td><td>dict</td><td>Bekijk <a href="https://docs.altum.ai/verduurzamen/verduurzaming-api-v2/maatregelen-filters">maatregelen filters</a></td><td></td></tr><tr><td>sloped_roof_filters</td><td>dict</td><td>Bekijk <a href="https://docs.altum.ai/verduurzamen/verduurzaming-api-v2/maatregelen-filters">maatregelen filters</a></td><td></td></tr><tr><td>flat_roof_filters</td><td>dict</td><td>Bekijk <a href="https://docs.altum.ai/verduurzamen/verduurzaming-api-v2/maatregelen-filters">maatregelen filters</a></td><td></td></tr><tr><td>floor_filters</td><td>dict</td><td>Bekijk <a href="https://docs.altum.ai/verduurzamen/verduurzaming-api-v2/maatregelen-filters">maatregelen filters</a></td><td></td></tr><tr><td>energylabel_strict</td><td>integer</td><td>Schakel strikt zoeken van resultaten binnen <code>target_label</code> in met <code>1</code>.</td><td>0</td></tr><tr><td>eco_delta</td><td>boolean</td><td>Ophalen van de Ecowaarde</td><td>1</td></tr><tr><td>lock_measures</td><td>list</td><td>Bekijk <a href="https://docs.altum.ai/verduurzamen/verduurzaming-api-v2/maatregelen-vergrendelen">maatregelen vergrendelen</a></td><td></td></tr><tr><td>exclude_measures</td><td>list</td><td>Bekijk <a href="https://docs.altum.ai/verduurzamen/verduurzaming-api-v2/maatregelen-uitsluiten">maatregelen uitsluiten</a></td><td></td></tr></tbody></table>

{% tabs %}
{% tab title="200: OK Successful response" %}

```
{
  "warnings": [
    {
      "code": "11",
      "description": "Current building with energy label A++ already meets default target_label A+."
    }
  ],
  "address": {
    "housenumber": 87,
    "postcode": "2771DS",
    "houseaddition": null,
    "street": "Zuidkade",
    "city": "Boskoop",
    "location": {
      "lat": 52.0683938167,
      "lon": 4.6580852695
    }
  },
  "building": {
    "build_year": 1961,
    "inner_surface": 131,
    "floor_surface": 80.8,
    "flat_roof_surface": 5.2,
    "pitched_roof_surface": 98.9,
    "wall_surface": 126.1,
    "glass_living_room_surface": 11.1,
    "glass_bedrooms_surface": 16.6,
    "number_of_doors": 6,
    "type": "Vrijstaand"
  },
  "label": {
    "current": "A++",
    "potential": "A++"
  },
  "accuracy_indicator": 6,
  "provided_label": {
    "temporary": "F",
    "definitive": "A+++",
    "definitive_type": "NTA 8800:2024 (basisopname woningbouw)",
    "definitive_validity": "2036-1",
    "definitive_beng2": 49
  },
  "BENG2": {
    "current": 75,
    "potential": 58
  },
  "meta": null,
  "CO2": {
    "current": 3607,
    "potential": 1860
  },
  "grid_import": {
    "current": 10609,
    "potential": 9025
  },
  "grid_feed": {
    "current": 0,
    "potential": 0
  },
  "electricity_need": {
    "current": 10609,
    "potential": 9025
  },
  "financial": {
    "total_investment": 2257,
    "total_saving": 427,
    "months_to_pay_off": 63,
    "eco_value": 0,
    "savings_monthly": 36,
    "energy_cost_monthly": {
      "current": 234,
      "potential": 198
    },
    "energy_cost_yearly": {
      "current": 2803,
      "potential": 2376
    },
    "electricity_cost_yearly": {
      "current": 3439,
      "potential": 3011
    },
    "return_on_investment": "49.35%",
    "loan": {
      "monthly_payment": 9
    }
  },
  "gas_usage": {
    "current": 0,
    "potential": 0
  },
  "electricity_usage": {
    "current": 10613,
    "potential": 10613
  },
  "city_heating_usage": {
    "current": 0,
    "potential": 0
  },
  "energy_prices": {
    "variable_gas_price": 1.359,
    "variable_electricity_price": 0.27,
    "solarpanel_watt_peak_per_m2": 250
  },
  "solar_panels": {
    "summary": {
      "current": {
        "pv_generation": 0,
        "curtailed_pv": 0,
        "self_consumed_pv": 0,
        "self_consumed_ratio": 0,
        "netting_enabled": 1
      },
      "potential": {
        "pv_generation": 1584,
        "curtailed_pv": 0,
        "self_consumed_pv": 1584,
        "self_consumed_ratio": 1,
        "netting_enabled": 1
      }
    },
    "systems": {
      "current": null,
      "potential": [
        {
          "roof_surface": 0,
          "roof_type": "sloped",
          "original_watt_peak_capacity": null,
          "total_watt_peak_capacity": null,
          "inclination_angle": 45,
          "orientation": 180,
          "added_watt_peak_capacity": 1650,
          "specific_watt_peak_of_added_panels": null,
          "added_panels": 4,
          "panel_size": null
        }
      ]
    }
  },
  "battery": {
    "current": [
      {
        "type": "plug_in",
        "capacity": 6,
        "power": 2,
        "control_mode": "pv_only",
        "charge": 0,
        "discharge": 4,
        "cycles": 0.7
      }
    ],
    "potential": [
      {
        "type": "plug_in",
        "capacity": 6,
        "power": 2,
        "control_mode": "pv_only",
        "charge": 4,
        "discharge": 7,
        "cycles": 1.3
      }
    ]
  },
  "measures": {
    "wall_insulation": {
      "before": {
        "desc": "Goed",
        "value": 3,
        "points": 5
      },
      "after": {
        "desc": "Goed",
        "value": 3,
        "points": 5
      },
      "investment": 0,
      "savings": 0,
      "co2_reduce": 0,
      "BENG2": "0",
      "gas_savings": 0,
      "electricity_savings": 0
    },
    "floor_insulation": {
      "before": {
        "desc": "Goed",
        "value": 3,
        "points": 7
      },
      "after": {
        "desc": "Goed",
        "value": 3,
        "points": 7
      },
      "investment": 0,
      "savings": 0,
      "co2_reduce": 0,
      "BENG2": "0",
      "gas_savings": 0,
      "electricity_savings": 0
    },
    "sloped_roof_insulation": {
      "before": {
        "desc": "Geen",
        "value": 1,
        "points": 0
      },
      "after": {
        "desc": "Geen",
        "value": 1,
        "points": 0
      },
      "investment": 0,
      "savings": 0,
      "co2_reduce": 0,
      "BENG2": "0",
      "gas_savings": 0,
      "electricity_savings": 0
    },
    "flat_roof_insulation": {
      "before": {
        "desc": "Geen",
        "value": 1,
        "points": 0
      },
      "after": {
        "desc": "Goed",
        "value": 3,
        "points": 3
      },
      "investment": 484,
      "savings": 990,
      "co2_reduce": 1248,
      "BENG2": "2",
      "gas_savings": 0,
      "electricity_savings": 3675
    },
    "living_room_windows": {
      "before": {
        "desc": "Dubbel glas",
        "value": 2,
        "points": 1
      },
      "after": {
        "desc": "Dubbel glas",
        "value": 2,
        "points": 1
      },
      "investment": 0,
      "savings": 0,
      "co2_reduce": 0,
      "BENG2": "0",
      "gas_savings": 0,
      "electricity_savings": 0
    },
    "bedroom_windows": {
      "before": {
        "desc": "Dubbel glas",
        "value": 2,
        "points": null
      },
      "after": {
        "desc": "Dubbel glas",
        "value": 2,
        "points": null
      },
      "investment": 0,
      "savings": 0,
      "co2_reduce": 0,
      "BENG2": "0",
      "gas_savings": 0,
      "electricity_savings": 0
    },
    "installation": {
      "before": {
        "desc": "Elektrishe lucht-water WP",
        "value": 6,
        "points": 15
      },
      "after": {
        "desc": "Elektrishe lucht-water WP",
        "value": 6,
        "points": 15
      },
      "investment": 0,
      "savings": 0,
      "co2_reduce": 0,
      "BENG2": "0",
      "gas_savings": 0,
      "electricity_savings": 0
    },
    "shower": {
      "before": {
        "desc": "Geen Douche WTW",
        "value": 1,
        "points": null
      },
      "after": {
        "desc": "Geen Douche WTW",
        "value": 1,
        "points": null
      },
      "investment": 0,
      "savings": 0,
      "co2_reduce": 0,
      "BENG2": "0",
      "gas_savings": 0,
      "electricity_savings": 0
    },
    "cooling": {
      "before": {
        "desc": "No cooling",
        "value": 1,
        "points": null
      },
      "after": {
        "desc": "No cooling",
        "value": 1,
        "points": null
      },
      "investment": 0,
      "savings": 0,
      "co2_reduce": 0,
      "BENG2": "0",
      "gas_savings": 0,
      "electricity_savings": 0
    },
    "ventilation": {
      "before": {
        "desc": "Decentrale balansventilatie",
        "value": 4,
        "points": 5
      },
      "after": {
        "desc": "Decentrale balansventilatie",
        "value": 4,
        "points": 5
      },
      "investment": 0,
      "savings": 0,
      "co2_reduce": 0,
      "BENG2": "0",
      "gas_savings": 0,
      "electricity_savings": 0
    },
    "solar_panels": {
      "before": {
        "desc": "0",
        "value": 0,
        "points": null
      },
      "after": {
        "desc": "4",
        "value": 4,
        "points": null
      },
      "investment": 1772,
      "savings": 276,
      "co2_reduce": 498,
      "BENG2": "97",
      "gas_savings": 0,
      "electricity_savings": 1466
    },
    "electric_cooking": {
      "before": {
        "desc": "Electric stove",
        "value": 2,
        "points": null
      },
      "after": {
        "desc": "Electric stove",
        "value": 2,
        "points": null
      },
      "investment": 0,
      "savings": 0,
      "co2_reduce": 0,
      "BENG2": "0",
      "gas_savings": 0,
      "electricity_savings": 0
    }
  },
  "response_meta": null
}
```

{% endtab %}

{% tab title="400: Bad Request Unsuccessful response" %}

```
{
  "detail": "There was an error parsing the body"
}

{
  "detail": "Address not found in database, combination of zip code and house number"
}

{
  "detail": "There are no measures to suggest for this combination of input."
}

{
  "detail": "No housing variant with the selected installation options found with which the goal can be reached within the investment limit. Try again with different inputs and/or different search criteria."
}
{
  "detail": "For a given custom cost make sure the parameter 'value' is provided."
}
{
  "detail": "For a given improvement cost make sure all four parameters: 'material', 'work', 'saving_material' and 'saving _work' are provided."
}
```

{% endtab %}

{% tab title="401: Unauthorized No access" %}

```
{
    'Output': 'Please use https://api.altum.ai or visit https://mopsus.altum.ai to make your request.'
}
```

{% endtab %}

{% tab title="422: Unprocessable Entity Wrong input format" %}

```
{
  "detail": [
    {
      "loc": [
        "string"
      ],
      "msg": "string",
      "type": "string"
    }
  ]
}
```

{% endtab %}

{% tab title="500: Internal Server Error Service is not available and/or down" %}

```
{
	"message": "Internal server error"
}
```

{% endtab %}

{% tab title="403: Forbidden Forbidden" %}

```
{
	"message": "Missing Authentication Token"
}
```

{% endtab %}

{% tab title="301: Moved Permanently Apartment  error" %}

```
{
    "detail": "Unable to check apartment."
}
```

{% endtab %}

{% tab title="303: See Other house type error" %}

```
{ 
  "detail": "House type not found in database. Use house_type parameter instead." 
}
```

{% endtab %}
{% endtabs %}

{% tabs %}
{% tab title="400: Bad Request Unsuccessful response" %}

```
{
  "detail": "There was an error parsing the body"
}

{
  "detail": "Address not found in database, combination of zip code and house number"
}

{
  "detail": "There are no measures to suggest for this combination of input."
}

{
  "detail": "No housing variant with the selected installation options found with which the goal can be reached within the investment limit. Try again with different inputs and/or different search criteria."
}
```

{% endtab %}

{% tab title="401: Unauthorized No access" %}

```
{
    'Output': 'Please use https://api.altum.ai or visit https://mopsus.altum.ai to make your request.'
}
```

{% endtab %}

{% tab title="422: Unprocessable Entity Wrong input format" %}

```
{
  "detail": [
    {
      "loc": [
        "string"
      ],
      "msg": "string",
      "type": "string"
    }
  ]
}
```

{% endtab %}

{% tab title="500: Internal Server Error Service is not available and/or down" %}

```
{
	"message": "Internal server error"
}
```

{% endtab %}

{% tab title="403: Forbidden Forbidden" %}

```
{
	"message": "Missing Authentication Token"
}
```

{% endtab %}

{% tab title="301: Moved Permanently Apartment  error" %}

```
{
    "detail": "Unable to check apartment."
}
```

{% endtab %}

{% tab title="303: See Other house type error" %}

```
{ 
  "detail": "House type not found in database. Use house_type parameter instead." 
}
```

{% endtab %}
{% endtabs %}

## Request body

#### Voorbeeld requests

```
{
    "post_code": "2771DS",
    "house_number": "87",
    "target_label": "A++++",
    "eco_delta": 0
}
```


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.altum.ai/verduurzamen/verduurzaming-api-v2/authenticatie-invoer-en-resultaat.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
