Räume
Raumverwaltung. Vorgänge, die dem Eigentümer vorbehalten sind, brauchen eine Benutzersitzung (JWT);
ein Raum-API-Token mit read kann die Metadaten eines Raums lesen, aber keine Eigentümer-Vorgänge
ausführen.
Einen Raum anlegen
Abschnitt betitelt „Einen Raum anlegen“POST /api/rooms/:roomIdAuthorization: Bearer <jwt>Content-Type: application/jsonDie erste authentifizierte Anfrage für einen nicht existierenden Raum legt ihn an und macht die
aufrufende Person zum Eigentümer. :roomId muss aus genau 10 Zeichen aus [A-Za-z0-9_-] bestehen.
Die Felder im Rumpf sind optional.
{ "success": true, "room": { "roomId": "abc123", "createdBy": "auth0|123456", "createdAt": 1700000000000 }, "isNewRoom": true}Raum-Metadaten abrufen
Abschnitt betitelt „Raum-Metadaten abrufen“GET /api/rooms/:roomIdAuthorization: Bearer <token> (optional for public rooms)Liefert Zählwerte und, für authentifizierte Mitglieder, userRole und hasAccess. Mit einem
read-Token lesbar.
Rauminfos abrufen (Kartenroute)
Abschnitt betitelt „Rauminfos abrufen (Kartenroute)“GET /api/rooms/:roomId/infoMetadaten, die die Kartenroute verwendet. Öffentliche Räume sind ohne Authentifizierung lesbar; private
Räume liefern Nichtmitgliedern requiresAuth: true. Bemerkenswerte Felder: isPublic,
presentationIsPublic, autoZoomEnabled, defaultViewLat/Lng/Zoom, defaultTheme,
defaultBaseLayer.
Öffentliche Sichtbarkeit umschalten
Abschnitt betitelt „Öffentliche Sichtbarkeit umschalten“PATCH /api/rooms/:roomId/public # body: { "isPublic": true } — ownerPATCH /api/rooms/:roomId/presentation/public # body: { "isPublic": true } — owner or editorDas erste macht den ganzen Raum öffentlich einsehbar; das zweite nur die Präsentation.
Präsentations-Schnappschuss
Abschnitt betitelt „Präsentations-Schnappschuss“GET /api/rooms/:roomId/presentationLiefert einen Schnappschuss nur der Präsentation (die von gespeicherten Folien referenzierten Objekte). Öffentliche Präsentationen sind ohne Authentifizierung lesbar, selbst wenn der Raum privat ist.
Kamera- und Einstiegs-Standardwerte
Abschnitt betitelt „Kamera- und Einstiegs-Standardwerte“PATCH /api/rooms/:roomId/camera-settings — ownerContent-Type: application/json{ "autoZoomEnabled": false, "defaultView": { "lat": 47.5596, "lng": 7.5886, "zoom": 13 }, "defaultTheme": "light", "defaultBaseLayer": "carto"}Senden Sie null für defaultView/defaultTheme/defaultBaseLayer, um einen gespeicherten Standard
zu löschen. Gültig für defaultBaseLayer: osm, carto, voyager, satellite, swisstopo,
swissimage.
Zeitleisteneinstellungen
Abschnitt betitelt „Zeitleisteneinstellungen“PATCH /api/rooms/:roomId/timeline-settings — ownerOptionale Felder: groupingMode (none/day/month/year), showMarkersOnly, showAdditionsOnly,
dateDisplayMode (event/creation), dateTimeFormat (dmy/mdy/iso), sliderMode
(past/current/future).
Eine Berechtigung prüfen
Abschnitt betitelt „Eine Berechtigung prüfen“GET /api/rooms/:roomId/permissions?action=<view|edit|delete|invite|manage_members|delete_room>{ "hasPermission": true, "role": "owner" }Einen Raum leeren oder löschen
Abschnitt betitelt „Einen Raum leeren oder löschen“POST /api/rooms/:roomId/clear — owner (removes all content, keeps the room)DELETE /api/rooms/:roomId — owner (deletes the room entirely)
