Zum Inhalt springen

Erweiterungen

Dieser Inhalt ist für v1.0. Wechseln Sie zur neuesten Version, um die aktuelle Dokumentation zu sehen.

Erweiterungen sind externe Dienste, die über das API- & Erweiterungssystem von Klokk angebunden werden: eine scope-basierte, schreibgeschützte REST-API, ausgehende Webhooks und eingehende WebSocket-Verbindungen. Die Konfigurationsvariablen finden sich unter API & Erweiterungen oben; dieser Abschnitt behandelt den Ablauf in der App und die hauseigenen Erweiterungen.

Ein Super-Admin verwaltet Integrationen unter Admin → API & Erweiterungen (/admin/extensions). Jede Integration bündelt einen API-Schlüssel (nur einmal angezeigt — sicher aufbewahren), die nutzbaren Scopes und einen Verbindungsmodus:

  • Nur API — die Erweiterung fragt die REST-API mit ihrem Schlüssel ab (/api/v1/status, /users, /clock/states, /time/entries, /shifts/events, /companies); begrenzt auf 60/min pro IP.
  • Webhooks — Klokk sendet bei Ein-/Ausstempeln und Abwesenheitsereignissen ausgehende HTTP-POSTs.
  • WebSocket — die Erweiterung öffnet eine dauerhafte eingehende Verbindung unter GET /api/v1/extension/connect.

Scopes (z. B. read:users, read:time_entries, read:companies) autorisieren jeden Schlüssel; vergeben Sie nur, was eine Erweiterung benötigt. Die öffentliche API ist schreibgeschützt. EXTENSIONS_ENABLED=false entfernt die Admin-Routen, den WebSocket-Endpunkt und alle Webhooks (die einfache REST-API bleibt verfügbar).