Input explanation for version 01-01-2025
This page is about the input features for the endpoints that are for the version 01-07-2024. A full explanation of the features is covered, and also the structure of the input and the blocks in it.
WWS Points API — 01-01-2025 Rules
Overview
This page describes the JSON structure required for submitting property details to the API for calculating WWS points according to the 01-01-2025 rules. Each section of the JSON corresponds to different aspects of a property, including rooms, kitchen features, parking, sanitary facilities, and more. The specification is split into:
A. Independent living spaces
B. Non-independent living spaces
A. Independent living spaces
General Property Attributes
house_type
str
"row house"
Required string describing property type.
build_year
int
1995
Must be a positive integer. Used if no valid energy label/index.
energy_label
str
"A", "B", ""
Optional — allowed values in code; if empty and energy_index_existence is True, energy_index is required.
energy_index_existence
bool
True
If True and energy_label is empty, energy_index is required and used for points calculation.
energy_index
float
1.45
Used only if energy_label is empty and energy_index_existence is True.
energy_performance_compensation
bool
True
Boolean flag for compensation calculation.
disability_costs
float
1200.0
No negative values allowed.
disabled_people
int
1
Integer ≥ 0.
monument
str
"national", "municipal", "provincial", ""
Lower-case string; only allowed values.
doorbell
bool
True
Boolean flag.
woz_value
float
250000.0
Must be ≥ 0; minimum WOZ used in calc: 77582.
woz_valuation_year
int
2023
Must be 2023 or 2024.
usable_surface_area
float
85.5
Must be ≥ 0.
corop_area_amsterdam_or_utrecht
bool
True
Boolean flag.
care_home
bool
True
Boolean flag.
1. rooms block
rooms blockOverview: Describes each non-kitchen, non-sanitary room.
type_of_room
str
"room"
"room" or "other".
attic_without_fixed_staircase
bool
True
Relevant if type is "other" and it's an attic.
surface_area
float
12.5
Must be ≥ 0.
shared_addresses
int
1
≥ 1.
heated
bool
True
Boolean flag.
cooled
bool
True
Boolean flag.
Example:
2. kitchen block
kitchen blocktype_of_room
string
"room"
"room" or "other".
open_kitchen
boolean
false
True if open to another room.
surface_area
number
10.0
Area in m².
countertop_length
number
2.5
Counter length in meters.
shared_addresses
integer
1
Addresses sharing kitchen.
heated
boolean
true
Has heating.
cooled
boolean
true
Has cooling.
kitchen_features
object
see below
Keys are features, values are counts.
Example:
Same structure as 2024, no changes only shared_addresses is used (no shared_spaces here). All kitchen features are integer counts.
3. sanitary block
sanitary blocktype_of_room
str
"room"
"room" or "other".
surface_area
float
10.0
≥ 0.
heated
bool
True
Boolean flag.
cooled
bool
True
Boolean flag.
shower_facility
str
"shower/bath"
"bath", "shower", "shower/bath".
toilet
int
2
Count.
wall_hung_toilet
int
1
Count — note: int, not bool.
shared_addresses
int
1
≥ 1.
sanitary_features
dict[str,int/bool]
{ "washbasin": 1, ... }
Feature counts or booleans.
Example:
4. toilet block
toilet blocktype_of_room
string
"room"
"room" or "other".
surface_area
number
2.0
m².
heated
boolean
true
Has heating.
cooled
boolean
false
Has cooling.
wall_hung_toilet
boolean
false
Wall-mounted toilet.
washbasin
integer
1
Count.
shared_addresses
integer
1
Addresses sharing.
Same fields as 2024, but here wall_hung_toilet is bool.
5. outdoor block
outdoor blocksurface_area
number
50.0
m².
shared_addresses
integer
1
Addresses sharing.
Same as 2024, only shared_addresses exists.
6. parking block
parking blockparking_type
integer
2
Parking type code.
shared_addresses
integer
1
Addresses sharing.
charging_station
boolean
false
Has charging station.
Same as 2024, only shared_addresses exists.
B. Non-independent living spaces
General Property Attributes
Same as independent except:
glass_surface_living_room(boolean)lowest_window_frame_living_room(boolean)accessibility_via_landlord(boolean)corop_regioninstead of Amsterdam/Utrecht flag.
Important: Every block in B has both shared_addresses and shared_spaces.
1. rooms block (B)
rooms block (B)Same as A rooms plus:
shared_spaces(int) — number of living spaces sharing the room.
2. kitchen block (B)
kitchen block (B)Same as A kitchen plus:
shared_spaces(int) — number of living spaces sharing the kitchen.
3. sanitary block (B)
sanitary block (B)Same as A sanitary plus:
shared_spaces(int) — number of living spaces sharing the sanitary facility.
4. toilet block (B)
toilet block (B)Same as A toilet plus:
shared_spaces(int) — number of living spaces sharing the toilet facility.
(Still: wall_hung_toilet is bool here.)
5. outdoor block (B)
outdoor block (B)Same as A outdoor plus:
shared_spaces(int).
6. parking block (B)
parking block (B)Same as A parking plus:
shared_spaces(int).
Body Request Example for Independent Home 01/01/2025
Body Request Example for non Independent Home 01/01/2025
Last updated