openapi: "3.0.2"
info:
title: "Digitaal vlaanderen - adres locaties"
description: "Deze dienst geeft adresinformatie die beschikbaar is in KBO en in GRAR (Gebouwen- & AdressenRegister). Meer specifiek worden de adreslocaties opgehaald."
contact:
name: "Magda helpdesk"
url: "https://overheid.vlaanderen.be/magda"
license:
name: "Adreslocaties"
url: "https://overheid.vlaanderen.be/magda"
version: "1.0.0"
servers:
- url: "api/v1/onderneming"
paths:
/ondernemingen/adressenLocaties/{ondernemingsNummer}:
get:
tags:
- "Adressenlocaties"
summary: "Haalt de adressenlocaties op van een gegeven ondernemingsnummer."
parameters:
- name: x-correlation-id
in: header
required: true
schema:
$ref: '#/components/schemas/Correlation-Id'
- name: ondernemingsNummer
in: path
required: true
schema:
$ref: '#/components/schemas/ondernemingsNummer'
responses:
200:
description: "Response met inhoud"
content:
application/json:
schema:
$ref: "#/components/schemas/adresLocatieLijstObject"
400:
$ref: '#/components/responses/BadRequest'
401:
$ref: '#/components/responses/InvalidAuthorization'
403:
$ref: '#/components/responses/Forbidden'
404:
$ref: '#/components/responses/NotFound'
500:
$ref: '#/components/responses/UnexpectedServerError'
502:
$ref: '#/components/responses/BadGateway'
503:
$ref: '#/components/responses/ServiceUnavailable'
504:
$ref: '#/components/responses/GatewayTimeout'
components:
parameters:
CorrelationId:
name: x-correlation-id
in: header
required: true
schema:
$ref: '#/components/schemas/Correlation-Id'
responses:
#HTTP Status 400
BadRequest:
description: "Invalid data supplied"
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorMessage'
#HTTP Status 401
InvalidAuthorization:
description: "Invalid authorization"
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorMessage'
#HTTP Status 403
Forbidden:
description: "Authentication failed"
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorMessage'
#HTTP Status 404
NotFound:
description: "Resource not found"
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorMessage'
#HTTP Status 412
PreConditionFailed:
description: Precondition Failed
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorMessage'
#HTTP Status 500
UnexpectedServerError:
description: "Unexpected Server Error"
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorMessage'
#HTTP Status 502
BadGateway:
description: "Bad Gateway"
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorMessage'
#HTTP Status 503
ServiceUnavailable:
description: "Service unavailable"
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorMessage'
#HTTP Status 504
GatewayTimeout:
description: "Gateway Timeout"
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorMessage'
schemas:
Correlation-Id:
description: "ID van de transactie. Gebruik deze ID voor het tracen van logs en voor het afhandelen van incidenten."
type: string
minLength: 10
maxLength: 36
adresLocatieLijstObject:
type: object
properties:
"@context":
type: string
example: "https://vlaamseoverheid.atlassian.net/wiki/download/attachments/6118410708/adressenLocaties-context.jsonld?api=v2"
ondernemingsNummer:
$ref: '#/components/schemas/ondernemingsNummer'
soortOnderneming:
$ref: '#/components/schemas/soortOnderneming'
adresLocatieLijst:
type: array
items:
$ref: '#/components/schemas/adresLocatie'
required:
- ondernemingsNummer
adresLocatie:
type: object
properties:
kboAdres:
$ref: '#/components/schemas/kboAdres'
grarAdressen:
type: array
items:
$ref: '#/components/schemas/grarAdres'
ondernemingsNummer:
description: "Ondernemingsnummer zoals gekend bij KBO"
type: string
pattern: "[0-9]{10}"
soortOnderneming:
type: object
description: "Duidt aan of de onderneming een natuurlijk persoon of rechtspersoon betreft. Komt niet terug bij een vestiging."
properties:
code:
type: object
properties:
waarde:
type: integer
maxLength: 1
description: "1: Natuurlijke persoon, 2: Rechtspersoon"
example: 1
beschrijving:
type: string
maxLength: 255
description: "1: Natuurlijke persoon, 2: Rechtspersoon"
example: "Natuurlijke persoon"
required:
- waarde
kboAdres:
type: object
properties:
datumBegin:
type: string
format: date
datumEinde:
type: string
format: date
straat:
type: object
properties:
code:
type: string
maxLength: 4
description: "RR code van straat"
naam:
type: string
maxLength: 120
huisNummer:
type: string
maxLength: 15
example: "75A"
busNummer:
type: string
maxLength: 15
example: "101"
gemeente:
type: object
properties:
nisCode:
type: string
pattern: "[0-9]{1,5}"
postCode:
type: string
maxLength: 15
example: "2800"
naam:
type: string
maxLength: 120
example: "Mechelen"
staat:
type: string
maxLength: 120
description: "Buitenlandse staat"
example: "OH"
land:
type: object
properties:
nisCode:
type: string
pattern: "[0-9]{3}"
isoCode:
type: string
pattern: "[a-zA-A0-9]{2,3}"
naam:
type: string
maxLength: 120
example: "België"
required:
- nisCode
taal:
type: object
description: "Bevat code en omschrijving van de taal waarin het adres terugkomt."
properties:
code:
type: object
properties:
waarde:
type: string
example: 0
maxLength: 2
description: "De taal van het adres in code (0, 1, 2, 3). Opm.: Er kunnen mogelijk andere codes terugkomen, maar deze krijgen dan geen Beschrijving. Het betreft hier voor ons onbekende codes die we vanuit KBO hebben ontvangen."
beschrijving:
type: string
maxLength: 255
example: "onbekend"
description: "0: onbekend, 1: fr, 2: nl, 3: de"
required:
- waarde
required:
- code
type:
type: object
properties:
code:
type: object
properties:
waarde:
type: string
minLength: 3
maxLength: 3
description: "Type adres: 001: Onderneming, 002: Vestiging, 003: Bijhuis"
example: "001"
beschrijving:
type: string
maxLength: 255
description: "Type adres: 001: Onderneming, 002: Vestiging, 003: Bijhuis"
example: "Onderneming"
required:
- waarde
required:
- code
grarAdres:
type: object
properties:
taalCode:
type: string
enum:
- "nl"
- "fr"
- "de"
- "en"
grarId:
type: number
straat:
type: object
properties:
grarId:
type: number
naam:
type: string
maxLength: 120
huisNummer:
type: string
maxLength: 15
example: "75A"
busNummer:
type: string
maxLength: 15
example: "101"
postKanton:
type: string
pattern: "[1-9][0-9]{3}"
homoniemToevoeging:
type: string
maxLength: 50
description: "Toevoeging die toelaat het onderscheid te maken tussen twee straten die dezelfde naam hebben binnen dezelfde gemeente."
adresPositie:
type: object
properties:
coördinaat:
type: string
maxLength: 50
example: "POINT (110892.88 210440.22)"
positieGeometrieMethode:
type: string
enum:
- aangeduidDoorBeheerder
- afgeleidVanObject
- geïnterpoleerd
positieSpecificatie:
type: string
enum:
- gemeente
- straat
- perceel
- lot
- standplaats
- ligplaats
- gebouw
- gebouweenheid
- ingang
- wegsegment
ErrorMessage:
required:
- detail
- title
type: object
properties:
type:
type: string
description: "A URI reference that identifies the problem type. This specification encourages that, when de-referenced, it provide human-readable documentation for the problem type. When this member is not present, its value is assumed to be about:blank."
title:
type: string
description: "A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation."
status:
type: string
description: "The HTTP status code generated by the origin server for this occurrence of the problem."
detail:
type: string
description: "A human-readable explanation specific to this occurrence of the problem."
instance:
type: string
description: "A URI reference that identifies the specific occurrence of the problem. It may or may not yield further information if de-referenced."
description: "A representation of a generic error message." |