...
OpenAPI-specificaties
Swagger integration |
---|
{
"openapi": "3.0.0",
"info": {
"title": "Certificates Endpoint",
"version": "1.0",
"description": "# Certificates API\n\nThis documentation contains the API description that is expected from a source of certificates that is supplying certificates to the Burgerprofiel platform of the Flemish Government."
},
"servers": [
{
"url": "https://burgerprofiel.vlaanderen.be/v1",
"description": "Burgerprofiel"
}
],
"paths": {
"/certificates/{ssn}": {
"get": {
"tags": [
"Certificates"
],
"summary": "Certificates List",
"parameters": [
{
"name": "ssn",
"in": "path",
"description": "Social security number",
"required": true,
"style": "simple",
"explode": false,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/hal+json": {
"schema": {
"$ref": "#/components/schemas/List-Certificates"
},
"examples": {
"Full Example": {
"value": {
"certificates": [
{
"id": "85144567-7043-4469-9e79-279f4eb31e27",
"language": "nl",
"name": "Dienstencheques 2019",
"year": 2019,
"links": [
{
"rel": "self",
"href": "https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/85144567-7043-4469-9e79-279f4eb31e27/nl"
},
{
"rel": "download",
"href": "https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/85144567-7043-4469-9e79-279f4eb31e27/nl/download"
}
]
},
{
"id": "85144567-7043-4469-9e79-279f4eb31e27",
"language": "en",
"name": "Dienstencheques 2019",
"year": 2019,
"links": [
{
"rel": "self",
"href": "https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/85144567-7043-4469-9e79-279f4eb31e27/en"
},
{
"rel": "download",
"href": "https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/85144567-7043-4469-9e79-279f4eb31e27/en/download"
}
]
},
{
"id": "8a4faf91-300e-46f0-8dad-0e1e572dbca1",
"language": "nl",
"name": "Sportkamp Tennis",
"community": 23088,
"year": 2018,
"links": [
{
"rel": "self",
"href": "https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/8a4faf91-300e-46f0-8dad-0e1e572dbca1"
},
{
"rel": "download",
"href": "https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/8a4faf91-300e-46f0-8dad-0e1e572dbca1/download"
}
]
},
{
"id": "25da5b3c-4de4-457c-a803-cea5cafbfff5",
"language": "nl",
"name": "Dienstencheques 2018",
"year": 2018,
"links": [
{
"rel": "self",
"href": "https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/25da5b3c-4de4-457c-a803-cea5cafbfff5"
},
{
"rel": "download",
"href": "https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/25da5b3c-4de4-457c-a803-cea5cafbfff5/download"
}
]
},
{
"id": "8e3405ea-ef23-4d8a-b5b4-9cb645ac312b",
"language": "nl",
"name": "Deelname opleiding recreatiemedewerker",
"year": 2019,
"links": [
{
"rel": "self",
"href": "https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/8e3405ea-ef23-4d8a-b5b4-9cb645ac312b"
},
{
"rel": "download",
"href": "https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/8e3405ea-ef23-4d8a-b5b4-9cb645ac312b/download"
}
]
},
{
"id": "8df1a0b0-1278-46a7-a3dc-cce7f593d02c",
"language": "nl",
"name": "Sportkamp tennis",
"community": 11002,
"year": 2012,
"links": [
{
"rel": "self",
"href": "https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/8df1a0b0-1278-46a7-a3dc-cce7f593d02c"
},
{
"rel": "download",
"href": "https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/8df1a0b0-1278-46a7-a3dc-cce7f593d02c/download"
}
]
},
{
"id": "34492c86-7bf8-4d96-9e61-e3c2f51d172a",
"language": "nl",
"name": "Dienstencheques 2015",
"year": 2015,
"links": [
{
"rel": "self",
"href": "https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/34492c86-7bf8-4d96-9e61-e3c2f51d172a"
},
{
"rel": "download",
"href": "https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/34492c86-7bf8-4d96-9e61-e3c2f51d172a/download"
}
]
},
{
"id": "a681c382-8e99-4757-9fdb-487b9b6aeb78",
"language": "nl",
"name": "Trainersopleiding voetbal",
"community": 71053,
"year": 2013,
"links": [
{
"rel": "self",
"href": "https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/a681c382-8e99-4757-9fdb-487b9b6aeb78"
},
{
"rel": "download",
"href": "https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/a681c382-8e99-4757-9fdb-487b9b6aeb78/download"
}
]
},
{
"id": "6973ab14-15c6-4ee7-944c-9d1162d9de71",
"language": "nl",
"name": "Dienstencheques 2014",
"year": 2014,
"links": [
{
"rel": "self",
"href": "https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/6973ab14-15c6-4ee7-944c-9d1162d9de71"
},
{
"rel": "download",
"href": "https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/6973ab14-15c6-4ee7-944c-9d1162d9de71/download"
}
]
},
{
"id": "d61fdf2e-8099-4757-93d9-2709f1ce1ae2",
"language": "nl",
"name": "Vlaamse kinderbijslag",
"year": 2019,
"links": [
{
"rel": "self",
"href": "https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/d61fdf2e-8099-4757-93d9-2709f1ce1ae2"
},
{
"rel": "download",
"href": "https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/d61fdf2e-8099-4757-93d9-2709f1ce1ae2/download"
}
]
}
],
"pageMetadata": {
"number": 1,
"size": 10,
"totalElements": 40,
"totalPages": 4
},
"links": [
{
"rel": "self",
"href": "https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302?limit=10&page=0"
},
{
"rel": "next",
"href": "https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302?limit=10&page=1"
},
{
"rel": "start",
"href": "https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302?limit=10&page=0"
},
{
"rel": "last",
"href": "https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302?limit=10&page=3"
}
]
}
},
"Last page, no more next page": {
"value": {
"certificates": [
{
"id": "85144567-7043-4469-9e79-279f4eb31e27",
"language": "nl",
"name": "Dienstencheques 2019",
"year": 2019,
"links": [
{
"rel": "self",
"href": "https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/85144567-7043-4469-9e79-279f4eb31e27"
},
{
"rel": "download",
"href": "https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/85144567-7043-4469-9e79-279f4eb31e27/download"
}
]
},
{
"id": "57faeea1-ff3b-4c65-989c-e2175610c2b0",
"language": "nl",
"name": "Sportkamp Volleybal",
"community": 21004,
"year": 2019,
"links": [
{
"rel": "self",
"href": "https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/57faeea1-ff3b-4c65-989c-e2175610c2b0"
},
{
"rel": "download",
"href": "https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/57faeea1-ff3b-4c65-989c-e2175610c2b0/download"
}
]
},
{
"id": "8a4faf91-300e-46f0-8dad-0e1e572dbca1",
"language": "nl",
"name": "Sportkamp Tennis",
"community": 23088,
"year": 2018,
"links": [
{
"rel": "self",
"href": "https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/8a4faf91-300e-46f0-8dad-0e1e572dbca1"
},
{
"rel": "download",
"href": "https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/8a4faf91-300e-46f0-8dad-0e1e572dbca1/download"
}
]
}
],
"pageMetadata": {
"number": 3,
"size": 10,
"totalElements": 23,
"totalPages": 3
},
"links": [
{
"rel": "self",
"href": "https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302?limit=10&page=2"
},
{
"rel": "start",
"href": "https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302?limit=10&page=0"
},
{
"rel": "last",
"href": "https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302?limit=10&page=2"
}
]
}
},
"First page is last page": {
"value": {
"certificates": [
{
"id": "85144567-7043-4469-9e79-279f4eb31e27",
"language": "nl",
"name": "Dienstencheques 2019",
"year": 2019,
"links": [
{
"rel": "self",
"href": "https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/85144567-7043-4469-9e79-279f4eb31e27"
},
{
"rel": "download",
"href": "https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/85144567-7043-4469-9e79-279f4eb31e27/download"
}
]
},
{
"id": "57faeea1-ff3b-4c65-989c-e2175610c2b0",
"language": "nl",
"name": "Sportkamp Volleybal",
"community": 21004,
"year": 2019,
"links": [
{
"rel": "self",
"href": "https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/57faeea1-ff3b-4c65-989c-e2175610c2b0"
},
{
"rel": "download",
"href": "https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/57faeea1-ff3b-4c65-989c-e2175610c2b0/download"
}
]
},
{
"id": "8a4faf91-300e-46f0-8dad-0e1e572dbca1",
"language": "nl",
"name": "Sportkamp Tennis",
"community": 23088,
"year": 2018,
"links": [
{
"rel": "self",
"href": "https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/8a4faf91-300e-46f0-8dad-0e1e572dbca1"
},
{
"rel": "download",
"href": "https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/8a4faf91-300e-46f0-8dad-0e1e572dbca1/download"
}
]
}
],
"pageMetadata": {
"number": 1,
"size": 10,
"totalElements": 3,
"totalPages": 1
},
"links": [
{
"rel": "self",
"href": "https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302?limit=10&page=0"
},
{
"rel": "start",
"href": "https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302?limit=10&page=0"
},
{
"rel": "last",
"href": "https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302?limit=10&page=0"
}
]
}
}
}
}
}
},
"403": {
"description": "Access Denied",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"examples": {
"Example": {
"value": {
"title": "An error occurred!",
"detail": "Access Denied",
"status": 403
}
}
}
}
}
},
"404": {
"description": "Not Found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"examples": {
"Example": {
"value": {
"title": "An error occurred!",
"detail": "Could not find the certificate you are looking for.",
"status": 404
}
}
}
}
}
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"examples": {
"Example": {
"value": {
"title": "An error occurred!",
"detail": "<description of the internal server error>",
"status": 500
}
}
}
}
}
}
}
}
},
"/certificates/{ssn}/{certificateId}/{language}": {
"get": {
"tags": [
"Certificates"
],
"summary": "Certificate Details",
"description": "",
"parameters": [
{
"name": "ssn",
"in": "path",
"description": "Social security number",
"required": true,
"style": "simple",
"explode": false,
"schema": {
"type": "string"
}
},
{
"name": "certificateId",
"in": "path",
"description": "ID of the certificate, defined as path parameter here (can be query parameter too)",
"required": true,
"style": "simple",
"explode": false,
"schema": {
"type": "string"
}
},
{
"name": "language",
"in": "path",
"description": "Language of the certificate, defined as path parameter here (can be query parameter too)",
"required": true,
"style": "simple",
"explode": false,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/hal+json": {
"schema": {
"$ref": "#/components/schemas/Item-Certificate"
},
"examples": {
"only-required": {
"value": {
"id": "85144567-7043-4469-9e79-279f4eb31e27",
"language": "nl",
"name": "certificate-1234",
"links": [
{
"rel": "self",
"href": "https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/85144567-7043-4469-9e79-279f4eb31e27/nl"
},
{
"rel": "download",
"href": "https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/85144567-7043-4469-9e79-279f4eb31e27/nl/download"
}
]
}
},
"only-year": {
"value": {
"id": "85144567-7043-4469-9e79-279f4eb31e27",
"language": "nl",
"name": "certificate-1234",
"year": 2019,
"links": [
{
"rel": "self",
"href": "https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/85144567-7043-4469-9e79-279f4eb31e27/nl"
},
{
"rel": "download",
"href": "https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/85144567-7043-4469-9e79-279f4eb31e27/nl/download"
}
]
}
},
"only-community": {
"value": {
"id": "85144567-7043-4469-9e79-279f4eb31e27",
"language": "nl",
"name": "certificate-1234",
"community": 21004,
"links": [
{
"rel": "self",
"href": "https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/85144567-7043-4469-9e79-279f4eb31e27/nl"
},
{
"rel": "download",
"href": "https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/85144567-7043-4469-9e79-279f4eb31e27/nl/download"
}
]
}
},
"full-certificate": {
"value": {
"id": "85144567-7043-4469-9e79-279f4eb31e27",
"language": "nl",
"name": "certificate-1234",
"community": 21004,
"year": 2019,
"links": [
{
"rel": "self",
"href": "https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/85144567-7043-4469-9e79-279f4eb31e27/nl"
},
{
"rel": "download",
"href": "https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/85144567-7043-4469-9e79-279f4eb31e27/nl/download"
}
]
}
}
}
}
}
},
"403": {
"description": "Access Denied",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"examples": {
"Example": {
"value": {
"title": "An error occurred!",
"detail": "Access Denied",
"status": 403
}
}
}
}
}
},
"404": {
"description": "Not Found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"examples": {
"Example": {
"value": {
"title": "An error occurred!",
"detail": "Could not find the certificate you are looking for.",
"status": 404
}
}
}
}
}
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"examples": {
"Example": {
"value": {
"title": "An error occurred!",
"detail": "<description of the internal server error>",
"status": 500
}
}
}
}
}
}
}
}
}
},
"components": {
"schemas": {
"ProblemDetails": {
"title": "Problem details",
"required": [
"type",
"title",
"detail",
"status"
],
"type": "object",
"properties": {
"title": {
"type": "string"
},
"detail": {
"type": "string"
},
"status": {
"format": "int32",
"type": "integer"
}
},
"example": {
"title": "Er heeft zich een fout voorgedaan!",
"detail": "",
"status": 400
}
},
"Item-Certificate": {
"title": "Certificate",
"required": [
"id",
"links",
"name"
],
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"language": {
"type": "string"
},
"year": {
"type": "integer"
},
"community": {
"type": "integer"
},
"links": {
"$ref": "#/components/schemas/Common-Item-Links"
}
}
},
"Common-General-Link": {
"title": "Link",
"required": [
"href",
"rel"
],
"type": "object",
"properties": {
"rel": {
"type": "string"
},
"href": {
"type": "string"
}
}
},
"Common-Item-Links": {
"title": "Links For Item",
"type": "array",
"items": {
"$ref": "#/components/schemas/Common-General-Link"
}
},
"Common-List-Links": {
"title": "Links For List",
"type": "array",
"items": {
"$ref": "#/components/schemas/Common-General-Link"
}
},
"Common-List-PageMetadata": {
"title": "PageMetadata",
"required": [
"number",
"size",
"totalElements",
"totalPages"
],
"type": "object",
"properties": {
"size": {
"type": "integer"
},
"totalElements": {
"type": "integer"
},
"totalPages": {
"type": "number"
},
"number": {
"type": "number"
}
}
},
"List-Certificates": {
"required": [
"certificates",
"links",
"pageMetaData"
],
"type": "object",
"properties": {
"certificates": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Item-Certificate"
}
},
"links": {
"$ref": "#/components/schemas/Common-List-Links"
},
"pageMetaData": {
"$ref": "#/components/schemas/Common-List-PageMetadata"
}
}
}
}
}
} |
JSON
We gebruiken application/hal+json
als standaard. Deze specifieke JSON geeft aan dat de payload voldoet aan de HATEOAS-standaard.
...
Een URL voor uw endpoint kan er als volgt uitzien: https://<hostname>/v1/certificates/<ssn>?limit=10&page=0
Verplichte velden
In de de OpenAPI-specificaties vindt u een overzicht van de verplichte en de optionele velden. Indien nodig kunt u extra velden toevoegen.
...
...
Digitaal Vlaanderen vertaalt alleen de velden in de OpenAPI-specificaties.
Lijst met attesten/vergunningen
De lijst met attesten is het belangrijkste endpoint om te voorzien. Het zorgt voor een lijst met attesten en vergunningen die bij de aangemelde gebruiker horen, inclusief de details over die attesten en vergunningen. De gebruiker wordt geïdentificeerd op basis van zijn/haar INSZ-nummer. (Zie ook: https://overheid.vlaanderen.be/insz-nummer )
Zie ook de OpenAPI-specificaties voor meer informatie.
...
id (verplicht): het ID van het attest/de vergunning
taal language (verplicht): de taal van het attest/de vergunning, verplicht in ISO639-1 formaat:
nl
,fr
,de
,en
. Zie ook: https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes .naam name (verplicht): de naam van het attest/de vergunning
jaaryear (optioneel): het jaar dat het attest/de vergunning werd uitgegeven (indien van toepassing)
community (optioneel): de gemeente waar het attest/de vergunning werd uitgegeven (indien van toepassing). Dit moet een NIS-code zijn. Zie ook: https://statbel.fgov.be/nl/over-statbel/methodologie/classificaties/geografie
Note |
---|
Digitaal Vlaanderen verwerkt alleen de velden die deel uitmaken de OpenAPI-specificaties. |
Request (voorbeeld)
Header:
Authorization: Bearer XyZAbCd1234
Method: GET
URL:
https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/85144567-7043-4469-9e79-279f4eb31e27/nl
...