Registrieren
Registrieren
Alle Anleitungen

Collabin REST API Schnellstart: Ihre ersten Anfragen in 10 Minuten

Die REST-API von Collabin gibt Ihnen programmatischen Zugriff auf die Benutzer, Teams, Urlaubsarten und Urlaubsanträge Ihrer Organisation — alles, was Sie zum Erstellen von Berichten, zur Synchronisierung von HR-Systemen oder zur Automatisierung von Genehmigungen benötigen. Dieser Schnellstart führt Sie in etwa zehn Minuten von null zu Ihren ersten authentifizierten Anfragen.

Was Sie benötigen

  • Ein Collabin-Konto im Plan Pro (die externe API ist eine Pro-Funktion).
  • Administratorzugriff auf das Dashboard Ihrer Organisation.
  • curl oder einen beliebigen HTTP-Client.

Schritt 1: API-Schlüssel generieren

  1. Melden Sie sich in Ihrem Collabin-Dashboard an und öffnen Sie API-Schlüssel.
  2. Erstellen Sie einen neuen Schlüssel. Wählen Sie, ob er nur lesend sein oder auch schreiben darf (Urlaube erstellen, Status ändern). Bevorzugen Sie Nur-Lese-Zugriff, sofern Sie nicht ausdrücklich Schreibrechte benötigen.
  3. Kopieren Sie den Schlüssel sofort — er sieht aus wie clb_4f8a… und wird nur einmal angezeigt. Collabin speichert nur einen Hash; wenn Sie den Schlüssel verlieren, widerrufen Sie ihn und erzeugen einen neuen.

Behandeln Sie den Schlüssel wie ein Passwort: Umgebungsvariablen oder ein Secret-Manager, niemals im Quellcode.

Schritt 2: Ihre erste Anfrage stellen

Die API ist unter https://api.collabin.eu mit dem Präfix /v1 erreichbar und authentifiziert mit dem Header X-API-Key:

curl -s https://api.collabin.eu/v1/users \
  -H "X-API-Key: $COLLABIN_API_KEY"

Listenantworten teilen sich einen gemeinsamen Umschlag mit Paginierungs-Metadaten:

{
  "data": [
    { "id": 7, "name": "Max Mustermann", "email": "max@example.com" }
  ],
  "total": 134,
  "limit": 50,
  "offset": 0
}

Blättern Sie mit limit und offset durch die Ergebnisse — die Standard-Seitengröße ist 50, das Maximum 500:

curl -s "https://api.collabin.eu/v1/users?limit=100&offset=100" \
  -H "X-API-Key: $COLLABIN_API_KEY"

Die Endpunkte im Überblick

Methode & PfadWas es tut
GET /v1/usersBenutzer auflisten
GET /v1/users/:idEinen Benutzer abrufen
GET /v1/users/:id/leavesUrlaube eines Benutzers auflisten
GET /v1/teamsTeams auflisten
GET /v1/teams/:idEin Team abrufen
GET /v1/leave-typesUrlaubsarten auflisten
GET /v1/leavesUrlaubsanträge auflisten (filterbar)
GET /v1/leaves/:idEinen Urlaubsantrag abrufen
POST /v1/leavesUrlaubsantrag erstellen (Schreibschlüssel)
PUT /v1/leaves/:id/statusEinen Antrag genehmigen oder ablehnen (Schreibschlüssel)
GET /v1/calendarKalenderansicht genehmigter Urlaube

Schritt 3: Urlaubsanträge filtern

GET /v1/leaves akzeptiert mehrere Abfrageparameter, die frei kombiniert werden können:

  • user_id — auf eine Person beschränken
  • start und end — Datumsbereich, YYYY-MM-DD
  • status — z. B. PENDING, APPROVED, REJECTED
  • updated_since — RFC-3339-Zeitstempel, ideal für inkrementelle Synchronisierungen

Zum Beispiel alles, was diesen Sommer genehmigt wurde:

curl -s "https://api.collabin.eu/v1/leaves?status=APPROVED&start=2026-06-01&end=2026-08-31" \
  -H "X-API-Key: $COLLABIN_API_KEY"

Ein inkrementeller Synchronisierungsjob benötigt nur das, was sich seit seinem letzten Lauf geändert hat:

curl -s "https://api.collabin.eu/v1/leaves?updated_since=2026-06-12T00:00:00Z" \
  -H "X-API-Key: $COLLABIN_API_KEY"

Schritt 4: Urlaub erstellen und genehmigen (Schreibschlüssel)

Einen Antrag erstellen — er beginnt im Status PENDING:

curl -s -X POST https://api.collabin.eu/v1/leaves \
  -H "X-API-Key: $COLLABIN_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "user_id": 7,
    "leave_type_id": 1,
    "start_date": "2026-07-01T00:00:00Z",
    "end_date": "2026-07-05T00:00:00Z",
    "reason": "Sommerurlaub"
  }'

Genehmigen (oder ablehnen):

curl -s -X PUT https://api.collabin.eu/v1/leaves/1337/status \
  -H "X-API-Key: $COLLABIN_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "status": "APPROVED" }'

Zum Ablehnen senden Sie "status": "REJECTED" und optional einen "rejection_reason". Beide Operationen lösen die entsprechenden Webhook-Ereignisse aus (leave.created, leave.status_changed), sodass alles, was Sie mit Webhooks aufgebaut haben, auch auf API-gesteuerte Änderungen reagiert.

Gut zu wissen

  • Ratenlimit: 120 Anfragen pro Minute. Bei Spitzen drosseln und erneut versuchen; bei großen Exporten größere Seiten gegenüber mehr Anfragen bevorzugen.
  • Tenant-Isolation: ein Schlüssel sieht ausschließlich die Organisation, für die er ausgestellt wurde — es gibt nichts zu konfigurieren und keine Möglichkeit, darüber hinauszugreifen.
  • Halbe Tage: Übergeben Sie "is_half_day": true, wenn Sie eintägige Urlaube erstellen, die nur einen halben Tag abdecken.
  • Widerruf: Löschen Sie einen Schlüssel im Dashboard, und er funktioniert sofort nicht mehr. Rotieren Sie Schlüssel, wenn Personen das Team verlassen.

Wie es weitergeht

Kombinieren Sie die API mit Kalender-Feeds für Nur-Lese-Konsumenten, die nur Ereignisse benötigen, und mit Webhooks, wenn Sie lieber benachrichtigt werden möchten, als abzufragen.