-
Notifications
You must be signed in to change notification settings - Fork 2
/
openapi.yaml
527 lines (527 loc) · 23.7 KB
/
openapi.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
openapi: 3.0.0
servers:
- description: "SwaggerHub API Auto Mocking"
url: https://virtserver.swaggerhub.com/VNGRealisatie/api/bg_imwoz_trn/v1
- description: "Referentie-implementatie"
url: https://www.voorbeeldgemeente.nl/api/bg_imwoz_trn/v1
info:
title: BG IMWOZ TRN
description: ""
version: "0.9.0"
x-imvertor-generator-version: "1.65.4"
x-yamlCompiler-stylesheets-version: "20220110"
contact:
url: https://github.com/VNG-Realisatie/IMWOZ-bevragingen
license:
name: European Union Public License, version 1.2 (EUPL-1.2)
url: https://eupl.eu/1.2/nl/
paths:
/transacties:
get:
operationId: gettransacties
description: "<body><p>Het bericht dat de JSON/REST API voor het ophalen van een collectie transacties retourneert.</p></body>"
parameters:
- in: query
name: aanduidingBruikbaarheid
description: ""
required: false
schema:
$ref: "#/components/schemas/AanduidingBruikbaarheid"
- in: query
name: aardMarktinformatie
description: ""
required: false
schema:
$ref: "#/components/schemas/AardMarktinformatie"
- in: query
name: datumTransactie
description: ""
required: false
schema:
type: string
format: date
- in: query
name: documentIdentificatie
description: "<body><p>Er zijn diverse typen niet formele documenten die kunnen worden vastgelegd. Hierbij kan ook gedacht worden aan foto's etc. De verwijzing naar deze documenten geschiedt op overeenkomstige wijze als de verwijzing naar formele brondocumenten. De unieke aanduiding van de vindplaats van een document binnen een organisatie zal ook vaak besaan uit een uri voor een digitaal archief. Naast numerieke tekens kan dus ook gebruik worden gemaakt van letters uit het alfabet en bijzondere leestekens als verbindingsstreepjes en scheidingstekens om documenten binnen een organisatie vindbaar te maken.</p></body>"
required: false
schema:
type: string
maxLength: 512
- in: query
name: kadastraleIdentificatie
description: ""
required: false
schema:
type: string
pattern: NL\.IMKAD\.KadastraalObject\.[1-9][0-9]{0,14}(\.[0-9]+)?
- in: query
name: omstandighedenTransactie
description: "<body><p>Dit attribuut geeft aan op welk aspect de onderhave transactie afwijkt van de waarderingsvoorschriften van de wet WOZ.</p></body>"
required: false
schema:
$ref: "#/components/schemas/OmstandighedenTransactie"
- in: query
name: peiltijdstipMaterieel
description: ""
required: false
schema:
type: string
format: date
- in: query
name: soortTransactie
description: "<body><p>In deze entiteit worden allerlei soorten transacties geregistreerd. Door dit gegeven kunnen verschillende soorten transacties van elkaar worden onderscheiden.</p></body>"
required: false
schema:
$ref: "#/components/schemas/SoortTransactie"
- in: query
name: volgnummerMarktgegeven
description: ""
required: false
schema:
type: integer
- in: query
name: wozObjectnummer
description: "<body><p>Elk WOZ-object wordt uniek aangeduid door middel van een identificatiecode. Deze identificatiecode bestaat uit de gemeentecode volgens de landelijke GBA-tabel 33 ' Gemeente' in combinatie met een voor de registrerende gemeente uniek volgnummer. Het WOZ-objectnummer verandert niet bij gemeentelijke herindeling, naamswijziging of bij grenscorrectie. Dit betekent dat in de gemeentelijke WOZ-administratie ook (actieve) WOZ-objecten en sluimerende WOZ-objecten kunnen voorkomen, waarvan de eerste vier cijfers niet overeenkomen met de actuele gemeentecode van de desbetreffende gemeente. Wanneer een nieuw WOZ-object wordt geregistreerd moeten de eerste vier posities wel verplicht overeenkomen met de gemeentecode van de gemeente die het object opvoert. Een WOZ-objectnummer mag niet voor zowel een WOZ-object als voor een Sluimerend WOZ-object gebruikt worden als identificerend nummer.</p></body>"
required: false
schema:
type: string
maxLength: 12
responses:
'200':
description: "Zoekactie geslaagd"
headers:
api-version:
$ref: "https://raw.githubusercontent.com/VNG-Realisatie/API-Kennisbank/master/common/common.yaml#/components/headers/api_version"
warning:
$ref: "https://raw.githubusercontent.com/VNG-Realisatie/API-Kennisbank/master/common/common.yaml#/components/headers/warning"
X-Pagination-Page:
$ref: "https://raw.githubusercontent.com/VNG-Realisatie/API-Kennisbank/master/common/common.yaml#/components/headers/X_Pagination_Page"
X-Pagination-Limit:
$ref: "https://raw.githubusercontent.com/VNG-Realisatie/API-Kennisbank/master/common/common.yaml#/components/headers/X_Pagination_Limit"
X-Rate-Limit-Limit:
$ref: "https://raw.githubusercontent.com/VNG-Realisatie/API-Kennisbank/master/common/common.yaml#/components/headers/X_Rate_Limit_Limit"
X-Rate-Limit-Remaining:
$ref: "https://raw.githubusercontent.com/VNG-Realisatie/API-Kennisbank/master/common/common.yaml#/components/headers/X_Rate_Limit_Remaining"
X-Rate-Limit-Reset:
$ref: "https://raw.githubusercontent.com/VNG-Realisatie/API-Kennisbank/master/common/common.yaml#/components/headers/X_Rate_Limit_Reset"
content:
application/hal+json:
schema:
$ref: '#/components/schemas/TransactieHalCollectie'
'400':
$ref: "https://raw.githubusercontent.com/VNG-Realisatie/API-Kennisbank/master/common/common.yaml#/components/responses/400"
'401':
$ref: "https://raw.githubusercontent.com/VNG-Realisatie/API-Kennisbank/master/common/common.yaml#/components/responses/401"
'403':
$ref: "https://raw.githubusercontent.com/VNG-Realisatie/API-Kennisbank/master/common/common.yaml#/components/responses/403"
'409':
$ref: "https://raw.githubusercontent.com/VNG-Realisatie/API-Kennisbank/master/common/common.yaml#/components/responses/409"
'410':
$ref: "https://raw.githubusercontent.com/VNG-Realisatie/API-Kennisbank/master/common/common.yaml#/components/responses/410"
'415':
$ref: "https://raw.githubusercontent.com/VNG-Realisatie/API-Kennisbank/master/common/common.yaml#/components/responses/415"
'429':
$ref: "https://raw.githubusercontent.com/VNG-Realisatie/API-Kennisbank/master/common/common.yaml#/components/responses/429"
'500':
$ref: "https://raw.githubusercontent.com/VNG-Realisatie/API-Kennisbank/master/common/common.yaml#/components/responses/500"
'501':
$ref: "https://raw.githubusercontent.com/VNG-Realisatie/API-Kennisbank/master/common/common.yaml#/components/responses/501"
'503':
$ref: "https://raw.githubusercontent.com/VNG-Realisatie/API-Kennisbank/master/common/common.yaml#/components/responses/503"
'default':
$ref: "https://raw.githubusercontent.com/VNG-Realisatie/API-Kennisbank/master/common/common.yaml#/components/responses/default"
tags:
- Transacties (TRN)
/transacties/{identificatie}:
get:
operationId: gettransactie
description: "<body><p>Het bericht dat de JSON/REST API voor het ophalen gegevens van een transactie retourneert.</p></body>"
parameters:
- in: path
name: identificatie
description: ""
required: true
schema:
$ref: "#/components/schemas/Sleutel"
responses:
'200':
description: "Zoekactie geslaagd"
headers:
api-version:
$ref: "https://raw.githubusercontent.com/VNG-Realisatie/API-Kennisbank/master/common/common.yaml#/components/headers/api_version"
warning:
$ref: "https://raw.githubusercontent.com/VNG-Realisatie/API-Kennisbank/master/common/common.yaml#/components/headers/warning"
X-Rate-Limit-Limit:
$ref: "https://raw.githubusercontent.com/VNG-Realisatie/API-Kennisbank/master/common/common.yaml#/components/headers/X_Rate_Limit_Limit"
X-Rate-Limit-Remaining:
$ref: "https://raw.githubusercontent.com/VNG-Realisatie/API-Kennisbank/master/common/common.yaml#/components/headers/X_Rate_Limit_Remaining"
X-Rate-Limit-Reset:
$ref: "https://raw.githubusercontent.com/VNG-Realisatie/API-Kennisbank/master/common/common.yaml#/components/headers/X_Rate_Limit_Reset"
content:
application/hal+json:
schema:
$ref: '#/components/schemas/TransactieHal'
'400':
$ref: "https://raw.githubusercontent.com/VNG-Realisatie/API-Kennisbank/master/common/common.yaml#/components/responses/400"
'401':
$ref: "https://raw.githubusercontent.com/VNG-Realisatie/API-Kennisbank/master/common/common.yaml#/components/responses/401"
'403':
$ref: "https://raw.githubusercontent.com/VNG-Realisatie/API-Kennisbank/master/common/common.yaml#/components/responses/403"
'404':
$ref: "https://raw.githubusercontent.com/VNG-Realisatie/API-Kennisbank/master/common/common.yaml#/components/responses/404"
'409':
$ref: "https://raw.githubusercontent.com/VNG-Realisatie/API-Kennisbank/master/common/common.yaml#/components/responses/409"
'410':
$ref: "https://raw.githubusercontent.com/VNG-Realisatie/API-Kennisbank/master/common/common.yaml#/components/responses/410"
'415':
$ref: "https://raw.githubusercontent.com/VNG-Realisatie/API-Kennisbank/master/common/common.yaml#/components/responses/415"
'429':
$ref: "https://raw.githubusercontent.com/VNG-Realisatie/API-Kennisbank/master/common/common.yaml#/components/responses/429"
'500':
$ref: "https://raw.githubusercontent.com/VNG-Realisatie/API-Kennisbank/master/common/common.yaml#/components/responses/500"
'501':
$ref: "https://raw.githubusercontent.com/VNG-Realisatie/API-Kennisbank/master/common/common.yaml#/components/responses/501"
'503':
$ref: "https://raw.githubusercontent.com/VNG-Realisatie/API-Kennisbank/master/common/common.yaml#/components/responses/503"
'default':
$ref: "https://raw.githubusercontent.com/VNG-Realisatie/API-Kennisbank/master/common/common.yaml#/components/responses/default"
tags:
- Transacties (TRN)
components:
schemas:
TransactieHalCollectie:
type: object
properties:
_links:
$ref: https://raw.githubusercontent.com/VNG-Realisatie/API-Kennisbank/master/common/common.yaml#/components/schemas/HalPaginationLinks
_embedded:
type: object
properties:
transacties:
type: array
items:
$ref: '#/components/schemas/TransactieHal'
TransactieHal:
allOf:
- $ref: '#/components/schemas/Transactie'
- type: object
properties:
_links:
$ref: '#/components/schemas/Transactie_links'
Transactie:
type: object
description: <body><p>Deze entiteit wordt meestal gebruikt om marktgegevens over één transactie weer te geven. In incidentele gevallen zal een transactie worden uitgesplitst in verschillende voorkomens van deze entiteit (met eigen volgnummer). Dit kan bijvoorbeeld van belang zijn, wanneer in één huurcontract zowel kantoorruimte als een showroom wordt verhuurd en van de afzonderlijke WOZ-deelobjecten de huurprijs bekend is. Een vergelijkbare situatie doet zich voor bij het uitsplitsen van de stichtingskosten naar verschillende delen van een onroerende zaak.</p></body>
required:
- aanduidingBruikbaarheid
- aardMarktinformatie
- datumTransactie
- identificatie
- kadastraleIdentificatie
- keuzeKoopOfHuurtOfGronduitgifteOfStichtingskosten
- omstandighedenTransactie
- soortTransactie
- tijdstipRegistratie
- transactieprijs
properties:
aanduidingBruikbaarheid:
$ref: '#/components/schemas/AanduidingBruikbaarheid'
aardMarktinformatie:
$ref: '#/components/schemas/AardMarktinformatie'
datumTransactie:
type: string
title: datumTransactie
description: ''
format: date
documentIdentificatie:
type: array
title: documentIdentificatie
description: <body><p>Er zijn diverse typen niet formele documenten die kunnen worden vastgelegd. Hierbij kan ook gedacht worden aan foto's etc. De verwijzing naar deze documenten geschiedt op overeenkomstige wijze als de verwijzing naar formele brondocumenten. De unieke aanduiding van de vindplaats van een document binnen een organisatie zal ook vaak besaan uit een uri voor een digitaal archief. Naast numerieke tekens kan dus ook gebruik worden gemaakt van letters uit het alfabet en bijzondere leestekens als verbindingsstreepjes en scheidingstekens om documenten binnen een organisatie vindbaar te maken.</p></body>
minItems: 0
items:
type: string
maxLength: 512
minLength: 1
identificatie:
$ref: '#/components/schemas/Sleutel'
kadastraleIdentificatie:
type: array
title: kadastraleIdentificatie
description: ''
minItems: 1
items:
type: string
minLength: 1
pattern: NL\.IMKAD\.KadastraalObject\.[1-9][0-9]{0,14}(\.[0-9]+)?
keuzeKoopOfHuurtOfGronduitgifteOfStichtingskosten:
$ref: '#/components/schemas/KoopOfHuurOfGronduitgifteOfStichtingskosten'
kwantificeringVerschilTransactieprijs:
type: integer
title: kwantificeringVerschilTransactieprijs
description: <body><p>Een positieve waarde betekent dat de gerealiseerde transactieprijs opgehoogd moet worden met het genoemde bedrag om een reële inschatting van de marktwaarde te krijgen. Bijvoorbeeld wanneer er een verkoopprijs inclusief een omvangrijke reserve bij de VVE is (bijvoorbeeld 25.000 euro) dan wordt dit geregistreerd als minus 25.000. Op overeenkomstige wijze kan een correctie ivm incentives op een huurprijs worden weergegeven. Een eventuele huurvrije periode kan dan vertaald worden in een bedrag als correct op de huurprijs en geregistreerd worden als minus 10.000.</p></body>
omschrijvingTransactie:
type: string
title: omschrijvingTransactie
description: <body><p>In dit gegeven kan vrij commentaar over de transactie worden opgenomen.</p></body>
maxLength: 50
minLength: 1
omstandighedenTransactie:
$ref: '#/components/schemas/OmstandighedenTransactie'
soortTransactie:
$ref: '#/components/schemas/SoortTransactie'
tijdstipRegistratie:
type: string
title: tijdstipRegistratie
description: ''
format: date-time
transactieprijs:
type: integer
title: transactieprijs
description: ''
trnwoz:
type: array
items:
$ref: '#/components/schemas/Trnwoz'
volgnummerMarktgegeven:
type: array
title: volgnummerMarktgegeven
description: ''
minItems: 0
items:
type: integer
Transactie_links:
type: object
properties:
self:
$ref: https://raw.githubusercontent.com/VNG-Realisatie/API-Kennisbank/master/common/common.yaml#/components/schemas/HalLink
kadastraleOnroerendeZaken:
title: isbetrokkenin
type: array
description: ''
minItems: 1
items:
$ref: https://raw.githubusercontent.com/VNG-Realisatie/API-Kennisbank/master/common/common.yaml#/components/schemas/HalLink
resultaatMarktanalyses:
title: wordtgeanalyseerdin
type: array
description: ''
items:
$ref: https://raw.githubusercontent.com/VNG-Realisatie/API-Kennisbank/master/common/common.yaml#/components/schemas/HalLink
GronduitgifteGrp:
type: object
description: ''
properties:
grondUitgiftePrijsPerM2:
type: integer
title: grondUitgiftePrijsPerM2
description: ''
indicatieOmzetbelastingGrondprijs:
$ref: '#/components/schemas/CodeOmzetBelasting'
oppervlakteGrond:
type: integer
title: oppervlakteGrond
description: ''
HuurtransactieGrp:
type: object
description: ''
properties:
gebruiksoppervlakte:
type: integer
title: gebruiksoppervlakte
description: <body><p>Dit gegeven is met name van belang wanneer het verhuurde object niet gelijk is aan het WOZ-object. Dit kan bijvoorbeeld het geval zijn als meerdere verhuurde objecten in het kader van de Wet WOZ worden samengevoegd tot een samenstel of wanneer een verhuurd gedeelte niet als afzonderlijk WOZ-object kan worden afgebakend.</p></body>
huurprijsPerM2:
type: integer
title: huurprijsPerM2
description: ''
indexatieHuurprijs:
type: boolean
title: indexatieHuurprijs
description: ''
indicatieOmzetbelastingHuurprijs:
$ref: '#/components/schemas/CodeOmzetBelasting'
looptijdHuurcontract:
type: integer
title: looptijdHuurcontract
description: ''
servicekosten:
type: integer
title: servicekosten
description: ''
verhuurbareVloeroppervlakte:
type: integer
title: verhuurbareVloeroppervlakte
description: <body><p>In huurcontracten wordt vaak het verhuurbaar vloeroppervlakte vastgelegd, omdat ook de huurprijs vaak is afgeleid van een huurprijs per verhuurbare vierkante meter per jaar.</p></body>
KoopOfHuurOfGronduitgifteOfStichtingskosten:
type: object
description: ''
required:
- gronduitgifte
- huurtransactie
- kooptransactie
- stichtingskosten
properties:
gronduitgifte:
$ref: '#/components/schemas/GronduitgifteGrp'
huurtransactie:
$ref: '#/components/schemas/HuurtransactieGrp'
kooptransactie:
$ref: '#/components/schemas/KooptransactieGrp'
stichtingskosten:
$ref: '#/components/schemas/StichtingskostenGrp'
KooptransactieGrp:
type: object
description: ''
properties:
koopdatum:
type: string
title: koopdatum
description: <body><p>Alleen noodzakelijk wanneer door een lange periode tussen koopdatum en transportdatum de transactieprijs geen goede weergave is van de marktwaarde op het moment van transport. Dit gegeven zal voor de meeste transacties gelet op gebruik niet gevuld behoeven te worden.</p></body>
format: date
servicekosten:
type: integer
title: servicekosten
description: ''
StichtingskostenGrp:
type: object
description: ''
properties:
brutoInhoud:
type: integer
title: brutoInhoud
description: ''
gebruiksoppervlakte:
type: integer
title: gebruiksoppervlakte
description: <body><p>Dit gegeven is met name van belang wanneer het nieuw gebouwde object niet gelijk is aan het WOZ-object. Dit kan bijvoorbeeld het geval zijn als een gebouw een deel is van een WOZ-object, bijvoorbeeld een uitbreiding van een bestaand gebouw of wanneer een nieuw gebouwd object gesplitst wordt in afzonderlijke WOZ-objecten bij ingebruikname.</p></body>
grondkosten:
type: integer
title: grondkosten
description: ''
indicatieOmzetbelastingGrondprijs:
$ref: '#/components/schemas/CodeOmzetBelasting'
kostenAfbouwInrichting:
type: integer
title: kostenAfbouwInrichting
description: <body><p>Afbouw en inrichting heeft betrekking op scheidingswanden, etc.</p></body>
kostenInfrastructuur:
type: integer
title: kostenInfrastructuur
description: ''
kostenInstallaties:
type: integer
title: kostenInstallaties
description: <body><p>De installaties hebben betrekking op verwarming, airconditioning, etc.</p></body>
kostenOverig:
type: integer
title: kostenOverig
description: ''
kostenRuwbouw:
type: integer
title: kostenRuwbouw
description: ''
kostenWerktuigen:
type: integer
title: kostenWerktuigen
description: ''
TijdvakRelatie:
type: object
description: ''
required:
- beginRelatie
- eindRelatie
properties:
beginRelatie:
type: string
title: beginRelatie
description: ''
format: date
eindRelatie:
type: string
title: eindRelatie
description: ''
format: date
Trnwoz:
type: object
description: ''
required:
- tijdvakRelatie
- wozObjectnummer
properties:
tijdvakRelatie:
$ref: '#/components/schemas/TijdvakRelatie'
wozObjectnummer:
type: string
title: wozObjectnummer
description: <body><p>Elk WOZ-object wordt uniek aangeduid door middel van een identificatiecode. Deze identificatiecode bestaat uit de gemeentecode volgens de landelijke GBA-tabel 33 ' Gemeente' in combinatie met een voor de registrerende gemeente uniek volgnummer. Het WOZ-objectnummer verandert niet bij gemeentelijke herindeling, naamswijziging of bij grenscorrectie. Dit betekent dat in de gemeentelijke WOZ-administratie ook (actieve) WOZ-objecten en sluimerende WOZ-objecten kunnen voorkomen, waarvan de eerste vier cijfers niet overeenkomen met de actuele gemeentecode van de desbetreffende gemeente. Wanneer een nieuw WOZ-object wordt geregistreerd moeten de eerste vier posities wel verplicht overeenkomen met de gemeentecode van de gemeente die het object opvoert. Een WOZ-objectnummer mag niet voor zowel een WOZ-object als voor een Sluimerend WOZ-object gebruikt worden als identificerend nummer.</p></body>
pattern: ^[0-9]{12}$
maxLength: 12
AanduidingBruikbaarheid:
type: string
description: ''
enum:
- '00'
- '62'
- '64'
- '99'
AardMarktinformatie:
type: string
description: ''
enum:
- O
- T
- V
CodeOmzetBelasting:
type: string
description: ''
enum:
- E
- I
- O
OmstandighedenTransactie:
type: string
description: ''
enum:
- '11'
- '12'
- '13'
- '14'
- '15'
- '16'
- '21'
- '22'
- '23'
- '24'
- '31'
- '32'
- '33'
- '34'
- '35'
- '41'
- '42'
- '51'
- '52'
- '53'
- '54'
- '60'
- '61'
- '62'
- '63'
- '64'
- '65'
- '66'
- '67'
- '71'
- '72'
SoortTransactie:
type: string
description: ''
enum:
- H
- K
- O
- S
- U
Sleutel:
type: string
description: ''
maxLength: 40
minLength: 1