Plattform

API und Webhooks

Alles, was das Dashboard tut, läuft über dieselbe REST-API, die Sie aufrufen können. Ereignisse verlassen das System als signierte Webhooks, die wiederholt werden, bis sie ankommen.

Authentifizierung

  • Das vom Einmalcode-Ablauf ausgestellte Sitzungs-Cookie oder dasselbe signierte Token als Bearer-Header.
  • Ein persönliches API-Token als Bearer-Header. Es handelt als seine Inhaberin oder sein Inhaber, sodass jede Rollen- und Geltungsbereichsprüfung unverändert gilt; Tokens mit Lese-Geltungsbereich werden bei Änderungen abgelehnt.
  • Jede Route deklariert ihre Mindestrolle: jede authentifizierte Person, Führungskraft und höher, Admin oder Superadmin. Datenrouten grenzen dann nach dem Baum der aufrufenden Person ab.
curl -H "Authorization: Bearer <token>" https://inroots.example.com/api/export/hours.csv?from=2026-08-01&to=2026-08-31

Entdecken

Das OpenAPI-Schema wird aus den Routen generiert und, Admin-gesperrt, mit einem interaktiven Explorer im Produkt bereitgestellt. Zusammenfassungen und Beschreibungen stammen aus den Routendefinitionen, sodass sie nicht vom Code abweichen können.

GET /api/openapi.json
GET /api/docs
Effizienz, Ziele, Arbeitsgesundheit, ZeitleisteBewertungen, Zielwerte, Benchmarks, Vorhaben, Personensignale, Überarbeitungsrisiko, Belege eines Tages
Urlaub, Bereitschaft, Teams, FeiertageAbwesenheitsregeln und -anträge, Rotationen und Abdeckung, Teameinstellungen, Kalender
DM, Kontakt, EinwilligungSendungen und Zeitpläne, Kontaktdaten, Vereinbarungen und Signaturen
KI-Anbieter, Berichte, WarnungenAnbieterwechsel und Failover-Reihenfolge, PDF-Exporte, E-Mail-Transport
Integrationen, ExportTokens, Webhooks, CSV
MLpredict, feedback, decisions, metrics, models, promote, train

Ausgehende Webhooks

  • Angelegt mit einer Ziel-URL und einem Geheimnis, das nie wieder zurückgegeben wird; die Liste zeigt nur, ob ein Geheimnis existiert.
  • Jede Zustellung trägt einen Signatur-Header mit einem SHA-256-HMAC über den exakten Körper, einen Ereignis-Header und eine Zustellungs-ID zur Deduplizierung.
  • Die Emission läuft in der Transaktion der aufrufenden Stelle, sodass ein Ereignis nie für eine zurückgerollte Entscheidung zugestellt wird und ein ausgefallener empfangender Endpunkt nie eine Genehmigung blockiert.
  • Ein Flush-Job sendet jede Minute und wiederholt nach 1, 5, 15, 60 und 360 Minuten, bevor er mit erfasstem Grund aufgibt. Zwanzig aufeinanderfolgende Fehlschläge öffnen den Schutzschalter des Endpunkts, bis ein Admin ihn wieder aktiviert.
  • Die Schaltfläche „Test“ reiht einen signierten Ping über den echten Pfad ein. Derzeit ausgegebene Ereignisse: pto.approved und pto.declined.
expected = hmac.new(secret, body, sha256).hexdigest()
compare(header, "sha256=" + expected)

Eingehend

  • Slack-Ereignisse und interaktive Aktionen; Teams-Aktivitäten; der WhatsApp-Webhook.
  • Support-Tickets aus externen Systemen, dedupliziert über eine externe Referenz, sodass Folgemeldungen ein Ticket aktualisieren.
  • Jeder Webhook kann einen n8n-Workflow auslösen, der die API mit einem Token zurückruft.

Live-Stream

Ein Server-Sent-Events-Stream überträgt Anwesenheitsereignisse und persönliche Benachrichtigungen an das Dashboard und an jeden Client, den Sie schreiben. Persönliche Ereignisse erreichen nur die Person, die sie betreffen.

GET /api/events