Every API here is available over the APIs.io API and to AI agents over MCP.
openapi: 3.2.0
info:
title: Wozapi Lijst API
description: 'De WOZ API die je zelf regelt. WOZ-waarden, BAG-adresgegevens met bouwjaar en oppervlakte, WOZ-object en kadastrale percelen uit 1 endpoint. Met `energielabel=true` ook het geregistreerde energielabel (EP-Online van RVO), zonder extra credit.
**Base URL:** `https://woz-api.nl`
**Authenticatie:** stuur je key mee als header `X-Api-Key: {key}` of als `Authorization: ApiKey {key}`. Een key maak je aan onder API sleutels. Een sleutel hoort in een header, nooit in een URL.
**Voor softwareleveranciers (OAuth-koppeling):** laat je klant zijn eigen Wozapi-account koppelen via OAuth 2.0 (authorization code met PKCE) en stuur diens access token mee als `Authorization: Bearer {token}`. De credits gaan dan van het account van je klant af. Scopes: `woz.lookup` en `account.saldo`. Discovery: `/.well-known/openid-configuration`. Uitleg en aanvraag: woz-api.nl/woz-api-koppeling.
**Credits:** 1 credit is 1 uniek adres. Hetzelfde adres binnen 7 dagen opnieuw opvragen kost geen extra credit; dat is een kortingsregel en geen cache, de request wordt wel echt uitgevoerd. Een opvraging die op een fout eindigt (4xx of 5xx) kost niets, en een antwoord zonder WOZ-waarden (een lege `woz`) ook niet. Een nieuw account krijgt 10 gratis credits. Het resterende saldo staat in de response-header `X-Credits-Remaining` en is ook op te vragen via `GET /Api/Credits`. Is het saldo op, dan volgt 402 met code `InsufficientCredits`.
**Zonder account:** vraag een gratis proefsleutel aan met `POST /Api/Proef` (5 unieke adressen, 10 met het e-mailadres van de gebruiker) en stuur hem mee als `X-Api-Key`. Zonder sleutel geeft de API 401 met code `SleutelOntbreekt`; een verbruikte proef geeft 402 met code `ProefVerbruikt`.
**Een hele lijst:** `POST /Api/Lijst` met de adressen geeft een gratis proef van 5 adressen, de prijs voor de hele lijst en een betaalpagina voor de gebruiker; na betaling de rijen en het bestand.
**AI-assistenten:** een MCP-server op `https://woz-api.nl/Api/Mcp`, en uitleg voor agents op woz-api.nl/voor-ai-agents.
**Foutvorm:** elke fout geeft `{ fout, code, status, detail, traceId }` terug, zie het schema ApiFoutResponse. Dat geldt ook voor een 400 door modelvalidatie; `detail` bevat dan per veld de meldingen. Match in code op `code`, niet op de tekst in `fout`. Veelvoorkomende codes: `InvalidInput` (400), `Unauthorized` (401), `InsufficientCredits` (402), `AddressNotFound` (404), `PdokLookupFailed` (502) en `UpstreamUnavailable` (503). Een 502 of 503 kost niets; probeer het opnieuw, bij een 503 na het aantal seconden uit de header `Retry-After`, en sla het adres niet over.
**Geen WOZ-waarde:** alleen van woningen is de WOZ-waarde openbaar. Bestaat het adres maar is er geen openbare waarde, bijvoorbeeld bij een kantoor of kerk, dan krijg je een 200 met een lege `woz`, `huidigeWaarde: null` en in `wozStatus` de reden: `geen_woning` als het pand volgens de BAG geen woonfunctie heeft, anders `geen_waarde`. Dat is een antwoord en geen storing: opnieuw proberen verandert niets, en het kost geen credit. Een storing geeft altijd een 502 of 503.
**Voorbeeld:**
```
curl "https://woz-api.nl/Api/Adres?adres=Spuistraat%2036C,%201012TT%20Amsterdam" \
-H "X-Api-Key: JOUW_API_KEY"
```'
termsOfService: https://woz-api.nl/terms
contact:
name: Wozapi
url: https://woz-api.nl/
email: info@woz-api.nl
version: v1
servers:
- url: https://woz-api.nl
description: Productie
security:
- ApiKey: []
tags:
- name: Lijst
description: 'Een hele lijst adressen of een Excel in een keer: een gratis proef van 5 adressen, de prijs en een betaallink, en na betaling de rijen en het bestand.'
paths:
/Api/Lijst:
post:
tags:
- Lijst
summary: Een nieuwe lijst, uit adressen of een bestand
description: 'Geef de adressen mee in `adressen`, elk als tekst ("Spuistraat 36C, 1012 TT Amsterdam") of als
object met straat, huisnummer, huisletter, toevoeging, postcode en plaats; `ref` en `jaar`
per adres mogen erbij. Of stuur een Excel- of CSV-bestand in base64 in `bestand`, met
`bestandsnaam`. Hebben de adressen geen postcode of plaats, geef dan `plaats` mee.
Daarna loopt de gratis proef: we zoeken alle adressen op en vragen er vijf op. Vraag de stand op
met GET op links.status, met ?wacht=20 om te wachten tot hij klaar is. Dezelfde lijst binnen een
uur opnieuw sturen geeft dezelfde lijst terug.'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/LijstAanvraag'
text/json:
schema:
$ref: '#/components/schemas/LijstAanvraag'
application/*+json:
schema:
$ref: '#/components/schemas/LijstAanvraag'
responses:
'200':
description: De lijst en zijn stand.
content:
application/json:
schema:
$ref: '#/components/schemas/LijstAntwoord'
'400':
description: Onbruikbare invoer (InvalidInput, TeVeelAdressen, EmailOngeldig).
content:
application/json:
schema:
$ref: '#/components/schemas/ApiFoutResponse'
'401':
description: Geen sleutel in de header (SleutelOntbreekt) of een verlopen proefsleutel (SleutelVerlopen).
content:
application/json:
schema:
$ref: '#/components/schemas/ApiFoutResponse'
'403':
description: Een OAuth-token (ScopeOntbreekt).
content:
application/json:
schema:
$ref: '#/components/schemas/ApiFoutResponse'
'429':
description: Vandaag al genoeg lijsten met deze sleutel, of de gratis proeven zijn vol (TeVeelLijsten).
content:
application/json:
schema:
$ref: '#/components/schemas/ApiFoutResponse'
operationId: postApiLijst
x-operation-id-source: derived
/Api/Lijst/Upload:
post:
tags:
- Lijst
summary: Een nieuwe lijst uit een bestand, als multipart-upload
description: Het veld `bestand` met een .xlsx, .xls of .csv; `plaats` en `email` mogen erbij.
requestBody:
content:
multipart/form-data:
schema:
type: object
properties:
bestand:
type: string
format: binary
plaats:
type: string
email:
type: string
encoding:
bestand:
style: form
plaats:
style: form
email:
style: form
responses:
'200':
description: De lijst en zijn stand.
content:
application/json:
schema:
$ref: '#/components/schemas/LijstAntwoord'
'400':
description: Geen of een onleesbaar bestand.
content:
application/json:
schema:
$ref: '#/components/schemas/ApiFoutResponse'
'401':
description: Geen sleutel in de header.
content:
application/json:
schema:
$ref: '#/components/schemas/ApiFoutResponse'
operationId: postApiLijstUpload
x-operation-id-source: derived
/Api/Lijst/{token}:
get:
tags:
- Lijst
summary: De stand van een lijst
description: 'Met `wacht` (hoogstens 25 seconden) wacht de aanroep tot de proef of de verwerking verder is,
zodat je niet hoeft te blijven vragen. Wie het token heeft, kan de lijst lezen: geef het alleen
aan de gebruiker.'
parameters:
- name: token
in: path
required: true
schema:
type: string
- name: wacht
in: query
schema:
type: integer
format: int32
default: 0
responses:
'200':
description: De stand.
content:
application/json:
schema:
$ref: '#/components/schemas/LijstAntwoord'
'404':
description: Deze lijst bestaat niet.
content:
application/json:
schema:
$ref: '#/components/schemas/ApiFoutResponse'
'410':
description: De API-toegang tot deze lijst is verlopen (LijstVerlopen).
content:
application/json:
schema:
$ref: '#/components/schemas/ApiFoutResponse'
operationId: getApiLijstByToken
x-operation-id-source: derived
/Api/Lijst/{token}/Kolommen:
post:
tags:
- Lijst
summary: De kolommen van een bestand kiezen
description: 'Alleen nodig bij status kolommen_kiezen. Kolommen tellen vanaf 0 (kolommen.lijst). Kies je alleen
`adres`, dan zoeken wij de postcode- en plaatskolom erbij. Zonder postcode en plaats in het
bestand: geef `vastePlaats` mee.'
parameters:
- name: token
in: path
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/LijstKolomKeuze'
text/json:
schema:
$ref: '#/components/schemas/LijstKolomKeuze'
application/*+json:
schema:
$ref: '#/components/schemas/LijstKolomKeuze'
responses:
'200':
description: De nieuwe stand; de proef begint.
content:
application/json:
schema:
$ref: '#/components/schemas/LijstAntwoord'
'400':
description: Een kolom die niet bestaat, of een kolom zonder adressen.
content:
application/json:
schema:
$ref: '#/components/schemas/ApiFoutResponse'
'409':
description: De kolommen liggen al vast (LijstNietKlaar, LijstAlBetaald).
content:
application/json:
schema:
$ref: '#/components/schemas/ApiFoutResponse'
operationId: postApiLijstByTokenKolommen
x-operation-id-source: derived
/Api/Lijst/{token}/Betaallink:
post:
tags:
- Lijst
summary: De betaallink van een lijst
description: 'Bij status wacht_op_betaling. Geeft de pagina waar de gebruiker de proef en de prijs ziet en zelf
met iDEAL betaalt; openen start nog geen betaling. Met `email` staat het eigen e-mailadres van
de gebruiker daar al ingevuld: daar komen het bestand en de factuur. Verzin nooit een e-mailadres.'
parameters:
- name: token
in: path
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/LijstBetaallinkAanvraag'
text/json:
schema:
$ref: '#/components/schemas/LijstBetaallinkAanvraag'
application/*+json:
schema:
$ref: '#/components/schemas/LijstBetaallinkAanvraag'
responses:
'200':
description: De stand met betaling.betaalUrl.
content:
application/json:
schema:
$ref: '#/components/schemas/LijstAntwoord'
'400':
description: Een onbruikbaar e-mailadres (EmailOngeldig).
content:
application/json:
schema:
$ref: '#/components/schemas/ApiFoutResponse'
'409':
description: Er valt (nog) niets te betalen (LijstNietBetaalbaar), of er is al betaald (LijstAlBetaald).
content:
application/json:
schema:
$ref: '#/components/schemas/ApiFoutResponse'
operationId: postApiLijstByTokenBetaallink
x-operation-id-source: derived
/Api/Lijst/{token}/Resultaten:
get:
tags:
- Lijst
summary: De rijen van een geleverde lijst
description: In de volgorde van de invoer, hoogstens 500 per pagina; `volgende` wijst naar de volgende pagina.
parameters:
- name: token
in: path
required: true
schema:
type: string
- name: vanaf
in: query
schema:
type: integer
format: int32
default: 0
- name: aantal
in: query
schema:
type: integer
format: int32
default: 100
responses:
'200':
description: Een pagina rijen.
content:
application/json:
schema:
$ref: '#/components/schemas/LijstResultaten'
'409':
description: Nog niet betaald en verwerkt (LijstNietKlaar).
content:
application/json:
schema:
$ref: '#/components/schemas/ApiFoutResponse'
'410':
description: De API-toegang is verlopen (LijstVerlopen).
content:
application/json:
schema:
$ref: '#/components/schemas/ApiFoutResponse'
operationId: getApiLijstByTokenResultaten
x-operation-id-source: derived
/Api/Lijst/{token}/Download:
get:
tags:
- Lijst
summary: Het bestand van een geleverde lijst, met de WOZ-kolommen erbij
parameters:
- name: token
in: path
required: true
schema:
type: string
responses:
'200':
description: Het bestand.
'409':
description: Nog niet betaald en verwerkt (LijstNietKlaar).
content:
application/vnd.openxmlformats-officedocument.spreadsheetml.sheet:
schema:
$ref: '#/components/schemas/ApiFoutResponse'
text/csv:
schema:
$ref: '#/components/schemas/ApiFoutResponse'
application/json:
schema:
$ref: '#/components/schemas/ApiFoutResponse'
'410':
description: Niet meer beschikbaar (LijstVerlopen).
content:
application/vnd.openxmlformats-officedocument.spreadsheetml.sheet:
schema:
$ref: '#/components/schemas/ApiFoutResponse'
text/csv:
schema:
$ref: '#/components/schemas/ApiFoutResponse'
application/json:
schema:
$ref: '#/components/schemas/ApiFoutResponse'
operationId: getApiLijstByTokenDownload
x-operation-id-source: derived
components:
schemas:
LijstBetaallinkAanvraag:
type: object
properties:
email:
type:
- string
- 'null'
additionalProperties: false
description: Het e-mailadres voor de levering bij het opvragen van de betaallink.
LijstBetaling:
type: object
properties:
betaalUrl:
type:
- string
- 'null'
description: De pagina waar de gebruiker de proef ziet en zelf met iDEAL betaalt. Openen start nog geen betaling.
emailBekend:
type: boolean
description: Of er al een e-mailadres voor de levering is; zo niet, dan vraagt de betaalpagina erom.
uitleg:
type:
- string
- 'null'
additionalProperties: false
LijstProefRij:
type: object
properties:
rij:
type:
- integer
- 'null'
description: Positie in de lijst, vanaf 1; leeg bij een proef van voor 27 september 2026.
format: int32
invoer:
type:
- string
- 'null'
adres:
type:
- string
- 'null'
description: Het adres zoals wij het vonden.
status:
type:
- string
- 'null'
description: gevonden, geen_woz, niet_gevonden of mislukt.
wozWaarde:
type:
- integer
- 'null'
format: int64
wozJaar:
type:
- integer
- 'null'
description: 'Het belastingjaar van die waarde: peildatum 1 januari 2025 is WOZ-jaar 2026.'
format: int32
peildatum:
type:
- string
- 'null'
additionalProperties: false
description: Een rij uit de gratis proef.
LijstKolomKeuze:
type: object
properties:
adres:
type:
- integer
- 'null'
description: De kolom met het hele adres. Dan zoeken wij de postcode- en plaatskolom erbij.
format: int32
straat:
type:
- integer
- 'null'
format: int32
huisnummer:
type:
- integer
- 'null'
format: int32
huisletter:
type:
- integer
- 'null'
format: int32
toevoeging:
type:
- integer
- 'null'
format: int32
postcode:
type:
- integer
- 'null'
format: int32
plaats:
type:
- integer
- 'null'
format: int32
kopregel:
type:
- integer
- 'null'
description: 'De rij met kolomnamen (vanaf 0), of -1 als het bestand er geen heeft. Leeg: zoals we hem vonden.'
format: int32
vastePlaats:
type:
- string
- 'null'
description: De plaats voor alle adressen, als het bestand geen postcode en geen plaats heeft.
additionalProperties: false
description: De kolomkeuze bij een bestand waarvan we de adreskolom niet zeker wisten. Kolommen tellen vanaf 0.
LijstKolom:
type: object
properties:
index:
type: integer
format: int32
naam:
type:
- string
- 'null'
additionalProperties: false
LijstVoortgang:
type: object
properties:
verwerkt:
type: integer
format: int32
totaal:
type: integer
format: int32
geschatKlaarOp:
type:
- string
- 'null'
description: Een schatting; lijsten worden een voor een verwerkt.
format: date-time
additionalProperties: false
LijstLinks:
type: object
properties:
status:
type:
- string
- 'null'
description: Deze stand opnieuw opvragen.
pagina:
type:
- string
- 'null'
description: De pagina voor de gebruiker zelf, met proef, betalen en download.
kolommen:
type:
- string
- 'null'
betaallink:
type:
- string
- 'null'
resultaten:
type:
- string
- 'null'
download:
type:
- string
- 'null'
additionalProperties: false
LijstKolommen:
type: object
properties:
lijst:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/LijstKolom'
voorbeeld:
type:
- array
- 'null'
items:
type: array
items:
type: string
description: De eerste regels onder de kop, om de kolom te kunnen kiezen.
voorstel:
$ref: '#/components/schemas/LijstKolomKeuze'
plaatsNodig:
type: boolean
description: Of het bestand geen postcode en geen plaats heeft; geef dan vastePlaats mee.
additionalProperties: false
description: 'Bij een bestand waarvan we de adreskolom niet zeker wisten: de kolommen en een paar regels.'
LijstResultaatRij:
type: object
properties:
rij:
type: integer
description: Positie in de lijst, vanaf 1. Een lege regel uit de invoer staat er niet in.
format: int32
invoer:
type:
- string
- 'null'
adres:
type:
- string
- 'null'
status:
type:
- string
- 'null'
description: gevonden, geen_woz, niet_gevonden of mislukt.
wozWaarde:
type:
- integer
- 'null'
format: int64
wozJaar:
type:
- integer
- 'null'
format: int32
peildatum:
type:
- string
- 'null'
oppervlakte:
type:
- integer
- 'null'
format: int32
historie:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/LijstHistorieWaarde'
description: Eerdere WOZ-waarden van dit adres, nieuwste eerst.
additionalProperties: false
LijstResultaten:
type: object
properties:
token:
type:
- string
- 'null'
vanaf:
type: integer
format: int32
totaal:
type: integer
format: int32
rijen:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/LijstResultaatRij'
volgende:
type:
- string
- 'null'
description: De volgende pagina, of leeg als dit de laatste was.
avg:
type:
- string
- 'null'
additionalProperties: false
description: Een pagina rijen van een geleverde lijst.
ApiFoutResponse:
type: object
properties:
fout:
type:
- string
- 'null'
description: Foutmelding in het Nederlands, bedoeld om te tonen aan een eindgebruiker.
example: Ongeldige API-key.
code:
type:
- string
- 'null'
description: 'Stabiele foutcode om in code op te matchen. Niet elke fout heeft er een; bij een
onverwachte fout is dit veld null.'
example: Unauthorized
status:
type: integer
description: De HTTP-statuscode, ook in de body zodat loggen zonder response-object werkt.
format: int32
example: 401
detail:
description: 'Extra toelichting waar die bestaat, anders null. Dit is soms een tekst en soms een
object (bijvoorbeeld met de gezochte term en een hint), dus lees het als vrije JSON.'
traceId:
type:
- string
- 'null'
description: Correlatie-id van de request. Vermeld dit bij een supportvraag.
example: 0HN7GK2P3QJ1M:00000003
additionalProperties: false
description: 'De foutrespons die de API werkelijk teruggeeft. Bestaat omdat de OpenAPI-spec bij 400, 401,
402 en 404 naar ProblemDetails verwees, terwijl
WozApi.Middleware.ErrorHandlingMiddleware een heel andere vorm stuurt. Wie op de
documentatie bouwde, parseerde dus elke fout verkeerd.'
LijstAantallen:
type: object
properties:
rijen:
type: integer
description: Regels in de lijst, lege meegeteld.
format: int32
uniek:
type: integer
description: Verschillende adressen; een dubbel adres telt en kost een keer.
format: int32
herkend:
type:
- integer
- 'null'
format: int32
nietGevonden:
type:
- integer
- 'null'
format: int32
geenWoz:
type:
- integer
- 'null'
format: int32
mislukt:
type:
- integer
- 'null'
format: int32
gevonden:
type:
- integer
- 'null'
description: Met een WOZ-waarde in het resultaat; pas na de verwerking.
format: int32
additionalProperties: false
LijstAdres:
type: object
properties:
tekst:
type:
- string
- 'null'
description: Het hele adres als tekst. Wint van de losse velden als beide er zijn.
straat:
type:
- string
- 'null'
huisnummer:
type:
- string
- 'null'
huisletter:
type:
- string
- 'null'
toevoeging:
type:
- string
- 'null'
postcode:
type:
- string
- 'null'
plaats:
type:
- string
- 'null'
ref:
type:
- string
- 'null'
description: Een eigen kenmerk van de gebruiker (objectnummer, regelnummer); komt terug in het bestand.
jaar:
type:
- string
- 'null'
description: Een jaartal per adres, voor de keuze "per rij uit een kolom" op de betaalpagina.
additionalProperties: false
description: 'Een adres in een lijst van de API: een tekst ("Spuistraat 36C, 1012 TT Amsterdam") of losse
velden. Een AI-assistent heeft meestal het een of het ander, en we willen hem niet laten kiezen.'
LijstAanvraag:
type: object
properties:
adressen:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/LijstAdres'
description: 'De adressen, elk als tekst ("Spuistraat 36C, 1012 TT Amsterdam") of als object met straat,
huisnummer, huisletter, toevoeging, postcode, plaats, en eventueel ref en jaar.'
bestand:
type:
- string
- 'null'
description: Een Excel- of CSV-bestand in base64, in plaats van adressen.
bestandsnaam:
type:
- string
- 'null'
description: Naam van dat bestand, met extensie (.xlsx, .xls of .csv).
plaats:
type:
- string
- 'null'
description: De plaats voor alle adressen zonder postcode of plaats. "Kerkstraat 12" bestaat in veel plaatsen.
email:
type:
- string
- 'null'
description: Het eigen e-mailadres van de gebruiker voor de levering; alvast ingevuld op de betaalpagina.
additionalProperties: false
description: 'Een nieuwe lijst: adressen, of een bestand in base64.'
LijstPrijs:
type: object
properties:
adressen:
type: integer
description: 'Het aantal adressen dat de gebruiker betaalt: alle herkende, de proefadressen inbegrepen.'
format: int32
prijsPerAdresExclBtw:
type:
- number
- 'null'
format: double
exclBtw:
type: number
format: double
btw:
type: number
format: double
inclBtw:
type: number
format: double
valuta:
type:
- string
- 'null'
uitleg:
type:
- string
- 'null'
additionalProperties: false
LijstAntwoord:
type: object
properties:
token:
type:
- string
- 'null'
description: 'Het token van de lijst: wie het heeft, kan de lijst lezen en betalen. Niet in een URL voor derden zetten.'
status:
type:
- string
- 'null'
description: kolommen_kiezen, proef_bezig, niets_herkend, wacht_op_betaling, bezig, klaar of mislukt.
volgendeStap:
$ref: '#/components/schemas/LijstVolgendeStap'
avg:
type:
- string
- 'null'
description: Hoe de gebruiker met de uitkomst omgaat.
aantallen:
$ref: '#/components/schemas/LijstAantallen'
proef:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/LijstProefRij'
prijs:
$ref: '#/components/schemas/LijstPrijs'
betaling:
$ref: '#/components/schemas/LijstBetaling'
voortgang:
$ref: '#/components/schemas/LijstVoortgang'
kolommen:
$ref: '#/components/schemas/LijstKolommen'
links:
$ref: '#/components/schemas/LijstLinks'
volgendeControleNaSeconden:
type:
- integer
- 'null'
description: Na zoveel seconden is er waarschijnlijk iets veranderd; leeg als er niets te wachten valt.
format: int32
aangemaaktOp:
type: string
format: date-time
geleverdOp:
type:
- string
- 'null'
format: date-time
apiToegangTot:
type:
- string
- 'null'
description: Tot wanneer de API deze lijst nog toont; de link uit de bezorgmail blijft daarna werken.
format: date-time
additionalProperties: false
description: De stand van een lijst. Elk veld dat in deze stand niets zegt, ontbreekt.
LijstVolgendeStap:
type: object
properties:
code:
type:
- string
- 'null'
description: 'Vaste code om op te beslissen: kolom_kiezen, wachten, niets_herkend, betaallink_geven, verwerken, klaar, mislukt.'
tekst:
type:
- string
- 'null'
additionalProperties: false
LijstHistorieWaarde:
type: object
properties:
peildatum:
type:
- string
- 'null'
wozJaar:
type:
- integer
- 'null'
format: int32
wozWaarde:
type: integer
format: int64
additionalProperties: false
securitySchemes:
ApiKey:
type: apiKey
description: 'Gebruik je API key via header: X-Api-Key: {key} of Authorization: ApiKey {key}'
name: X-Api-Key
in: header
OAuth2:
type: oauth2
description: 'OAuth-koppeling voor softwareleveranciers: authorization code met PKCE. Je klant koppelt zijn eigen Wozapi-account; credits gaan van diens saldo af.'
flows:
authorizationCode:
authorizationUrl: https://woz-api.nl/connect/authorize
tokenUrl: https://woz-api.nl/connect/token
scopes:
woz.lookup: WOZ-gegevens opvragen op de credits van de gekoppelde klant
account.saldo: Creditsaldo van de gekoppelde klant lezen