Ebenen & Uploads
Eine Ebenendatei hochladen
Abschnitt betitelt „Eine Ebenendatei hochladen“POST /api/layers/upload (token permission: upload)Content-Type: multipart/form-dataFelder: roomName, layerName, file sowie optional description, style (JSON), display (JSON,
für Raster). Verhalten je nach Inhalt:
- Punkt-GeoJSON/CSV → Marker (
{ markersCreated, markers, layer: null }) - Polygone / Linien → eine Vektorebene (
{ layer: { name, featureCount, ... } }) - GeoTIFF → eine Rasterebene
- Größere Vektoreingaben liefern
{ jobId }— fragen Sie den Auftrag ab (siehe unten).
curl -X POST "$API/api/layers/upload" -H "Authorization: Bearer $TOKEN" \ -F "roomName=$ROOM" -F "layerName=my-layer" -F "file=@data/my-layer.geojson"Eine Ebene aus Inline-GeoJSON anlegen
Abschnitt betitelt „Eine Ebene aus Inline-GeoJSON anlegen“POST /api/rooms/:roomId/layers (token permission: write)Content-Type: application/json{ "name": "drawn", "description": "study area", "geojson": { "type": "FeatureCollection", "features": [] }, "color": "e11d48", "opacity": 0.35, "strokeWeight": 3, "visible": true }Ebenen auflisten
Abschnitt betitelt „Ebenen auflisten“GET /api/layers/:roomName (token permission: read)→ { "layers": [ { "id", "name", "featureCount", ... } ] }
Objekte per Bounding Box abrufen
Abschnitt betitelt „Objekte per Bounding Box abrufen“GET /api/layers/:layerId/features?minLon=&minLat=&maxLon=&maxLat=&zoom=Liefert eine GeoJSON-FeatureCollection. Kleine Ebenen liefern ein vollständiges Objekt mit
_metadata.complete = true; sehr große können ein Stück-Manifest (_metadata.directChunks) liefern,
dessen path-Werte Sie abrufen und zusammenführen:
GET /api/layers/:layerId/features/chunks/:chunkIndexGroße Dateien: stückweiser Upload
Abschnitt betitelt „Große Dateien: stückweiser Upload“POST /api/layers/upload-chunk (token permission: upload)POST /api/layers/process-chunked (token permission: upload)Dateien über der Grenze von 50 MB je Anfrage werden in Stücken hochgeladen (das Import-Skript erledigt das für Sie), danach zusammengesetzt und verarbeitet.
Einen Verarbeitungsauftrag abfragen
Abschnitt betitelt „Einen Verarbeitungsauftrag abfragen“GET /api/layers/jobs/:jobIdFragen Sie ab, bis stage/status endgültig ist (complete oder error):
{ "stage": "processing", "progress": 60, "message": "…" }Eine Ebene löschen
Abschnitt betitelt „Eine Ebene löschen“DELETE /api/layers/:layerId (user session only)Eine Ebene zu löschen ist ein Eigentümer-/Sitzungsvorgang — ein Raum-API-Token kann keine Ebenen löschen.

