Het Dataplatform van gemeente Amsterdam gaat het gebruik van een API key bij het gebruik van API's verplicht stellen. Hiermee wil het Dataplatform inzicht krijgen wie gebruik maakt van haar APIs, zodat het Dataplatform kan communiceren over updates en wijzigingen in de API's. Eventuele wijzigingen in de API's kunnen dan tijdig geïmplementeerd worden in uw systemen. Dit gaat gelden voor alle zogenaamde 'DSO API's' van het Dataplatform van gemeente Amsterdam.
Het gebruik van een API key bij de aanroep van een API van het Dataplatform van gemeente Amsterdam is vanaf half september optioneel. In overleg met de dataorganisatie wordt een deadline vastgesteld voor het moment vanaf wanneer de API keys verplicht worden. U kunt de API's van het Dataplatform dan niet meer gebruiken zonder een API key mee te geven.
Dit heeft gevolgen voor uw systemen!
Vraag tijdig een API key aan om uw systemen hierop aan te passen. U kunt met dit formulier een API key aanvragen.
Werken met QGIS
Eenmalige lokale setup
Let op, een eenmalige setup van de qgis-auth.db in je locale profiel is nodig voordat je de API endpoints toevoegt. Onthoudt jouw gebruikersnaam en wachtwoord goed.
WFS
De WFS-lagen zijn beschikbaar onder de volgende URL's:
https://api.data.amsterdam.nl/v1/wfs/{<dataset>}/
Gebruik zo'n URL in QGIS:
In de bovenstaande afbeelding wordt QGIS gekoppeld met de BAG dataset: https://api.data.amsterdam.nl/v1/wfs/bag/
Vector tiles (MVT)
QGis heeft geen ingebouwde ondersteuning voor TileJSON. Deze is wel beschikbaar via de MapTiler plugin: https://plugins.qgis.org/plugins/tags/tilejson/. Vervolgens kan je de TileJSON inladen:
https://api.data.amsterdam.nl/v1/mvt/<dataset>/tilejson.json
.
De standaard QGis functionaliteit vereist dat je handmatig een "X/Y/Z-tegel" of "Vectortegel" URL opgeeft:
- In de Browser (linker tabblad), rechtermuisklik op Vector Tiles, dan Nieuwe algemene verbinding (New Generic Connection).
- De URL is
https://api.data.amsterdam.nl/v1/mvt/<dataset>/<tabel>/{z}/{x}/{y}.pbf
. Vervang<dataset>
en<tabel>
door de namen in kwestie, maar laat{z}/{x}/{y}
staan, inclusief de accolades. - Min. zoomniveau (Min. Zoom Level) staat standaard op 0. Zet dit op 1.
Een lijst van datasets die vector tiles ondersteunen is beschikbaar op: https://api.data.amsterdam.nl/v1/mvt/.
Autorisatie
Voor gesloten datasets moet ook een autorisatieconfiguratie worden
toegevoegd. Dit kan door op het groene kruisje in het bovenstaande menu
te klikken. Selecteer OAuth2-authenticatie, met 'implicit' grant flow.
Vul bij 'request url'
https://iam.amsterdam.nl/auth/realms/datapunt-ad/protocol/openid-connect/auth
en bij 'token url'
https://iam.amsterdam.nl/auth/realms/datapunt-ad/protocol/openid-connect/certs
in. De client id is qgis
, Scope is email
en access method is
header
. QGIS zal bij het activeren van een kaartlaag een browserscherm
openen, waarin gebruikersnaam en wachtwoord kunnen worden ingevoerd.
Voor acceptatie vervang je in bovengenoemde URLs "datapunt-ad" met "datapunt-ad-acc".
In de bovenstaande afbeelding wordt authenticatieconfiguratie ingevoerd in QGIS.
Hierna zijn de gegevens te raadplegen, te filteren en te combineren:
Queries op relaties
Om object-relaties uit te lezen in WFS (momenteel niet ondersteund door MVT) kun je de volgende optie toevoegen aan de URL:
?embed={relatienaam},{...}
zal een veld platgeslagen invoegen.?expand={relatienaam},{...}
zal een veld als "complex feature" invoegen.
Gebruik deze URL in QGIS, of een ander GIS-pakket.
Als voorbeeld: de BAG feature type buurt een relatie met een stadsdeel. Deze kan op beide manieren geconfigureerd worden in een GIS-pakket:
https://api.data.amsterdam.nl/v1/wfs/bag/?embed=stadsdeel
levert een stadsdelen met platgeslagen dot-notate.https://api.data.amsterdam.nl/v1/wfs/bag/?expand=stadsdeel
levert een stadsdelen als complex feature.
Deze parameters kunnen gecombineerd worden met de OUTPUTFORMAT
parameter, zodat het export formaat ook geneste relaties bevat.
Datasets met meerdere geometrieën
Indien een tabel meerdere geometriëen bevat, zal deze voor ieder geometrieveld los opgenomen worden in de WFS. Zodoende kunnen GIS-pakketten op beide geometrieën weergeven op de kaart.
Via MVT kan alleen de hoofdgeometrie (mainGeometry
) van een dataset
worden geladen.
Dit is bijvoorbeeld te zien bij Horeca-exploitatievergunningen: er wordt een aparte laag voor het pand, en de bijbehorende terrassen beschikbaar gesteld. Zodoende kunnen beide geometriën uitgelezen worden. De data van beide lagen is identiek; alleen de volgorde van geometrie-velden is aangepast.