openapi: "3.0.2"
info:
title: "Asbestattesten"
description: "Deze dienst maakt het mogelijk om asbestattesten op te vragen uit het asbestinventatris bij OVAM"
contact:
name: "Magda helpdesk"
url: "https://overheid.vlaanderen.be/magda"
license:
name: "Asbestinventaris"
url: "https://overheid.vlaanderen.be/magda"
version: "1.0.0"
servers:
- url: "api/v1/milieu"
paths:
/attesten/asbestattesten/gebouweenheden/{gebouweenheidId}:
get:
tags:
- "asbestattesten"
summary: "Het asbestId opbragen op basis van de gebouweenheidsId"
parameters:
- name: gebouweenheidId
in: path
required: true
description: "Id van de gebouweenheid waarvoor gegevens opgevraagd worden"
schema:
type: string
- name: x-correlation-id
in: header
required: true
schema:
$ref: '#/components/schemas/Correlation-Id'
responses:
200:
description: "Response met inhoud"
content:
application/json:
schema:
$ref: "#/components/schemas/GebouwEenheidSummary"
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'
/attesten/asbestattesten/{asbestinventarisId}:
get:
tags:
- "asbestattesten"
summary: "details van een attest opvragen in JSON formaat"
parameters:
- name: asbestinventarisId
in: path
required: true
description: "Id van de asbestinventaris waarvoor gegevens opgevraagd worden"
schema:
type: string
format: uuid
- name: x-correlation-id
in: header
required: true
schema:
$ref: '#/components/schemas/Correlation-Id'
responses:
200:
description: "Response met inhoud in JSON formaat van een asbestattest"
content:
application/json:
schema:
$ref: "#/components/schemas/Asbestinventaris"
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'
/attesten/asbestattesten/{asbestinventarisId}/attest:
get:
tags:
- "asbestattesten"
summary: "het attest opvragen in PDF formaat"
parameters:
- name: asbestinventarisId
in: path
required: true
description: "Id van de asbestinventaris waarvoor het attest opgevraagd wordt"
schema:
type: string
format: uuid
- name: x-correlation-id
in: header
required: true
schema:
$ref: '#/components/schemas/Correlation-Id'
responses:
200:
description: "Het pdf attest horende bij de asbestinventaris"
content:
application/pdf:
schema:
type: string
format: binary
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'
/attesten/asbestattesten:
get:
tags:
- "asbestattesten"
summary: "Zoek inventarissen"
parameters:
- name: x-correlation-id
in: header
required: true
schema:
$ref: '#/components/schemas/Correlation-Id'
- name: geowkt
in: query
description: "Geometrie waarbinnen asbestinventarissen worden gezocht. Geeft alle resultaten die voor meer dan 5% binnen de geometrie liggen. Coördinatensysteem (`crs`) is verplicht."
schema:
type: string
example: POLYGON((154986.030215235 190913.00871922178,154987.5279744013 190914.9131133676,154989.21246565756 190913.72696459584,154987.87177998378 190911.86510712252,154986.030215235 190913.00871922178))
- name: crs
in: query
description: "Coördinatensysteem van `geowkt` waarbinnen asbestinventarissen worden gezocht"
schema:
type: string
example: "EPSG:31370"
- name: gemeentecode
in: query
description: "Gemeentecode van het perceel van de asbestinventaris. `afdelingscode`, `sectiecode`, `perceelnummer` zijn ook vereist."
schema:
type: string
example: "44040"
- name: afdelingcode
in: query
description: "Afdelingscode van het perceel van de asbestinventaris. `gemeentecode`, `sectiecode`, `perceelnummer` zijn ook vereist."
schema:
type: string
example: "44040"
- name: sectiecode
in: query
description: "Sectiecode van het perceel van de asbestinventaris. `gemeentecode`, `afdelingscode`, `perceelnummer` zijn ook vereist."
schema:
type: string
example: "A"
- name: perceelnummer
in: query
description: "Perceelnummer van het perceel van de asbestinventaris.`gemeentecode`, `afdelingscode`, `sectiecode` zijn ook vereist."
schema:
type: string
example: "0297/00K000"
- name: gemeentenaam
in: query
description: "Gemeentenaam van het adres van de asbestinventaris. `postcode`, `straatnaam`, `huisnummer` zijn ook vereist."
schema:
type: string
- name: postcode
in: query
description: "Postcode van het adres van de asbestinventaris. `gemeentenaam`, `straatnaam`, `huisnummer` zijn ook vereist."
schema:
type: string
- name: straatnaam
in: query
description: "Straatnaam van het adres van de asbestinventaris. `gemeentenaam`, `postcode`, `huisnummer` zijn ook vereist."
schema:
type: string
- name: huisnummer
in: query
description: "Huisnummer van het adres van de asbestinventaris. `gemeentenaam`, `postcode`, `straatnaam` zijn ook vereist."
schema:
type: string
- name: busnummer
in: query
description: "Busnummers van het adres van de asbestinventaris. Optionele parameter. Als het ingevuld is, zijn `gemeentenaam`,`postcode`, `straatnaam`, `huisnummer` ook vereist."
schema:
type: array
items:
type: string
example:
- "001"
- "002"
- "003"
- name: vbradresid
in: query
description: "VBR adres ID van de asbestinventaris"
schema:
type: string
example: "https://data.vlaanderen.be/id/adres/16256079"
responses:
200:
description: "Alle overeenkomstige inventarissen."
content:
application/json:
schema:
$ref: "#/components/schemas/Asbestinventarissen"
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'
/attesten/asbestattesten/analyserapport/{analyseRapportId}:
get:
tags:
- "asbestattesten"
summary: "Download een analyserapport"
parameters:
- name: x-correlation-id
in: header
required: true
schema:
$ref: '#/components/schemas/Correlation-Id'
- name: analyseRapportId
in: path
required: true
description: "Id van het analyserapport"
schema:
type: string
format: uuid
responses:
200:
description: "Een analyserapport in pdf dat geüpload werd door de deskundige"
content:
application/pdf:
schema:
type: string
format: binary
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 of the transaction. Use this ID for log tracing and incident handling"
type: string
minLength: 10
maxLength: 36
GebouwEenheidSummary:
description: "Beschrijving van de gebouweenheid zoals gekend binnen de asbestinventaris applicatie"
properties:
inventarissen:
type: array
items:
type: object
properties:
id:
type: string
format: uuid
Asbestinventarissen:
description: "Overzicht van de overeenkomstige asbestinventarissen zoals gekend binnen de asbestinventaris applicatie"
properties:
inventarissen:
$ref: '#/components/schemas/Inventarissen'
Inventarissen:
type: array
items:
type: object
properties:
id:
type: string
format: uuid
Asbestinventaris:
description: "Details van een inventaris"
type: object
properties:
id:
type: string
format: uuid
attestNummer:
type: string
locatieBeschrijving:
type: string
description: "Betreft slechts een indicatie van de locatie. Het bevat niet de officiële locatiegegevens van de overheid"
resultaat:
type: string
aanleiding:
type: string
gemeenschappelijkDeel:
type: boolean
gemeenschappelijkeDelen:
type: array
items:
$ref: '#/components/schemas/GemeenschappelijkDeel'
analyseRapporten:
type: array
items:
$ref: '#/components/schemas/AnalyseRapport'
uitgegevenOp:
type: string
format: date
geldigTot:
type: string
format: date
attest:
type: object
properties:
id:
type: string
format: uuid
aantalAsbestmaterialen:
type: integer
aantalBeperkingen:
type: integer
aantalUitsluitingen:
type: integer
asbestmaterialen:
type: array
items:
$ref: '#/components/schemas/Asbestmateriaal'
GemeenschappelijkDeel:
description: 'Identificator naar het gemeenschappelijk deel'
type: object
properties:
type:
type: string
id:
type: string
format: uuid
AnalyseRapport:
description: 'Identificator naar het analyse rapport'
type: object
properties:
type:
type: string
id:
type: string
format: uuid
Asbestmateriaal:
description: 'Identificator naar het asbestmateriaal'
type: object
properties:
type:
type: string
id:
type: string
format: uuid
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." |