# Specifications for non independent home version 01-01-2026

### 2. Non-Independent Homes (Type B)

**Endpoint:** <mark style="color:green;">`POST`</mark> `https://api.altum.ai/wws/non/01012026`

Calculates points for shared housing (Onzelfstandige woonruimte), such as student rooms or rooms in a shared house.

{% hint style="info" %}
&#x20;<mark style="color:orange;">\*</mark> <mark style="color:$info;">:</mark>  means this feature is mandatory; otherwise, it is optional.
{% endhint %}

#### 2.1 Root Object Parameters

| Parameter                                                   | Type    | Description                                                                                         | Allowed Values                                       |
| ----------------------------------------------------------- | ------- | --------------------------------------------------------------------------------------------------- | ---------------------------------------------------- |
| `build_year` <mark style="color:orange;">\*</mark>          | Integer | Year of construction.                                                                               | e.g., `1990`                                         |
| `usable_surface_area` <mark style="color:orange;">\*</mark> | Float   | Total usable floor area of the unit (m²).                                                           | > 0                                                  |
| `corop_region` <mark style="color:orange;">\*</mark>        | String  | COROP region name (lowercase).                                                                      | See COROP list in §2.3                               |
| `woz_value`                                                 | Float   | WOZ value of the entire unit (€).                                                                   | ≥ 0                                                  |
| `avg_woz_perm2_percorop_ref_year`                           | Object  | Map of average WOZ/m² per COROP region. If missing or key not found, Rubriek 11 defaults to 10 pts. | e.g. `{"greater amsterdam": 5500}`                   |
| `energy_label`                                              | String  | Energy label.                                                                                       | `A++++` ... `G`, `""`                                |
| `energy_index`                                              | Float   | Energy index (used if no label).                                                                    | ≥ 0                                                  |
| `monument`                                                  | String  | Monument status. **Different values from Type A.**                                                  | `rijksmonument`, `gemeentelijk`, `provinciaal`, `""` |
| `care_home`                                                 | Boolean | Care home designation — multiplies R1–R11 subtotal by 1.35.                                         | `true`, `false`                                      |
| `doorbell_video`                                            | Boolean | Video doorbell (+0.25 pts).                                                                         | `true`, `false`                                      |
| `private_charging_station`                                  | Boolean | Private EV charging station (+2.0 pts).                                                             | `true`, `false`                                      |
| `contract_date`                                             | String  | Lease start date. Affects monument points (pre/post July 2024).                                     | `YYYY-MM-DD`                                         |
| `pts_7_handicap`                                            | Float   | Pre-calculated disability adaptation points (Rubriek 7).                                            | ≥ 0                                                  |
| `deduction_small_area`                                      | Boolean | Triggers -4 pt deduction if private room m² < 8 m².                                                 | `true`, `false`                                      |
| `deduction_landlord_access`                                 | Boolean | -4 pt deduction: landlord has access through the space.                                             | `true`, `false`                                      |
| `deduction_small_window`                                    | Boolean | -4 pt deduction: window surface too small.                                                          | `true`, `false`                                      |
| `deduction_high_window`                                     | Boolean | -4 pt deduction: window frame too high.                                                             | `true`, `false`                                      |
| rooms                                                       | List    | List of Room objects.                                                                               | —                                                    |
| other\_spaces                                               | List    | List of Other Space objects.                                                                        | —                                                    |
| kitchen                                                     | List    | List of Kitchen objects.                                                                            | —                                                    |
| sanitary                                                    | List    | List of Sanitary objects (bathrooms/shower rooms).                                                  | —                                                    |
| toilet                                                      | List    | List of Toilet objects (standalone toilet rooms).                                                   | —                                                    |
| outdoor                                                     | List    | List of Outdoor objects.                                                                            | —                                                    |
| parking                                                     | List    | List of Parking objects.                                                                            | —                                                    |

#### 2.2 Nested Objects (Type B)

> **Note on sharing fields:**
>
> * `shared_addresses` = number of separate dwelling addresses sharing this space (across buildings/addresses).
> * `shared_spaces` = number of units on the **same** address sharing this space.

**`rooms` (List)**

*Private rooms (Vertrekken — counted for Rubriek 1).*

<table><thead><tr><th width="224.60003662109375">Field</th><th width="157">Type</th><th>Description</th></tr></thead><tbody><tr><td><code>surface_area</code></td><td>Float</td><td>Area in m²</td></tr><tr><td><code>units_with_access</code></td><td>Integer</td><td>How many units share this room. <code>1</code> = private.</td></tr><tr><td><code>shared_spaces</code></td><td>Integer</td><td>Units on this address sharing the room.</td></tr><tr><td><code>heated</code></td><td>Boolean</td><td>Is it heated?</td></tr><tr><td><code>cooled</code></td><td>Boolean</td><td>Is it cooled?</td></tr><tr><td><code>open_kitchen</code></td><td>Boolean</td><td>Room contains an open kitchen (+2 extra heating pts if heated).</td></tr></tbody></table>

**Example 1: Private Student Room (Heated)**

```
{
  "surface_area": 18.0,
  "heated": true,
  "cooled": false,
  "units_with_access": 1,
  "open_kitchen": false
}
```

**Example 2: Shared Living Room (4 people)**

```
{
  "surface_area": 30.0,
  "heated": true,
  "units_with_access": 4,
  "open_kitchen": true
}
```

**`other_spaces` (List)**

*Other spaces (Overige ruimten — counted for Rubriek 2 at 0.75 pt/m²).*

<table><thead><tr><th>Field</th><th width="212.2000732421875">Type</th><th>Description</th></tr></thead><tbody><tr><td><code>surface_area</code></td><td>Float</td><td>Area in m²</td></tr><tr><td><code>units_with_access</code></td><td>Integer</td><td>Units with access.</td></tr><tr><td><code>shared_addresses</code></td><td>Integer</td><td>Addresses sharing this space.</td></tr><tr><td><code>shared_spaces</code></td><td>Integer</td><td>Units on this address sharing the space.</td></tr><tr><td><code>heated</code></td><td>Boolean</td><td>Is it heated?</td></tr><tr><td><code>cooled</code></td><td>Boolean</td><td>Is it cooled?</td></tr><tr><td><code>attic_no_fixed_stairs</code></td><td>Boolean</td><td>Attic with ladder only — applies 5 pt deduction.</td></tr></tbody></table>

**`kitchen` (List)**

*Shared or private kitchen.*

| Field                                                     | Type    | Description                                                                                                  |
| --------------------------------------------------------- | ------- | ------------------------------------------------------------------------------------------------------------ |
| `countertop_length` <mark style="color:orange;">\*</mark> | Float   | Length in meters. `< 1m` = 0 pts, `≥ 1m` = 4 pts, `≥ 2m` = 7 pts, `≥ 3m` = 10 pts, `≥ 5m + 8 units` = 13 pts |
| `shared_addresses`                                        | Integer | Addresses sharing this kitchen.                                                                              |
| `shared_spaces`                                           | Integer | Units on this address sharing the kitchen.                                                                   |
| `features` <mark style="color:orange;">\*</mark>          | Object  | Kitchen features (Booleans). See table below.                                                                |

**Kitchen Features Object (Type B)** *All values are Booleans unless noted.*

| Feature                |   Type  |
| ---------------------- | :-----: |
| `extractor_hood`       | Boolean |
| `induction_hob`        | Boolean |
| `ceramic_hob`          | Boolean |
| `gas_hob`              | Boolean |
| `fridge`               | Boolean |
| `freezer`              | Boolean |
| `oven_electric`        | Boolean |
| `oven_gas`             | Boolean |
| `microwave`            | Boolean |
| `dishwasher`           | Boolean |
| `extra_cupboards_60cm` | Integer |
| `single_lever_tap`     | Boolean |
| `thermostatic_tap`     | Boolean |
| `boiling_water_tap`    | Boolean |

**Example 1: Shared Kitchen (4 people, basic features)**

```
{
  "countertop_length": 2.5,
  "shared_spaces": 4,
  "features": {
    "gas_hob": true,
    "fridge": true,
    "dishwasher": false,
    "single_lever_tap": true
  }
}
```

**Example 2: Private Kitchenette (Inside room, induction)**

```
{
  "countertop_length": 1.5,
  "shared_spaces": 1,
  "features": {
    "induction_hob": true,
    "fridge": true,
    "boiling_water_tap": false,
    "extra_cupboards_60cm": 0
  }
}
```

**`sanitary` (List)**

*Bathrooms / shower rooms.*

<table><thead><tr><th width="241.5999755859375">Field</th><th width="171.4000244140625">Type</th><th>Description</th></tr></thead><tbody><tr><td><code>type</code> <mark style="color:orange;">*</mark></td><td>String</td><td>Wash facility type. <code>shower</code>, <code>bath</code>, <code>bath_shower</code>, <code>none</code></td></tr><tr><td><code>shared_addresses</code></td><td>Integer</td><td>Addresses sharing this bathroom.</td></tr><tr><td><code>shared_spaces</code></td><td>Integer</td><td>Units on this address sharing the bathroom.</td></tr><tr><td><code>has_toilet</code></td><td>Boolean</td><td>Contains a toilet? (+2.0 pts standard, +2.75 pts if wall-hung)</td></tr><tr><td><code>wall_hung_toilet</code></td><td>Boolean</td><td>Is the toilet wall-hung? (only relevant if <code>has_toilet=true</code>)</td></tr><tr><td><code>basin</code></td><td>Boolean</td><td>Has single washbasin? (+1.0 pt)</td></tr><tr><td><code>multi_basin</code></td><td>Boolean</td><td>Has multi-person washbasin? (+1.5 pts)</td></tr><tr><td><code>features</code> <mark style="color:orange;">*</mark></td><td>Object</td><td>Sanitary features (Booleans). See table below.</td></tr></tbody></table>

**Sanitary Features Object (Type B)** *All values are Booleans unless noted.* *Extra feature points are capped at the wash facility base points.*

| Feature            |   Type  |
| ------------------ | :-----: |
| `bubble_bath`      | Boolean |
| `shower_wall`      | Boolean |
| `towel_radiator`   | Boolean |
| `built_in_cabinet` | Boolean |
| `cabinet_count`    | Integer |
| `sockets`          | Integer |
| `single_lever_tap` | Boolean |
| `thermostatic_tap` | Boolean |

**Example 1: Shared Shower Room**

```
{
  "type": "shower",
  "shared_spaces": 3,
  "has_toilet": false,
  "features": {
    "thermostatic_tap": true,
    "shower_wall": false
  }
}
```

**Example 2: Private En-suite (Bath+Shower)**

```
{
  "type": "bath_shower",
  "shared_spaces": 1,
  "has_toilet": true,
  "wall_hung_toilet": true,
  "basin": true,
  "features": {
    "towel_radiator": true,
    "bubble_bath": true,
    "sockets": 1
  }
}
```

**`toilet` (List)**

*Separate toilet rooms (not inside a bathroom).*

| Field              | Type    | Description                                          |
| ------------------ | ------- | ---------------------------------------------------- |
| `shared_addresses` | Integer | Addresses sharing this toilet.                       |
| `shared_spaces`    | Integer | Units on this address sharing the toilet.            |
| `wall_hung`        | Boolean | Wall-hung toilet (+3.75 pts) vs standard (+3.0 pts). |

**Example 1: Shared Hallway Toilet**

```
{
  "wall_hung": false,
  "shared_spaces": 4
}
```

**Example 2: Private Wall-Hung Toilet**

```
{
  "wall_hung": true,
  "shared_spaces": 1
}
```

**`outdoor` (List)**

*Gardens, balconies, terraces.*

<table><thead><tr><th>Field</th><th width="178.60009765625">Type</th><th>Description</th></tr></thead><tbody><tr><td><code>surface_area</code></td><td>Float</td><td>Area in m²</td></tr><tr><td><code>shared_addresses</code></td><td>Integer</td><td>Addresses sharing this outdoor space.</td></tr><tr><td><code>shared_spaces</code></td><td>Integer</td><td>Units on this address sharing the space.</td></tr></tbody></table>

**Example 1: Shared Terrace**

```
{
  "surface_area": 20.0,
  "shared_spaces": 4
}
```

**Example 2: Private Balcony**

```
{
  "surface_area": 4.0,
  "shared_spaces": 1
}
```

**`parking` (List)**

*Parking spaces.*

| Field                                        | Type    | Description                                         |
| -------------------------------------------- | ------- | --------------------------------------------------- |
| `type` <mark style="color:orange;">\*</mark> | String  | `garage` (9 pts), `covered` (6 pts), `open` (4 pts) |
| `shared_addresses`                           | Integer | Addresses sharing this parking space.               |
| `shared_spaces`                              | Integer | Units on this address sharing the space.            |
| `charging_station`                           | Boolean | Has EV charging point (+2 pts ÷ shared\_addresses). |

**Example 1: Covered Shared Parking**

```
{
  "type": "covered",
  "shared_spaces": 10,
  "charging_station": false
}
```

**Example 2: Private Garage Spot (EV)**

```
{
  "type": "garage",
  "shared_spaces": 1,
  "charging_station": true
}
```

#### 2.3 COROP Regions (Lowercase)

```
`east groningen`  `delfzijl and surroundings` `other groningen`  `north friesland`
`southwest friesland` `southeast friesland` `north drenthe` `southeast drenthe` 
`southwest drenthe``north overijssel``southwest overijssel``twente``veluwe` `back corner` 
`arnhem/nijmegen` `southwest gelderland` `utrecht` `head of north holland`
`alkmaar and surroundings` `ijmond` `haarlem agglomeration``zaan region` `greater amsterdam` 
`the gooi and vecht region``leiden and bulb region agglomeration``agglomeration of the hague` 
`delft westland``east south holland` `greater rhine estuary` `southeast south holland`
`zeelandic flanders` `other zeeland` `west north brabant``central north brabant` 
`northeast north brabant``southeast north brabant` `north limburg` `central limburg` 
`south limburg` `flevoland`
```

#### 2.4 Example JSON (Type B)

```json
{
  "build_year": 1998,
  "woz_value": 180000,
  "usable_surface_area": 25.0,
  "corop_region": "greater amsterdam",
  "avg_woz_perm2_percorop_ref_year": {
    "greater amsterdam": 5500
  },
  "energy_label": "C",
  "energy_index": 0,
  "monument": "",
  "care_home": false,
  "doorbell_video": false,
  "private_charging_station": false,
  "contract_date": "2024-06-01",
  "pts_7_handicap": 0.0,
  "deduction_small_area": false,
  "deduction_landlord_access": false,
  "deduction_small_window": false,
  "deduction_high_window": false,
  "rooms": [
    {
      "surface_area": 15.0,
      "units_with_access": 1,
      "shared_spaces": 1,
      "heated": true,
      "cooled": false,
      "open_kitchen": false
    }
  ],
  "other_spaces": [
    {
      "surface_area": 6.0,
      "shared_addresses": 1,
      "shared_spaces": 1,
      "units_with_access": 1,
      "heated": false,
      "cooled": false,
      "attic_no_fixed_stairs": false
    }
  ],
  "kitchen": [
    {
      "countertop_length": 2.0,
      "shared_addresses": 1,
      "shared_spaces": 4,
      "features": {
        "extractor_hood": true,
        "induction_hob": false,
        "ceramic_hob": true,
        "gas_hob": false,
        "fridge": true,
        "freezer": false,
        "oven_electric": true,
        "oven_gas": false,
        "microwave": false,
        "dishwasher": false,
        "extra_cupboards_60cm": 1,
        "single_lever_tap": true,
        "thermostatic_tap": false,
        "boiling_water_tap": false
      }
    }
  ],
  "sanitary": [
    {
      "type": "shower",
      "shared_addresses": 1,
      "shared_spaces": 4,
      "has_toilet": true,
      "wall_hung_toilet": false,
      "basin": true,
      "multi_basin": false,
      "features": {
        "bubble_bath": false,
        "shower_wall": true,
        "towel_radiator": false,
        "built_in_cabinet": false,
        "cabinet_count": 0,
        "sockets": 1,
        "single_lever_tap": true,
        "thermostatic_tap": false
      }
    }
  ],
  "toilet": [
    {
      "shared_addresses": 1,
      "shared_spaces": 4,
      "wall_hung": false
    }
  ],
  "outdoor": [
    {
      "surface_area": 10.0,
      "shared_addresses": 1,
      "shared_spaces": 4
    }
  ],
  "parking": [
    {
      "type": "covered",
      "shared_addresses": 1,
      "shared_spaces": 4,
      "charging_station": false
    }
  ]
}
```
