# Quickstart
> Van inloggen tot je eerste woningwaarde.
Bron: https://huispedia.dev/nl/docs/quickstart/
1. Log in op [https://huispedia.dev/nl/dashboard/signin/](https://huispedia.dev/nl/dashboard/signin/) met je huispedia.nl- of Pro-account.
2. Kies je plan; Free kan ook.
3. Maak onder *API-sleutels* een API-sleutel (`hp_…`). Je ziet hem één keer.
4. Waardeer een woning:
```bash
curl https://huispedia.dev/v5/properties/1076LJ-12-2/valuation \
-H "X-API-Key: $HUISPEDIA_KEY"
```
Zo ziet het antwoord eruit
```json
{
"address": {
"bag_id": "0363200000028422", "postcode": "1076LJ", "house_number": 12, "house_number_ext": "2",
"street": "Amazonenstraat", "city": "Amsterdam", "municipality": "Amsterdam", "province": "Noord-Holland",
"location": { "lat": 52.34536032, "lon": 4.86274012 },
"huispedia_url": "https://huispedia.nl/amsterdam/1076LJ/amazonenstraat/12-2"
},
"valuation": { "value": 888264, "lower": 838099, "upper": 941431, "interval": 0.8, "price_per_m2": 9064, "as_of_date": "2026-10-26", "model": "avm4", "model_version": "2026.10" },
"confidence": { "score_pct": 90.3, "class": "high", "within_5_pct": 45.2, "within_10_pct": 90.3, "within_20_pct": 100.0 },
"meta": { "request_id": "req_01M5W27EFJTGG4DQDJ6DVK3NVY", "as_of": "2026-10-26", "credits": { "charged": 8, "balance": 192 } }
}
```
`value` is de Huispedia Woningwaarde; de werkelijke waarde ligt met 80% zekerheid tussen `lower` en `upper`.
## Verder
- [Datacatalogus](https://huispedia.dev/nl/docs/catalogue/): wat je nog meer opvraagt.
- [Endpoints](https://huispedia.dev/nl/docs/endpoints/): elk endpoint, ingelogd te proberen met je eigen credits.
- [Adressen en gebieden](https://huispedia.dev/nl/docs/locators/): een woning aanduiden met een BAG-id of een gebied met een CBS-code.
- [Claude Code-plugin](https://huispedia.dev/nl/docs/claude/): laat Claude Code je aanroepen schrijven.
- [Overstappen van Altum](https://huispedia.dev/nl/docs/migrate/altum/)
- [Overstappen van Matrixian](https://huispedia.dev/nl/docs/migrate/matrixian/)
---
# Datacatalogus
> Wat elk endpoint teruggeeft en wat het kost.
Bron: https://huispedia.dev/nl/docs/catalogue/
Elk endpoint met zijn credits, velden en bronnen staat in de catalogus: [`GET https://huispedia.dev/v5/catalog`](https://huispedia.dev/v5/catalog) (JSON, zonder sleutel) en het [OpenAPI-document](https://huispedia.dev/openapi.nl.json).
## Plannen
Elke maand credits, goedkoper dan los. Zie [Credits en prijzen](https://huispedia.dev/nl/docs/credits/).
De plannen met hun prijzen en credits staan onder `packs` in [`GET https://huispedia.dev/v5/catalog`](https://huispedia.dev/v5/catalog).
## Overstappen
- [Van Altum](https://huispedia.dev/nl/docs/migrate/altum/)
- [Van Matrixian](https://huispedia.dev/nl/docs/migrate/matrixian/)
---
# Authenticatie
> Zo stuur je je API-sleutel mee.
Bron: https://huispedia.dev/nl/docs/authentication/
Stuur je sleutel in de header `X-API-Key: hp_…` of `Authorization: Bearer hp_…`, nooit in de URL.
- **Een sleutel zie je één keer.** Kwijt? Maak een nieuwe en trek de oude in.
- **Per sleutel** stel je eventueel een vervaldatum en een IP-lijst in.
- **Een sleutel hoort bij één account**: je eigen account of een Pro-organisatie die je beheert. Wisselen doe je in het dashboard.
- **`console`** in je request-log is de tijdelijke sleutel van de endpoints-pagina en de quickstart.
Werkt je sleutel niet, dan krijg je een `401` of `403`; de [foutcodes](https://huispedia.dev/nl/docs/errors/) zeggen waarom.
---
# Credits en prijzen
> Wat een aanroep kost en welke credits eerst gaan.
Bron: https://huispedia.dev/nl/docs/credits/
Elk endpoint kost een vast aantal credits. Een credit is €0,05 excl. btw; op het Free-plan krijgt elk gebruikersaccount 200 gratis credits per maand.
Elk endpoint met zijn credits, velden en bronnen staat in de catalogus: [`GET https://huispedia.dev/v5/catalog`](https://huispedia.dev/v5/catalog) (JSON, zonder sleutel) en het [OpenAPI-document](https://huispedia.dev/openapi.nl.json).
**Wat kost en wat niet.** Alleen een geslaagd antwoord (2xx) kost credits. Een 404, een validatiefout of een storing kost niets, net als `HEAD`. In een scenariowaardering betaal je per geslaagde rij en per scenario.
**Welke credits eerst.** Eerst je gratis credits, dan die van je plan, dan je gekochte credits, de oudste eerst. Gekochte credits zijn 12 maanden geldig; per bundel zie je in het dashboard tot wanneer.
**Uitgavenlimiet.** Standaard 2.000 gekochte credits (€100 excl. btw) per maand, bovenop je gratis credits en je plan. Je verhoogt hem onder *Instellingen*; bij de limiet antwoordt de API `402 spend_cap_reached`.
**Transacties.** Transactieprijzen krijg je met een contract; neem contact op via [sales@huispedia.nl](mailto:sales@huispedia.nl). Kadaster-transactierecords in een antwoord tellen in `X-Kadaster-Records` en staan als eigen regel op je maandoverzicht.
## Plannen
Met een betaald plan krijg je elke maand credits voor een vaste prijs, goedkoper dan los. Plancredits die je niet gebruikt, vervallen aan het eind van de maand. Credits die je erbij koopt, kosten altijd €0,05 excl. btw en zijn 12 maanden geldig, ook met een plan. Meer korting krijg je met een groter plan.
Wat een endpoint aan credits kost, staat in de catalogus. Verandert dat, dan hoor je het minstens 30 dagen vooraf per e-mail.
De plannen met hun prijzen en credits staan onder `packs` in [`GET https://huispedia.dev/v5/catalog`](https://huispedia.dev/v5/catalog).
---
# Betalen en facturen
> Plannen, credits kopen, automatisch opwaarderen, facturen en terugbetalingen.
Bron: https://huispedia.dev/nl/docs/billing/
Je koopt credits onder [Betalen](https://huispedia.dev/nl/dashboard/billing/), met creditcard of iDEAL | Wero, tussen €10 en €5.000 per keer. Een credit kost €0,05 excl. btw. Gekochte credits zijn 12 maanden geldig.
**Plannen.** Free is het plan zonder abonnement. Een betaald plan kies je onder *Betalen* en betaal je maandelijks met je creditcard. Een groter plan gaat meteen in: je betaalt het verschil voor de rest van de maand en krijgt de extra credits erbij. Een kleiner plan gaat in bij de volgende verlenging. Opzeggen kan altijd; je plan loopt dan tot het eind van de maand en daarna heb je Free. Lukt een verlenging niet, dan proberen we het nog een paar keer en krijg je bericht. De credits van die maand krijg je zodra de betaling lukt; lukt die niet, dan stopt je plan.
**Automatisch opwaarderen.** Zakt je saldo onder een drempel die je kiest, dan schrijven we een vast bedrag af van je opgeslagen creditcard, tot een maandmaximum. Na drie mislukte afschrijvingen, of als je de creditcard verwijdert, zetten we het uit en krijg je bericht.
**Facturen.** Bedragen zijn excl. btw; de 21% btw komt erbij. Elke betaling geeft een factuur met je factuurgegevens, je inkoopnummer (PO) als je dat invult, en de btw. Onder *Facturen* staan de factuur als pdf en het betaalbewijs.
**Terugbetalingen.** Bij een terugbetaling of chargeback gaan de gekochte credits of plancredits weer van je saldo. Wat je al had uitgegeven, staat als negatief saldo; je volgende opwaardering vult dat eerst aan. Een chargeback schort je account op tot hij is opgelost en stopt je plan.
---
# Adressen en gebieden
> Een woning of een gebied aanduiden in het pad.
Bron: https://huispedia.dev/nl/docs/locators/
## Woningen
Een woning staat in het pad als `:locator`, in een van twee vormen:
| Vorm | Voorbeeld | Wat je opgeeft |
|---|---|---|
| BAG-nummeraanduiding | `bag:0363200000028422` | Het 16-cijferige BAG-id van het adres |
| Postcode-adres | `1076LJ-12-2` | Postcode, huisnummer en eventueel de toevoeging; hoofdletters en spaties maken niet uit |
Weet je de toevoeging niet? `GET /v5/addresses/suggest?q=Amazonenstraat 12, Amsterdam` zoekt het adres op (gratis); `GET /v5/addresses/1076LJ-12?all=true` geeft alle woningen op een huisnummer.
In een POST-body (scenariowaarderingen) identificeer je een woning met `locator`, `bag_id` of `postcode` + `house_number` (+ `house_number_ext`).
## Gebieden
Een gebied staat in het pad als `:area`, altijd als `niveau:code`:
| Niveau | Code | Voorbeeld |
|---|---|---|
| `neighbourhood` | CBS-buurtcode | `neighbourhood:BU0363KH05` |
| `district` | CBS-wijkcode | `district:WK0363KH` |
| `municipality` | CBS-gemeentecode | `municipality:GM0363` |
| `province` | CBS-provinciecode | `province:PV27` |
| `postcode4` | De vier cijfers van de postcode | `postcode4:1076` |
| `postcode6` | De volledige postcode | `postcode6:1076LJ` |
| `national` | Geen code | `national` |
De CBS-codes staan in elk antwoord over een adres, of zoek ze op met `GET /v5/areas/lookup?postcode=1076LJ`. Statistieken, prijsindex en demografie zijn er per buurt, wijk, gemeente, provincie en land.
---
# Endpoints
> Elk endpoint met parameters en antwoorden, direct te proberen.
Bron: https://huispedia.dev/nl/docs/endpoints/
Elk endpoint met zijn parameters en antwoorden: [OpenAPI 3.1](https://huispedia.dev/openapi.nl.json) (Engels: [https://huispedia.dev/openapi.json](https://huispedia.dev/openapi.json)). Uitproberen met je eigen credits kan op [https://huispedia.dev/nl/docs/endpoints/](https://huispedia.dev/nl/docs/endpoints/) als je bent ingelogd.
---
# Fouten
> Elke foutcode en wat je eraan doet.
Bron: https://huispedia.dev/nl/docs/errors/
Een fout is `application/problem+json` (RFC 9457) met een vaste `code`; `detail` zegt in je `Accept-Language` wat je kunt doen. Een fout kost geen credits.
```json
{
"type": "https://huispedia.dev/nl/docs/errors#insufficient_credits",
"title": "Onvoldoende credits",
"status": 402,
"code": "insufficient_credits",
"detail": "Deze aanroep kost 8 credits; je saldo is 3. Koop credits in het dashboard.",
"request_id": "req_01M4…",
"errors": []
}
```
| HTTP | `code` | Wanneer |
|---|---|---|
| 400 | `invalid_request` | Het verzoek klopt niet; `errors` noemt per veld wat er mis is |
| 401 | `unauthenticated` | Geen of onbekende sleutel |
| 401 | `key_revoked`, `key_expired` | Sleutel ingetrokken of verlopen |
| 402 | `insufficient_credits` | Je saldo dekt de aanroep niet |
| 402 | `spend_cap_reached` | Je uitgavenlimiet van deze maand is bereikt |
| 403 | `entitlement_required` | Dit endpoint hoort niet bij je account |
| 403 | `ip_not_allowed` | IP-adres buiten de lijst van de sleutel |
| 403 | `account_suspended` | Account opgeschort |
| 403 | `forbidden` | Je mag dit niet met dit account |
| 404 | `not_found` | De locator vindt niets |
| 405 | `method_not_allowed` | Deze methode bestaat niet op dit pad |
| 409 | `address_ambiguous` | Meerdere woningen op het adres; `errors` bevat de kandidaten |
| 409 | `conflict` | De actie botst met de huidige staat; `detail` zegt wat |
| 422 | `data_unavailable` | De woning of het gebied bestaat, maar deze gegevens zijn er niet voor |
| 429 | `rate_limited` | Limiet per sleutel of account; zie `Retry-After` |
| 503 | `upstream_unavailable` | Tijdelijk niet beschikbaar; zie `Retry-After` |
| 503 | `billing_unavailable` | Betalen is op dit moment niet mogelijk |
| 500 | `internal_error` | Een fout aan onze kant; noem het `request_id` |
---
# Limieten
> Aanroepen per seconde per plan, en hoe lang je een antwoord mag bewaren.
Bron: https://huispedia.dev/nl/docs/rate-limits/
| Plan | Per seconde | Tegelijk | Signaalwaarde per dag |
|---|---|---|---|
| Free | 1 aanroep, burst 5 | 2 | 500 aanroepen |
| Starter, Growth, Scale, Pro | 6 aanroepen, burst 20 | 6 | 20.000 aanroepen |
| Enterprise | Volgens overeenkomst | Volgens overeenkomst | Volgens overeenkomst |
De limiet per seconde geldt voor je hele account, al je sleutels samen. Met een lopend plan of een aankoop in de afgelopen 12 maanden heb je de limieten van de betaalde plannen. Free is om je integratie te bouwen en te testen.
De signaalwaarde is geen harde grens. Zitten je aanroepen er langere tijd boven, dan nemen we contact op en kijken we samen naar een passend plan ([fair use](https://huispedia.nl/api-voorwaarden), Bijlage B).
Elk antwoord heeft `X-RateLimit-Remaining` en `X-RateLimit-Reset`; bij `429 rate_limited` wacht je `Retry-After` seconden.
`Cache-Control` zegt per endpoint hoe lang je een antwoord mag hergebruiken: waarderingen niet, kenmerken een uur, gebiedsstatistieken een dag. Bewaar Output hoe dan ook niet langer dan 30 dagen, tenzij het bij een lopend dossier over één woning hoort.
---
# Wijzigingen
> Wat er verandert. Binnen v5 komen velden en endpoints alleen bij.
Bron: https://huispedia.dev/nl/docs/changelog/
Binnen v5 komen velden en endpoints alleen bij; wat je nu gebruikt, blijft werken. Zie [Versiebeleid](https://huispedia.dev/nl/docs/versioning/).
## 2026-10
- **Nieuw:** de v5 API met 21 endpoints: adressen, woningkenmerken, energielabel, WOZ, pand, conditie, transacties, waardering, waardering plus, referentiewoningen, waardehistorie, scenariowaardering, gebieden, statistieken, prijsindex, demografie, voorzieningen en leefomgeving.
- **Nieuw:** het dashboard: inloggen met je huispedia.nl-account, sleutels, saldo, verbruik en request-log.
---
# Versiebeleid
> Wat er binnen v5 mag veranderen, en wat nooit.
Bron: https://huispedia.dev/nl/docs/versioning/
Binnen v5 is elke wijziging een toevoeging:
- nieuwe endpoints;
- nieuwe optionele parameters en velden in een verzoek;
- nieuwe velden in een antwoord;
- nieuwe waarden in een lijst van waarden, zoals een nieuw `house_type` of een nieuwe fout-`code`.
Er verdwijnt niets, er wordt niets hernoemd, verplicht of strenger. Code die vandaag werkt, blijft werken, zolang hij velden negeert die hij niet kent en waarden accepteert die hij nog niet zag.
Een wijziging die dat breekt, komt alleen in een nieuwe hoofdversie (v6). Die kondigen we minstens 60 dagen vooraf aan, per e-mail en in de [wijzigingen](https://huispedia.dev/nl/docs/changelog/) ([API-voorwaarden](https://huispedia.nl/api-voorwaarden), art. 11.2). v5 blijft daarnaast draaien, zo lang als we daar noemen.
---
# Claude Code-plugin
> Skills die Claude Code deze API leren en de overstap van Altum of Matrixian.
Bron: https://huispedia.dev/nl/docs/claude/
De plugin `huispedia-api` geeft Claude Code drie skills:
- **`huispedia-api`**: sleutels, adressen en gebieden, endpoints, credits, limieten en foutcodes.
- **`migrate-from-altum`**: zet code van Altum over naar deze API, endpoint voor endpoint en veld voor veld.
- **`migrate-from-matrixian`**: hetzelfde voor Matrixian.
Claude kiest zelf een skill als je vraag of je code erom vraagt. De skills bevatten geen sleutel: je code leest de jouwe uit de omgeving, bijvoorbeeld `HUISPEDIA_KEY`.
## Installeren
In Claude Code:
```
/plugin marketplace add Housepedia/claude-plugins
/plugin install huispedia-api@Huispedia
```
Vanuit de shell:
```bash
claude plugin marketplace add Housepedia/claude-plugins
claude plugin install huispedia-api@Huispedia
```
## Updates
De skills worden gebouwd uit deze documentatie en veranderen dus mee. Werk bij met `/plugin marketplace update Huispedia`, of zet automatisch bijwerken aan voor de marketplace onder `/plugin`.
## Andere AI-tools
Elke pagina van deze documentatie is er ook als Markdown: zet `.md` achter de URL, bijvoorbeeld [/nl/docs/quickstart.md](https://huispedia.dev/nl/docs/quickstart.md). [/llms.txt](https://huispedia.dev/llms.txt) noemt de pagina's; [/nl/llms-full.txt](https://huispedia.dev/nl/llms-full.txt) bevat de hele Nederlandse documentatie in één bestand, [/llms-full.txt](https://huispedia.dev/llms-full.txt) de Engelse. Elk endpoint staat in [/openapi.nl.json](https://huispedia.dev/openapi.nl.json).
---
# Overstappen van Altum
> Wat je bij Altum doet en hoe je dat hier doet.
Bron: https://huispedia.dev/nl/docs/migrate/altum/
Gebaseerd op de openbare documentatie van Altum, oktober 2026.
Werk je met Claude Code? De skill `migrate-from-altum` zet je code over met deze tabellen; zie de [Claude Code-plugin](https://huispedia.dev/nl/docs/claude/).
## Endpoints
| Altum | Wat | Huispedia |
|---|---|---|
| `POST /avm`, `POST /v2/avm` | Woningwaarde | [`GET /v5/properties/{locator}/valuation`](https://huispedia.dev/nl/docs/endpoints/#tag/valuations/GET/v5/properties/{locator}/valuation) |
| `POST /avm` met eigen kenmerken | Woningwaarde met eigen invoer | [`POST /v5/valuations/scenarios`](https://huispedia.dev/nl/docs/endpoints/#tag/valuations/POST/v5/valuations/scenarios) |
| `POST /avm/bulk` | Bulkwaardering | [`POST /v5/valuations/scenarios`](https://huispedia.dev/nl/docs/endpoints/#tag/valuations/POST/v5/valuations/scenarios)
Tot 100 woningen per aanroep, direct in het antwoord. |
| `POST /avmplus` | Woningwaarde+ | [`GET /v5/properties/{locator}/valuation/plus`](https://huispedia.dev/nl/docs/endpoints/#tag/valuations/GET/v5/properties/{locator}/valuation/plus) (contract) |
| `POST /v2/objectdata` | Woningkenmerken | [`GET /v5/properties/{locator}`](https://huispedia.dev/nl/docs/endpoints/#tag/properties/GET/v5/properties/{locator}) |
| `POST /interactive-reference` | Referentiewoningen | [`GET /v5/properties/{locator}/references`](https://huispedia.dev/nl/docs/endpoints/#tag/valuations/GET/v5/properties/{locator}/references) (contract) |
| `POST /v2/transaction` | Transacties | [`GET /v5/properties/{locator}/transactions`](https://huispedia.dev/nl/docs/endpoints/#tag/properties/GET/v5/properties/{locator}/transactions) (contract) |
| `POST /v2/transaction/ping` | Zijn er transacties? | [`HEAD /v5/properties/{locator}/transactions`](https://huispedia.dev/nl/docs/endpoints/#tag/properties/HEAD/v5/properties/{locator}/transactions) |
| `POST /woz`, `GET /woz` | WOZ-waarde | [`GET /v5/properties/{locator}/woz`](https://huispedia.dev/nl/docs/endpoints/#tag/properties/GET/v5/properties/{locator}/woz) |
| `GET /market-trend` | Markttrend | [`GET /v5/areas/{area}/stats`](https://huispedia.dev/nl/docs/endpoints/#tag/areas-and-market/GET/v5/areas/{area}/stats)
[`GET /v5/areas/{area}/trends`](https://huispedia.dev/nl/docs/endpoints/#tag/areas-and-market/GET/v5/areas/{area}/trends) |
| `POST /location-data` | Locatiegegevens | [`GET /v5/addresses/{locator}`](https://huispedia.dev/nl/docs/endpoints/#tag/addresses/GET/v5/addresses/{locator})
[`GET /v5/areas/{area}/demographics`](https://huispedia.dev/nl/docs/endpoints/#tag/areas-and-market/GET/v5/areas/{area}/demographics) |
| `GET /autosuggest/v2`, `GET /autosearch` | Adres zoeken | [`GET /v5/addresses/suggest`](https://huispedia.dev/nl/docs/endpoints/#tag/addresses/GET/v5/addresses/suggest) |
| `POST /condition-score/{img,url}` | Conditiescore | [`GET /v5/properties/{locator}/condition`](https://huispedia.dev/nl/docs/endpoints/#tag/properties/GET/v5/properties/{locator}/condition)
Per adres; je stuurt geen eigen foto's mee. |
| `GET /credit` | Verbruik | [`GET /v5/account/usage`](https://huispedia.dev/nl/docs/endpoints/#tag/account/GET/v5/account/usage) |
Transacties, referentiewoningen en Woningwaarde+ krijg je met een contract: [sales@huispedia.nl](mailto:sales@huispedia.nl).
## Authenticatie
| | Altum | Huispedia |
|---|---|---|
| **Sleutel** | `x-api-key: ` | `X-API-Key: hp_…` of `Authorization: Bearer hp_…` |
| **Basis-URL** | `https://api.altum.ai` | `https://huispedia.dev/v5` |
| **Methode** | `POST` met een JSON-body | `GET` met de woning in het pad; `POST` alleen voor scenario's |
| **Testen** | `/sandbox/` in het pad | Geen sandbox: je test met je gratis credits of op de [Endpoints](https://huispedia.dev/nl/docs/endpoints/)-pagina |
## Adressen en gebieden
| Altum | Huispedia | Opmerking |
|---|---|---|
| `postcode` + `housenumber` + `houseaddition` | `1076LJ-12-2` | Postcode, huisnummer en toevoeging met streepjes in het pad. |
| `houseaddition` (`A02`, `2B`) | `-A02`, `-2B` | Twijfel je: `GET /v5/addresses/1076LJ-12?all=true` geeft elke woning met haar `house_number_ext`. |
| `bag_id` (verblijfsobject) | `bag:0363200000028422` (nummeraanduiding) | Het verblijfsobject-id staat als `bag_verblijfsobject_id` in `GET /v5/addresses/{locator}`. |
| `valuationdate` (`20260901`) | `as_of_date` (`2026-09-01`) | |
| `postcode` (Markttrend) | `neighbourhood:BU0363KH05` | Een gebied is `niveau:code`; `GET /v5/areas/lookup?postcode=1076LJ` geeft de codes. |
Meer in [Adressen en gebieden](https://huispedia.dev/nl/docs/locators/).
## Velden
### Woningwaarde
`POST /avm` → [`GET /v5/properties/{locator}/valuation`](https://huispedia.dev/nl/docs/endpoints/#tag/valuations/GET/v5/properties/{locator}/valuation)
| Altum | Huispedia | Opmerking |
|---|---|---|
| `postcode`, `housenumber`, `houseaddition` | `{locator}` | |
| `valuationdate` | `?as_of_date=` | Tot zes maanden terug; verder terug met de waardehistorie. |
| `Output.PriceEstimation` | `valuation.value` | Een getal, geen string. |
| `Output.Confidence` | `valuation.lower`, `valuation.upper`, `valuation.interval` | Daar een 90%-interval in één string; hier een 80%-interval in twee getallen. |
| `Output.AccuracyIndicator` | `confidence.class`, `confidence.score_pct`, `confidence.within_10_pct` | Daar een klasse 0 tot 7; hier `high`, `medium` of `low` en percentages. |
| `Output.ValuationDate` | `valuation.as_of_date` | |
| `Output.BagID`, `PostCode`, `HouseNumber`, `HouseAddition`, `Street`, `City` | `address.bag_id`, `address.postcode`, `address.house_number`, `address.house_number_ext`, `address.street`, `address.city` | |
| `Output.Longitude`, `Latitude` | `address.location.lon`, `address.location.lat` | |
| `Output.HouseType`, `BuildYear`, `InnerSurfaceArea`, `OuterSurfaceArea`, `Volume`, `EnergyLabel` | `type.house_type`, `construction.construction_year`, `dimensions.living_area_m2`, `dimensions.plot_area_m2`, `dimensions.volume_m3`, `energy.energy_label`
In [`GET /v5/properties/{locator}`](https://huispedia.dev/nl/docs/endpoints/#tag/properties/GET/v5/properties/{locator}) | Uit Woningkenmerken. |
| `Output.Image` | *Niet beschikbaar hier* | |
### Woningwaarde met eigen kenmerken
`POST /avm` → [`POST /v5/valuations/scenarios`](https://huispedia.dev/nl/docs/endpoints/#tag/valuations/POST/v5/valuations/scenarios)
| Altum | Huispedia | Opmerking |
|---|---|---|
| `postcode`, `housenumber`, `houseaddition` | `data[].postcode`, `data[].house_number`, `data[].house_number_ext` | |
| `innersurfacearea` | `data[].living_area_m2` | |
| `outersurfacearea` | `data[].plot_area_m2` | |
| `buildyear` | `data[].construction_year` | |
| `housetype` | `data[].house_type` | `terraced`, `corner`, `semi_detached`, `detached` of `apartment`. |
| `energylabel` | `data[].energy_label` | |
| `Output.PriceEstimation` | `data[].valuation.value` | |
### Woningkenmerken
`POST /v2/objectdata` → [`GET /v5/properties/{locator}`](https://huispedia.dev/nl/docs/endpoints/#tag/properties/GET/v5/properties/{locator})
| Altum | Huispedia | Opmerking |
|---|---|---|
| `house_type_generic`, `house_type_specific` | `type.object_type`, `type.house_type_detail` | |
| `inner_surface_area`, `outer_surface_area`, `volume` | `dimensions.living_area_m2`, `dimensions.plot_area_m2`, `dimensions.volume_m3` | |
| `build_year` | `construction.construction_year` | |
| `rooms`, `number_of_bathrooms` | `rooms.rooms`, `rooms.bathrooms` | |
| `garden_orientation`, `garden_size` | `outdoor.garden_orientation`, `outdoor.garden_area_m2` | |
| `monument` | `construction.is_monument` | |
| `longitude`, `latitude`, `municipality_name`, `province` | `address.location.lon`, `address.location.lat`, `address.municipality`, `address.province` | |
| `neighbourhood_code`, `municipality_code` | `neighbourhood.code`, `municipality_code`
In [`GET /v5/addresses/{locator}`](https://huispedia.dev/nl/docs/endpoints/#tag/addresses/GET/v5/addresses/{locator}) | |
| `ozb_tax`, `waste_tax_*`, `sewage_tax_*` | *Niet beschikbaar hier* | |
### Referentiewoningen
`POST /interactive-reference` → [`GET /v5/properties/{locator}/references`](https://huispedia.dev/nl/docs/endpoints/#tag/valuations/GET/v5/properties/{locator}/references)
| Altum | Huispedia | Opmerking |
|---|---|---|
| `reference_number` | `?limit=` | 3 tot 30. |
| `date_limit` | `?max_age_months=` | |
| `housetype_to_search`, `strict_*`, `comparable_*` | `?same_type=`, `?max_distance_m=`, `?min_living_area_m2=`, `?max_living_area_m2=`, `?min_construction_year=`, `?max_construction_year=` | Grenzen in plaats van niveaus. |
| `weight_*` | `?sort=` | Sorteer op `similarity`, `distance` of `date`; geen eigen gewichten. |
| `GivenHouse` | `target` | |
| `ReferenceHouses[]` | `data[]` | |
| `Distance`, `Transactiondate`, `Source` | `data[].distance_m`, `data[].transaction_date`, `data[].source` | |
| `TransactionPrice`, `IndexedTransactionPrice` | `data[].price`, `data[].price_indexed` | |
| `InnerSurfaceArea`, `BuildYear`, `HouseType` | `data[].living_area_m2`, `data[].construction_year`, `data[].house_type` | |
| `Weight` | *Niet beschikbaar hier* | |
| `VisualSimilarityScore`, `ReferencePriceMean` | *Niet beschikbaar hier* | |
### Transacties
`POST /v2/transaction` → [`GET /v5/properties/{locator}/transactions`](https://huispedia.dev/nl/docs/endpoints/#tag/properties/GET/v5/properties/{locator}/transactions)
| Altum | Huispedia | Opmerking |
|---|---|---|
| `valuation_date` | *Niet beschikbaar hier* | Je krijgt alle verkopen van de woning; filter zelf op `transaction_date`. |
| `transaction`, `transaction_date` | `data[].transaction_id`, `data[].transaction_date` | |
| `transaction_price`, `transaction_price_indexed` | `data[].price`, `data[].price_indexed` | |
| `buyer`, `seller`, `family_transaction`, `more_real_estate`, `business_right` | *Niet beschikbaar hier* | |
### WOZ-waarde
`POST /woz` → [`GET /v5/properties/{locator}/woz`](https://huispedia.dev/nl/docs/endpoints/#tag/properties/GET/v5/properties/{locator}/woz)
| Altum | Huispedia | Opmerking |
|---|---|---|
| `index: 1` | `?index=` | |
| `wozvalue[].Date`, `Value`, `IndexedValue` | `values[].reference_date`, `values[].value`, `values[].indexed_value` | |
### Markttrend
`GET /market-trend` → [`GET /v5/areas/{area}/stats`](https://huispedia.dev/nl/docs/endpoints/#tag/areas-and-market/GET/v5/areas/{area}/stats)
| Altum | Huispedia | Opmerking |
|---|---|---|
| `postcode` | `{area}` | Codes via `GET /v5/areas/lookup?postcode=`. |
| `averagePriceSingleFamilyHomes`, `averagePriceMultiFamilyHomes` | `market.avg_transaction_price` | Niet gesplitst naar woningsoort. |
| `pricePerSquareMeterSingleFamily`, `pricePerSquareMeterMultiFamily` | `market.avg_transaction_price_per_m2` | |
| `annualPriceChange` | `market.transaction_price_per_m2_yoy_pct` | |
| `transactionData.totalSalesLast12Months` | `market.transactions_count` | |
| `fiveYearPriceChange` | `data[].value`, `data[].yoy_pct`
In [`GET /v5/areas/{area}/trends`](https://huispedia.dev/nl/docs/endpoints/#tag/areas-and-market/GET/v5/areas/{area}/trends) | Prijs per m² per maand, standaard vijf jaar terug. |
## Fouten
Een fout is `application/problem+json` met een vaste `code`; elke code staat op [Fouten](https://huispedia.dev/nl/docs/errors/).
| Altum | Huispedia | Opmerking |
|---|---|---|
| `400` (adres niet gevonden) | [`404 not_found`](https://huispedia.dev/nl/docs/errors/#not_found) | |
| `400` (datumformaat, woningtype), `422` (validatie) | [`400 invalid_request`](https://huispedia.dev/nl/docs/errors/#invalid_request) | `errors` noemt per veld wat er mis is. |
| `400` (geen voorspelling mogelijk) | [`422 data_unavailable`](https://huispedia.dev/nl/docs/errors/#data_unavailable) | |
| `401`, `403` (`Missing Authentication Token`) | [`401 unauthenticated`](https://huispedia.dev/nl/docs/errors/#unauthenticated) | |
| `403` (`Forbidden`, geen toegang tot de API) | [`403 entitlement_required`](https://huispedia.dev/nl/docs/errors/#entitlement_required) | |
| `429` (limiet) | [`429 rate_limited`](https://huispedia.dev/nl/docs/errors/#rate_limited) | Wacht `Retry-After` seconden. |
| `429` (quotum) | [`402 insufficient_credits`](https://huispedia.dev/nl/docs/errors/#insufficient_credits), [`402 spend_cap_reached`](https://huispedia.dev/nl/docs/errors/#spend_cap_reached) | |
| `500` | [`500 internal_error`](https://huispedia.dev/nl/docs/errors/#internal_error) | |
| `{"Output": "…"}`, `{"detail": […]}` | `application/problem+json` met `code`, `detail`, `errors` | |
## Bulk en limieten
| | Altum | Huispedia |
|---|---|---|
| **Snelheid** | Fair use: tot 6 gelijktijdige verzoeken per seconde | [6 per seconde en 6 tegelijk met een betaald plan; 1 en 2 op Free](https://huispedia.dev/nl/docs/rate-limits/) |
| **Bulk** | `POST /avm/bulk`, daarna de taak ophalen | `POST /v5/valuations/scenarios`: 100 woningen per aanroep, direct terug |
| **Verbruik** | `GET /credit` | `GET /v5/account/usage` |
## Voorbeeld: woningwaarde
**Altum**
```bash
curl -X POST https://api.altum.ai/avm \
-H "x-api-key: $ALTUM_KEY" \
-H "Content-Type: application/json" \
-d '{"postcode": "1076LJ", "housenumber": 12, "houseaddition": "2"}'
```
```python
import os, requests
r = requests.post(
"https://api.altum.ai/avm",
headers={"x-api-key": os.environ["ALTUM_KEY"]},
json={"postcode": "1076LJ", "housenumber": 12, "houseaddition": "2"},
)
value = int(r.json()["Output"]["PriceEstimation"])
```
**Huispedia**
```bash
curl https://huispedia.dev/v5/properties/1076LJ-12-2/valuation \
-H "X-API-Key: $HUISPEDIA_KEY"
```
```python
import os, requests
r = requests.get(
"https://huispedia.dev/v5/properties/1076LJ-12-2/valuation",
headers={"X-API-Key": os.environ["HUISPEDIA_KEY"]},
)
r.raise_for_status()
v = r.json()["valuation"]
value, lower, upper = v["value"], v["lower"], v["upper"]
```
## Verschillen
### Niet beschikbaar hier
- Foto bij de waardering (`image`): niet beschikbaar hier.
- Woning aanduiden met een verblijfsobject-id: niet beschikbaar hier; gebruik de nummeraanduiding.
- Waardering op een datum verder dan zes maanden terug: niet beschikbaar hier; de waardehistorie geeft één waarde per maand.
- Eigen gewichten, een gewicht per referentiewoning en beeldgelijkenis: niet beschikbaar hier; de volgorde geeft de gelijkenis.
- Koper, verkoper en Kadaster-codes bij transacties: niet beschikbaar hier.
- Gemeentelijke lasten (`ozb_tax` en verder): niet beschikbaar hier.
- Gemiddelde WOZ per postcode (`/woz/pc6`): niet beschikbaar hier.
- Huurreferenties, WWS-punten, herbouw- en inboedelwaarde: niet beschikbaar hier.
- NTA 8800-labelberekening, verduurzaming, subsidies, dakscans, EPC: niet beschikbaar hier; `GET /v5/properties/{locator}/energy-label` geeft het geregistreerde label.
- Verhuisdata, gebouwgeometrie, foto labelen: niet beschikbaar hier.
### Geen equivalent bij Altum
- `409 address_ambiguous` met de kandidaten als een adres meerdere woningen heeft: geen equivalent bij Altum.
- Wat-als-scenario's tegen dezelfde basis (`scenarios`): geen equivalent bij Altum.
- Maandelijkse waardehistorie in één aanroep: geen equivalent bij Altum.
- Leefomgeving (fundering, bodemdaling, geluid, lucht) en voorzieningen per adres: geen equivalent in Altums openbare documentatie.
- Pand met al zijn adressen (`/v5/buildings/{bag_pand_id}`): geen equivalent in Altums openbare documentatie.
## Bronnen
- [Woningwaarde API](https://docs.altum.ai/taxeren-en-waarderen/woningwaarde-api/authentication-input-and-response)
- [Woningwaarde API, huisnummers en toevoegingen](https://docs.altum.ai/taxeren-en-waarderen/woningwaarde-api/house-numbers-and-additions)
- [Woningwaarde API, accuratesse-indicator](https://docs.altum.ai/taxeren-en-waarderen/woningwaarde-api/accuratesse-indicator)
- [Woningwaarde API, OpenAPI](https://api.altum.ai/avm/openapi)
- [Woningwaarde+ API](https://docs.altum.ai/taxeren-en-waarderen/woningwaarde+-api/authenticatie-invoer-en-resultaat)
- [Woningkenmerken API](https://docs.altum.ai/woningdata/woningkenmerken-api/authenticatie-invoer-en-resultaat)
- [Interactieve woningreferentie API](https://docs.altum.ai/taxeren-en-waarderen/interactieve-woningreferentie-api/authenticatie-invoer-en-resultaat)
- [Kadaster Transactie API](https://docs.altum.ai/taxeren-en-waarderen/kadaster-transactie-api/authenticatie-invoer-en-resultaat)
- [WOZ API](https://docs.altum.ai/woningdata/woz-api/authentication-input-and-response)
- [Markttrend API](https://docs.altum.ai/taxeren-en-waarderen/markttrend-api/authentication-input-and-response)
- [Sandbox](https://docs.altum.ai/ontwikkelaars/sandbox)
- [Fair use policy](https://docs.altum.ai/enterprise/fair-use-policy)
- [Foutcodes 403, 422, 429](https://docs.altum.ai/api-error-codes/422)
- [Verbruik API](https://docs.altum.ai/ontwikkelaars/verbruik-api)
---
# Overstappen van Matrixian
> Wat je bij Matrixian doet en hoe je dat hier doet.
Bron: https://huispedia.dev/nl/docs/migrate/matrixian/
Gebaseerd op de openbare documentatie van Matrixian, oktober 2026.
Werk je met Claude Code? De skill `migrate-from-matrixian` zet je code over met deze tabellen; zie de [Claude Code-plugin](https://huispedia.dev/nl/docs/claude/).
## Endpoints
| Matrixian | Wat | Huispedia |
|---|---|---|
| `GET /homevalue`, `GET /homevalue/value` | Woningwaarde | [`GET /v5/properties/{locator}/valuation`](https://huispedia.dev/nl/docs/endpoints/#tag/valuations/GET/v5/properties/{locator}/valuation) |
| `GET /homevalue` met eigen kenmerken | Woningwaarde met eigen invoer | [`POST /v5/valuations/scenarios`](https://huispedia.dev/nl/docs/endpoints/#tag/valuations/POST/v5/valuations/scenarios) |
| `GET /homevalue?nReferences=` | Woningwaarde met referenties | [`GET /v5/properties/{locator}/valuation/plus`](https://huispedia.dev/nl/docs/endpoints/#tag/valuations/GET/v5/properties/{locator}/valuation/plus) (contract)
Met de vijf beste referentiewoningen. |
| `GET /leadtool` | Waardebandbreedte | [`GET /v5/properties/{locator}/valuation`](https://huispedia.dev/nl/docs/endpoints/#tag/valuations/GET/v5/properties/{locator}/valuation)
De bandbreedte is `lower` tot `upper`. |
| `GET /mx-reference-finder` | Referentiewoningen | [`GET /v5/properties/{locator}/references`](https://huispedia.dev/nl/docs/endpoints/#tag/valuations/GET/v5/properties/{locator}/references) (contract) |
| `GET /mx-transaction-finder` | Koopsom | [`GET /v5/properties/{locator}/transactions`](https://huispedia.dev/nl/docs/endpoints/#tag/properties/GET/v5/properties/{locator}/transactions) (contract) |
| `GET /woz-value`, `GET /woz-value/live` | WOZ-waarde | [`GET /v5/properties/{locator}/woz`](https://huispedia.dev/nl/docs/endpoints/#tag/properties/GET/v5/properties/{locator}/woz) |
| `GET /mx-house-details` | Woningkenmerken | [`GET /v5/properties/{locator}`](https://huispedia.dev/nl/docs/endpoints/#tag/properties/GET/v5/properties/{locator})
[`GET /v5/properties/{locator}/energy-label`](https://huispedia.dev/nl/docs/endpoints/#tag/properties/GET/v5/properties/{locator}/energy-label) |
| `GET /bag-data` | BAG-gegevens | [`GET /v5/addresses/{locator}`](https://huispedia.dev/nl/docs/endpoints/#tag/addresses/GET/v5/addresses/{locator})
[`GET /v5/buildings/{bag_pand_id}`](https://huispedia.dev/nl/docs/endpoints/#tag/properties/GET/v5/buildings/{bag_pand_id}) |
| `GET /buurtinfo` | Buurtinformatie | [`GET /v5/areas/{area}/demographics`](https://huispedia.dev/nl/docs/endpoints/#tag/areas-and-market/GET/v5/areas/{area}/demographics)
[`GET /v5/areas/{area}/stats`](https://huispedia.dev/nl/docs/endpoints/#tag/areas-and-market/GET/v5/areas/{area}/stats)
[`GET /v5/areas/{area}`](https://huispedia.dev/nl/docs/endpoints/#tag/areas-and-market/GET/v5/areas/{area}) |
Transacties, referentiewoningen en Woningwaarde+ krijg je met een contract: [sales@huispedia.nl](mailto:sales@huispedia.nl).
## Authenticatie
| | Matrixian | Huispedia |
|---|---|---|
| **Sleutel** | `Authorization: Bearer ` | `Authorization: Bearer hp_…` of `X-API-Key: hp_…` |
| **Basis-URL** | `https://api.matrixian.com/v1` | `https://huispedia.dev/v5` |
| **Methode** | `GET` met query-parameters | `GET` met de woning in het pad; `POST` alleen voor scenario's |
| **Antwoord** | `{id, params, data, error, meta, status}` | De gegevens bovenaan; `meta` met `request_id` en `credits` |
## Adressen en gebieden
| Matrixian | Huispedia | Opmerking |
|---|---|---|
| `postalCode` + `houseNumber` + `houseLetter` + `houseNumberExt` | `1076LJ-12-2` | Postcode, huisnummer en toevoeging met streepjes in het pad; letter en toevoeging staan samen in het laatste deel. |
| `houseLetter`, `houseNumberExt` | `house_number_ext` | Twijfel je: `GET /v5/addresses/1076LJ-12?all=true` geeft elke woning met haar `house_number_ext`. |
| `bagId`, `bagNumberId` (nummeraanduiding) | `bag:0363200000028422` | |
| `bagObjectId`, `bagBuildingId` | `bag_verblijfsobject_id`, `bag_pand_id` | In `GET /v5/addresses/{locator}`; een pand vraag je op met `GET /v5/buildings/{bag_pand_id}`. |
| `valuationDate` (`2026-09-01`) | `as_of_date` (`2026-09-01`) | |
| `buurtCode` (`BU04170328`) | `neighbourhood:BU04170328` | Een gebied is `niveau:code`; `GET /v5/areas/lookup?postcode=1076LJ` geeft de codes. |
Meer in [Adressen en gebieden](https://huispedia.dev/nl/docs/locators/).
## Velden
### Woningwaarde
`GET /homevalue` → [`GET /v5/properties/{locator}/valuation`](https://huispedia.dev/nl/docs/endpoints/#tag/valuations/GET/v5/properties/{locator}/valuation)
| Matrixian | Huispedia | Opmerking |
|---|---|---|
| `postalCode`, `houseNumber`, `houseLetter`, `houseNumberExt` | `{locator}` | |
| `valuationDate` | `?as_of_date=` | Tot zes maanden terug; verder terug met de waardehistorie. |
| `data.predictedValue`, `data.weightedValue` | `valuation.value` | |
| `data.valueDate` | `valuation.as_of_date` | |
| `data.accuracy` | `confidence.score_pct` | Hier de kans dat de waarde binnen 10% van een koopsom ligt. |
| `data.confidenceClass` | `confidence.class` | Daar 0 tot 5; hier `high`, `medium` of `low`. |
| `data.weightedValueRange` (Leadtool) | `valuation.lower`, `valuation.upper`, `valuation.interval` | Twee getallen met hun zekerheid (80%). |
| `data.bagId`, `postalCode`, `houseNumber`, `houseNumberExt`, `street`, `city`, `municipality` | `address.bag_id`, `address.postcode`, `address.house_number`, `address.house_number_ext`, `address.street`, `address.city`, `address.municipality` | |
| `data.buildType`, `buildYear`, `useSurface`, `parcelSurface`, `volume`, `energyLabel`, `rooms` | `type.house_type`, `construction.construction_year`, `dimensions.living_area_m2`, `dimensions.plot_area_m2`, `dimensions.volume_m3`, `energy.energy_label`, `rooms.rooms`
In [`GET /v5/properties/{locator}`](https://huispedia.dev/nl/docs/endpoints/#tag/properties/GET/v5/properties/{locator}) | Uit Woningkenmerken. |
| `data.indexedPrice`, `histTransactionPrice`, `histTransactionDate` | `data[].price_indexed`, `data[].price`, `data[].transaction_date`
In [`GET /v5/properties/{locator}/transactions`](https://huispedia.dev/nl/docs/endpoints/#tag/properties/GET/v5/properties/{locator}/transactions) | Alle verkopen van de woning, met een contract. |
| `data.references[]` | `references[]`
In [`GET /v5/properties/{locator}/valuation/plus`](https://huispedia.dev/nl/docs/endpoints/#tag/valuations/GET/v5/properties/{locator}/valuation/plus) | |
| `data.numZip*`, `medZip*`, `numStr*`, `medStr*` | `market.transactions_count`, `market.avg_transaction_price`
In [`GET /v5/areas/{area}/stats`](https://huispedia.dev/nl/docs/endpoints/#tag/areas-and-market/GET/v5/areas/{area}/stats) | Per buurt, wijk of gemeente; niet per postcode of straat. |
### Woningwaarde met eigen kenmerken
`GET /homevalue` → [`POST /v5/valuations/scenarios`](https://huispedia.dev/nl/docs/endpoints/#tag/valuations/POST/v5/valuations/scenarios)
| Matrixian | Huispedia | Opmerking |
|---|---|---|
| `postalCode`, `houseNumber`, `houseNumberExt` | `data[].postcode`, `data[].house_number`, `data[].house_number_ext` | |
| `useSurface` | `data[].living_area_m2` | |
| `parcelSurface`, `volume` | `data[].plot_area_m2`, `data[].volume_m3` | |
| `buildYear`, `numberOfRooms` | `data[].construction_year`, `data[].rooms` | |
| `buildType` | `data[].house_type` | `terraced`, `corner`, `semi_detached`, `detached` of `apartment`. |
| `energyLabel` | `data[].energy_label` | |
| `monument` | *Niet beschikbaar hier* | |
| `data.predictedValue` | `data[].valuation.value` | |
### Woningkenmerken
`GET /mx-house-details` → [`GET /v5/properties/{locator}`](https://huispedia.dev/nl/docs/endpoints/#tag/properties/GET/v5/properties/{locator})
| Matrixian | Huispedia | Opmerking |
|---|---|---|
| `objectType` | `type.object_type` | |
| `buildYear` | `construction.construction_year` | |
| `livingSurface`, `useSurface` | `dimensions.living_area_m2`, `dimensions.bag_area_m2` | |
| `otherIndoorSpace`, `attachedOutdoorSpace`, `externalStorageSpace` | `dimensions.other_indoor_m2`, `dimensions.building_bound_outdoor_m2`, `dimensions.external_storage_m2` | |
| `parcelSurface`, `volume` | `dimensions.plot_area_m2`, `dimensions.volume_m3` | |
| `numberOfRooms`, `numberOfBedrooms`, `numberOfBathrooms`, `numberOfToilets` | `rooms.rooms`, `rooms.bedrooms`, `rooms.bathrooms`, `rooms.separate_toilets` | |
| `energyLabel` | `energy.energy_label` | |
| `energyLabelRegistrationValidUntil` | `valid_to`
In [`GET /v5/properties/{locator}/energy-label`](https://huispedia.dev/nl/docs/endpoints/#tag/properties/GET/v5/properties/{locator}/energy-label) | |
| `latitude`, `longitude` | `address.location.lat`, `address.location.lon` | |
| `bagObjectId`, `bagBuildingId`, buurt- en gemeentecodes | `bag_verblijfsobject_id`, `bag_pand_id`, `neighbourhood.code`, `municipality_code`
In [`GET /v5/addresses/{locator}`](https://huispedia.dev/nl/docs/endpoints/#tag/addresses/GET/v5/addresses/{locator}) | |
| `description` | *Niet beschikbaar hier* | |
### Referentiewoningen
`GET /mx-reference-finder` → [`GET /v5/properties/{locator}/references`](https://huispedia.dev/nl/docs/endpoints/#tag/valuations/GET/v5/properties/{locator}/references)
| Matrixian | Huispedia | Opmerking |
|---|---|---|
| `nReferences` | `?limit=` | 3 tot 30. |
| `valuationDate` | `?as_of_date=` | |
| `maxDistance`, `minTransportDate` | `?max_distance_m=`, `?max_age_months=` | |
| `minUseSurface`, `maxUseSurface` | `?min_living_area_m2=`, `?max_living_area_m2=` | |
| `minBuildYear`, `maxBuildYear` | `?min_construction_year=`, `?max_construction_year=` | |
| `allowedHouseTypes` | `?same_type=` | Alleen hetzelfde type, of alle types. |
| `locationWeight`, `houseDetailsWeight`, `transportDateWeight` | `?sort=` | Sorteer op `similarity`, `distance` of `date`; geen eigen gewichten. |
| `references[]` | `data[]` | |
| `distance`, `dateSale` | `data[].distance_m`, `data[].transaction_date` | |
| `houseType`, `buildYear`, `useSurface` | `data[].house_type`, `data[].construction_year`, `data[].living_area_m2` | |
| `referenceScore`, `locationScore`, `houseDetailsScore` | *Niet beschikbaar hier* | |
| `offeredPrice`, `imageFront`, `description` | *Niet beschikbaar hier* | |
### Transacties
`GET /mx-transaction-finder` → [`GET /v5/properties/{locator}/transactions`](https://huispedia.dev/nl/docs/endpoints/#tag/properties/GET/v5/properties/{locator}/transactions)
| Matrixian | Huispedia | Opmerking |
|---|---|---|
| `valuationDate`, `dateTransport` | *Niet beschikbaar hier* | Je krijgt alle verkopen van de woning; filter zelf op `transaction_date`. |
| `saleDate`, `transportDate` | `data[].price_agreement_date`, `data[].transaction_date` | |
| `transactionPrice` | `data[].price` | |
| `transactionPriceIndexed` | `data[].price_indexed` | Op het prijsniveau van vandaag. |
### WOZ-waarde
`GET /woz-value` → [`GET /v5/properties/{locator}/woz`](https://huispedia.dev/nl/docs/endpoints/#tag/properties/GET/v5/properties/{locator}/woz)
| Matrixian | Huispedia | Opmerking |
|---|---|---|
| `wozValues[].valuationDate`, `wozValue` | `values[].reference_date`, `values[].value` | |
| `characteristics` | `type`, `dimensions`, `construction`
In [`GET /v5/properties/{locator}`](https://huispedia.dev/nl/docs/endpoints/#tag/properties/GET/v5/properties/{locator}) | |
### Buurtinformatie
`GET /buurtinfo` → [`GET /v5/areas/{area}/demographics`](https://huispedia.dev/nl/docs/endpoints/#tag/areas-and-market/GET/v5/areas/{area}/demographics)
| Matrixian | Huispedia | Opmerking |
|---|---|---|
| `buurtCode` of een adres | `{area}` | Codes via `GET /v5/areas/lookup?postcode=`. |
| `Bevolking` | `population`, `households`, `age` | |
| `Wonen` | `stock`
In [`GET /v5/areas/{area}/stats`](https://huispedia.dev/nl/docs/endpoints/#tag/areas-and-market/GET/v5/areas/{area}/stats) | |
| `geometry` | `geometry`
In [`GET /v5/areas/{area}`](https://huispedia.dev/nl/docs/endpoints/#tag/areas-and-market/GET/v5/areas/{area}) | Met `include=geometry`. |
| `Inkomen`, `Energie`, `Criminaliteit` | *Niet beschikbaar hier* | |
## Fouten
Een fout is `application/problem+json` met een vaste `code`; elke code staat op [Fouten](https://huispedia.dev/nl/docs/errors/).
| Matrixian | Huispedia | Opmerking |
|---|---|---|
| `400` (`errors[].reason` is de parameter) | [`400 invalid_request`](https://huispedia.dev/nl/docs/errors/#invalid_request) | `errors` noemt per veld wat er mis is. |
| `401` | [`401 unauthenticated`](https://huispedia.dev/nl/docs/errors/#unauthenticated), [`401 key_revoked`](https://huispedia.dev/nl/docs/errors/#key_revoked), [`401 key_expired`](https://huispedia.dev/nl/docs/errors/#key_expired) | |
| `403` (`access_denied`, `missing_subscription`) | [`403 entitlement_required`](https://huispedia.dev/nl/docs/errors/#entitlement_required), [`403 forbidden`](https://huispedia.dev/nl/docs/errors/#forbidden) | |
| `403` (`rate_limit`) | [`429 rate_limited`](https://huispedia.dev/nl/docs/errors/#rate_limited) | Hier `429`; wacht `Retry-After` seconden. |
| `404` (onbekend adres) | [`404 not_found`](https://huispedia.dev/nl/docs/errors/#not_found) | |
| `500` | [`500 internal_error`](https://huispedia.dev/nl/docs/errors/#internal_error) | |
| `503` | [`503 upstream_unavailable`](https://huispedia.dev/nl/docs/errors/#upstream_unavailable) | |
| `{id, status: "failure", error: {code, message, errors}}` | `application/problem+json` met `code`, `detail`, `errors`, `request_id` | |
## Bulk en limieten
| | Matrixian | Huispedia |
|---|---|---|
| **Snelheid** | Niet gepubliceerd; bij de limiet `403 rate_limit` | [6 per seconde en 6 tegelijk met een betaald plan; 1 en 2 op Free](https://huispedia.dev/nl/docs/rate-limits/); `X-RateLimit-Remaining` in elk antwoord |
| **Bulk** | Geen bulk-endpoint gedocumenteerd | `POST /v5/valuations/scenarios`: 100 woningen per aanroep |
| **Correlatie** | `id`, `X-Amzn-Trace-Id` | `meta.request_id`, `request_id` |
## Voorbeeld: woningwaarde
**Matrixian**
```bash
curl "https://api.matrixian.com/v1/homevalue?postalCode=1076LJ&houseNumber=12&houseNumberExt=2" \
-H "Authorization: Bearer $MATRIXIAN_KEY"
```
```python
import os, requests
r = requests.get(
"https://api.matrixian.com/v1/homevalue",
headers={"Authorization": f"Bearer {os.environ['MATRIXIAN_KEY']}"},
params={"postalCode": "1076LJ", "houseNumber": 12, "houseNumberExt": "2"},
)
value = r.json()["data"]["predictedValue"]
```
**Huispedia**
```bash
curl https://huispedia.dev/v5/properties/1076LJ-12-2/valuation \
-H "Authorization: Bearer $HUISPEDIA_KEY"
```
```python
import os, requests
r = requests.get(
"https://huispedia.dev/v5/properties/1076LJ-12-2/valuation",
headers={"Authorization": f"Bearer {os.environ['HUISPEDIA_KEY']}"},
)
r.raise_for_status()
v = r.json()["valuation"]
value, lower, upper = v["value"], v["lower"], v["upper"]
```
## Verschillen
### Niet beschikbaar hier
- Beschikbaarheid vooraf (`/homevalue/available`): niet beschikbaar hier; een `404 not_found` kost geen credits.
- Monumentstatus als invoer van de waardering (`monument`): niet beschikbaar hier.
- Marktcijfers per postcode of straat (`numZip*`, `numStr*`): niet beschikbaar hier; wel per buurt.
- Eigen gewichten en scores per referentiewoning: niet beschikbaar hier; de volgorde geeft de gelijkenis.
- Inkomen, energie en criminaliteit per buurt: niet beschikbaar hier.
- Woonlasten (`/local-tax-energy-expenses`): niet beschikbaar hier.
- Woningfoto's (`/house-images`, `/get_front_view`): niet beschikbaar hier.
- Kadastrale objecten en eigendomsberichten: niet beschikbaar hier.
- Commerciële transacties: niet beschikbaar hier.
### Geen equivalent bij Matrixian
- Een interval met ondergrens en bovengrens bij elke waardering: geen equivalent bij Matrixian, behalve de bandbreedte-string van de Leadtool.
- `409 address_ambiguous` met de kandidaten als een adres meerdere woningen heeft: geen equivalent bij Matrixian.
- Wat-als-scenario's en tot 100 woningen per aanroep: geen equivalent bij Matrixian.
- Maandelijkse waardehistorie: geen equivalent bij Matrixian.
- Prijsindex per gebied (`/v5/areas/{area}/trends`): geen equivalent in Matrixians openbare documentatie.
- Leefomgeving (fundering, bodemdaling, geluid, lucht) per adres: geen equivalent in Matrixians openbare documentatie.
## Bronnen
- [Matrixian API, OpenAPI](https://matrixian-api.s3.eu-west-3.amazonaws.com/openapi.yaml)
- [API-authenticatie](https://docs.matrixian.com/readme/api-authenticatie)
- [API-responsestructuur](https://docs.matrixian.com/readme/api-response-structuur)
- [API-foutmeldingen](https://docs.matrixian.com/readme/api-foutmeldingen)
- [Woningwaarde API](https://docs.matrixian.com/waarderen-en-taxeren/woningwaarde-api-1)
- [Woningwaarde API (alleen waarde)](https://docs.matrixian.com/waarderen-en-taxeren/woningwaarde-api)
- [Leadtool API](https://docs.matrixian.com/waarderen-en-taxeren/leadtool-api)
- [Referentiewoningen API](https://docs.matrixian.com/waarderen-en-taxeren/referentiewoningen-api)
- [Koopsom API](https://docs.matrixian.com/waarderen-en-taxeren/koopsom-api)
- [WOZ-waarde API](https://docs.matrixian.com/waarderen-en-taxeren/woz-waarde-api)
- [Woningkenmerken API](https://docs.matrixian.com/woningdata/woningkenmerken-api)
- [BAG API](https://docs.matrixian.com/woningdata/bag-api)
- [Buurtinfo API](https://docs.matrixian.com/woningdata/buurtinfo-api)