Basisinformatie
- Basis-URL
https://kulturdb.de/api/v1
- Toegang
- alleen-lezen (HTTP
GET), geen aanmelding en geen API-sleutel
- Formaten
- JSON (RFC 8259), GeoJSON (RFC 7946,
application/geo+json), tekenset UTF-8
- Taal
- Veldnamen, filterwaarden en teksten zijn in het Duits.
/objekte/{id}?sprache=nl (of sprache=en, sprache=fr) geeft de classificatietermen in het Nederlands (of Engels, Frans).
- Coördinaten
- WGS 84 (EPSG:4326), volgorde in GeoJSON
[longitude, latitude]
- Toegang via de browser
- CORS is ingeschakeld (
Access-Control-Allow-Origin: *) – direct bruikbaar vanuit webapplicaties
- Caching
- Antwoorden bevatten
Cache-Control-headers (1–60 minuten)
- Fouten
- juiste HTTP-status (
400: ongeldige parameters, 404: niet gevonden) met {"error": "…"}
- Versiebeheer
- De versie maakt deel uit van het pad (
/v1); wijzigingen die bestaande applicaties onbruikbaar maken, verschijnen uitsluitend in een nieuwe versie.
- Object-URL’s
- De object-ID is permanent:
https://kulturdb.de/objekt/{id}, Nederlandse pagina https://kulturdb.de/nl/objekt/{id}
Eindpunten
GET /objekte.geojson
Objecten als een GeoJSON FeatureCollection – ideaal voor kaartclients (NETGIS, OpenLayers, Leaflet, QGIS). Alle filters kunnen worden gecombineerd.
| Parameter | Waarde | Betekenis |
bbox | minLon,minLat,maxLon,maxLat | alleen objecten binnen het kaartgebied (WGS 84) |
limit | 1 – 50.000 | maximaal aantal (standaard 5000) |
| + alle filters |
https://kulturdb.de/api/v1/objekte.geojson?bbox=6.62,49.74,6.66,49.77&limit=100
https://kulturdb.de/api/v1/objekte.geojson?objektart=Burgen
GET /objekte/{id}
Eén enkel object met coördinaten, korte beschrijving, afbeeldingen en bronvermeldingen voor de afbeeldingen. Optioneel sprache=nl, sprache=en of sprache=fr: classificatietermen en de URL van de pagina in die taal. Voorbeeld van een antwoord
https://kulturdb.de/api/v1/objekte/99
https://kulturdb.de/api/v1/objekte/99?sprache=nl
GET /punkte
Zeer compacte lijst met punten voor clusterkaarten met vele duizenden objecten:
{"felder": ["id","lat","lon","titel","bereich","kategorie"], "bereiche": […], "kategorien": […], "daten": [[…], …]} –
bereich en kategorie zijn indexen naar de lijsten bereiche en kategorien (-1 = geen). Alle filters zijn mogelijk.
https://kulturdb.de/api/v1/punkte?landkreis=Vulkaneifel
GET /vorschlaege
Snel zoeken (maximaal 10 resultaten) voor invoervelden met suggesties. Parameter q, minimaal 2 tekens.
https://kulturdb.de/api/v1/vorschlaege?q=porta
GET /
Machinaal leesbaar overzicht van alle eindpunten.
https://kulturdb.de/api/v1
Voorbeelden
QGIS
Kaartlagen › Laag toevoegen › Vectorlaag toevoegen, brontype Protocol: HTTP(S), als URI bijvoorbeeld:
https://kulturdb.de/api/v1/objekte.geojson?landkreis=Trier-Saarburg&limit=50000
JavaScript
const res = await fetch('https://kulturdb.de/api/v1/objekte.geojson?objektart=Burgen');
const geojson = await res.json();
console.log(geojson.features.length + ' burchten');
Leaflet
fetch('https://kulturdb.de/api/v1/objekte.geojson?gemeinde=Arzfeld')
.then((r) => r.json())
.then((data) => L.geoJSON(data, {
onEachFeature: (f, layer) => layer.bindPopup(
`<a href="${f.properties.url}">${f.properties.titel}</a>`)
}).addTo(map));
OpenLayers / NETGIS Client Suite
new ol.layer.Vector({
source: new ol.source.Vector({
url: (extent) => 'https://kulturdb.de/api/v1/objekte.geojson?bbox=' +
ol.proj.transformExtent(extent, 'EPSG:3857', 'EPSG:4326').join(','),
format: new ol.format.GeoJSON(),
strategy: ol.loadingstrategy.bbox
})
});
Voorbeeld van een antwoord /objekte/99
{
"id": 99,
"titel": "Porta Nigra (1)",
"untertitel": null,
"ort": "Trier, Mitte-Gartenfeld",
"gemeinde": "Trier",
"ortsteil": "Mitte-Gartenfeld",
"landkreis": "Kreisfreie Stadt Trier",
"bereich": "Bau- und Kunstdenkmale",
"kategorie": "Wehrbauten und militärische Anlagen",
"objektart": "Stadtbefestigungen",
"epoche": "Kelten- / Römerzeit",
"zeit": "170 nach Chr.",
"url": "https://kulturdb.de/nl/objekt/99-trier-porta-nigra-1",
"bild": "https://kulturdb.de/media/thumbs/480/lazarus_porta-nigra_1912.jpg",
"lat": 49.759634,
"lon": 6.644084,
"beschreibung": "Am Nordende der Fußgängerzone. Beschreibung: Die sogenannte Porta Nigra gehört zu den am besten erhaltenen Stadttoren des römischen Reiches. Das mächtige Tor im Norden der Stadt wurde zusammen mit der Stadtmauer und weiteren Toren gleicher Art wohl im letzten Drittel des 2. Jahrhunderts n. Chr …",
"bilder": [
{
"url": "https://kulturdb.de/bilder/lazarus_porta-nigra_1912.jpg",
"quelle": "Max Lazarus: Die Porta Nigra in Trier, 1912. © Stadtmuseum Simeonstift Trier."
},
{
"url": "https://kulturdb.de/bilder/lazarus_porta-nigra2_1926.jpg",
"quelle": "Max Lazarus: Blick durch ein Fenster der Porta Nigra auf St. Gangolf, 1926. © Stadtmuseum Simeonstift Trier."
},
{
"url": "https://kulturdb.de/bilder/trier_porta_nigra_1.jpg",
"quelle": "Internet"
},
{
"url": "https://kulturdb.de/bilder/trier_porta-nigra_eby.jpg",
"quelle": "© David W. Eby, Homepage"
},
{
"url": "https://kulturdb.de/bilder/trier_porta_nigra_02_iduhr.jpg",
"quelle": "© Inge Duhr, Trier, 2020."
}
],
"stand": "2020-07-06"
}