Zum Inhalt springen
DE

Ebenen & Uploads

POST /api/layers/upload (token permission: upload)
Content-Type: multipart/form-data

Felder: 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).
Terminal window
curl -X POST "$API/api/layers/upload" -H "Authorization: Bearer $TOKEN" \
-F "roomName=$ROOM" -F "layerName=my-layer" -F "file=@data/my-layer.geojson"
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 }
GET /api/layers/:roomName (token permission: read)

{ "layers": [ { "id", "name", "featureCount", ... } ] }

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/:chunkIndex
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.

GET /api/layers/jobs/:jobId

Fragen Sie ab, bis stage/status endgültig ist (complete oder error):

{ "stage": "processing", "progress": 60, "message": "" }
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.