Anmelden

API-Übersicht

Vollständige API-Dokumentation für die Integration mit Cliqer

Die Client-API ist das API-Add-on: Mit Presenter, Studio HD und Studio 4K können Sie es hinzukaufen, in Studio 8K und Enterprise ist es enthalten. Langlebige API-Schlüssel für unbeaufsichtigten Server-zu-Server-Zugriff auf die REST-Endpunkte werden in den Tarifen Studio 8K und Enterprise erstellt, siehe API-Schlüssel-Authentifizierung. Tarife vergleichen.

Vollständige Dokumentation der Cliqer-API mit REST-Endpunkten und WebSocket-Echtzeitkommunikation.

Basis-URL

https://cliqer.io/api

Alle API-Endpunkte sind relativ zur Basis-URL des Cliqer-Servers, mit dem Sie sich verbinden.

Codebeispiele: Ersetzen Sie in den curl/Python/Go-Beispielen $BASE_URL durch die URL Ihrer Cliqer-Instanz (z. B. https://cliqer.io). Ersetzen Sie in WebSocket-Beispielen $WS_URL durch wss://cliqer.io. TypeScript-Beispiele verwenden relative Pfade und funktionieren ohne Anpassung.

Authentifizierung

Cliqer authentifiziert über ein httpOnly-Sitzungscookie (session_token), das von POST /api/auth/login ausgestellt wird. Browser senden es automatisch; Server-zu-Server-Tools speichern es in einem Cookie-Jar. Teams mit Studio 8K und Enterprise können zusätzlich API-Schlüssel für Server-zu-Server-REST-Anfragen erstellen, die als Authorization: Bearer cliqer_<key> gesendet werden (die Schlüsselverwaltung erfordert den Tarif Studio 8K oder Enterprise). Der WebSocket akzeptiert keine API-Schlüssel: Verbinden Sie ihn mit einem Sitzungstoken.

# The session cookie is set by /api/auth/login and sent on every subsequent request
Cookie: session_token=YOUR_SESSION_TOKEN

# Or authenticate a server-to-server REST request with a team API key
Authorization: Bearer cliqer_<key>

Einige Endpunkte benötigen keine Sitzung, etwa POST /api/licenses/validate, der öffentlich zugänglich ist.

Informationen zu Anmeldung, Sitzungsrotation und bewährten Sicherheitspraktiken finden Sie unter Authentifizierung.

API-Bereiche

Authentifizierung

Anmeldung, Sitzungsrotation und bewährte Sicherheitspraktiken.

WebSocket-Echtzeit

Steuern Sie einen Raum aus Ihrer eigenen Software wie mit einem Presenter aus der Ferne: Folien, den Timer, einen Laserpointer und Nachrichten an den Host.

Lizenzen

Lizenzvalidierung, Aktivierung und Geräteverwaltung.

Lebenszyklus einer Anfrage

Fehlerantworten

Alle Endpunkte geben standardisierte Fehlerantworten zurück:

StatusBeschreibung
400Bad Request: Fehlende oder ungültige Parameter
401Unauthorized: Kein gültiges Sitzungscookie
403Forbidden: Unzureichende Berechtigungen oder nicht zugelassener Origin
404Not Found: Ressource nicht gefunden
409Conflict: z. B. Platzlimit für die Lizenzaktivierung erreicht
429Too Many Requests: Rate-Limit überschritten (siehe Retry-After)
500Internal Server Error

Format der Fehlerantwort:

{
  "statusCode": 400,
  "statusMessage": "Description of the error"
}

Rate-Limiting

Die meisten Endpunkte sind pro Client-IP ratenbegrenzt, mit einem festen 60-Sekunden-Fenster in drei Stufen. Überschreitet eine Anfrage das Limit, antwortet der Server mit 429 Too Many Requests und einem Retry-After: 60-Header. Es gibt keine progressive/exponentielle Sperre, und es wird kein X-RateLimit-Remaining-Header zurückgegeben.

HeaderBeschreibung
Retry-AfterSekunden bis zum Zurücksetzen des Fensters (60, nur bei einem 429 gesendet)

Rate-Limit-Stufen

StufeAnfragen / 60 sGilt für
Streng5POST /api/licenses/validate und die Anmelde-Endpunkte (POST /api/auth/login, Registrierung, Zurücksetzen des Passworts, Passkey- und 2FA-Schritte)
Standard30GET /api/licenses/status, POST /api/licenses/deactivate, GET /api/auth/me, POST /api/auth/logout
Großzügig60Lese-Endpunkte mit hohem Aufkommen

Zwei Endpunkte wenden ein zweites Limit der Stufe Streng an, das an die Zugangsdaten statt an die IP gebunden ist, sodass ein einzelnes Ziel nicht über viele Adressen hinweg mit Anfragen überflutet werden kann: POST /api/licenses/validate verwendet dafür den license_key, POST /api/auth/login die E-Mail-Adresse.

Das Überschreiten einer Stufe führt für den Rest des 60-Sekunden-Fensters zu 429. Rate-Limits werden vom Server selbst durchgesetzt, bevor der Endpunkt seine Arbeit verrichtet.