Zum Inhalt springen
DE

Überblick & Authentifizierung

CollMap hat eine RESTful HTTP-API (gebaut mit Fastify) für Räume, Marker, Ebenen, Uploads, Kommentare und Exporte. Fast alles, was Sie in der App tun können, geht auch über HTTP — am nützlichsten: einen einzelnen Raum aus einem Skript steuern, mit einem auf diesen Raum beschränkten Token.

Alle Endpunkte werden vom Ursprung der App ausgeliefert:

https://collmap.com

(Läuft der Stack lokal, liegt der API-Server unter http://localhost:3001.)

Jeder geschützte Endpunkt erwartet ein Bearer-Token im Header Authorization:

Authorization: Bearer <token>

Es gibt zwei Arten von Token:

Um als Sie selbst zu handeln — alles, was Ihr Konto darf, einschließlich der nur dem Eigentümer vorbehaltenen Vorgänge (Räume anlegen / löschen / umbenennen, Mitglieder einladen, API-Tokens ausstellen, Ihr Konto lesen). Eine angemeldete Browsersitzung tauscht ihr OIDC-Cookie gegen ein kurzlebiges JWT:

GET /api/auth/token

{ "token": "<jwt>" }. Das JWT ist kurzlebig und wird in der App automatisch erneuert.

Für Skripte und externe Werkzeuge, die Daten in einen Raum schreiben (oder daraus lesen), ohne Browsersitzung. Sie stellen es einmal als Raumeigentümer aus und verwenden es direkt. Raum-Tokens sind auf einen Raum und auf Datenoperationen beschränkt — siehe Raum-API-Tokens.

Ein Raum-Token wird ausschließlich auf den raumbezogenen Datenendpunkten akzeptiert, die es ausdrücklich erreichen darf. Legen Sie es woanders vor, wird die Anfrage mit 403 api_token_not_allowed abgelehnt — so gewollt. Ein Token gegen einen anderen Raum oder ohne die nötige Berechtigung erhält ebenfalls ein 403. Die vollständige Positivliste steht auf der Seite Raum-API-Tokens.

Die Zusammenarbeit in Echtzeit läuft über einen eigenen Yjs-WebSocket (wss://collmap.com/ws). Dieser WebSocket ist nur für JWTs — API-Tokens haben keinen WebSocket-Weg; ihre Schreibvorgänge erreichen das lebende Dokument über die REST-Endpunkte und verbreiten sich von dort.