Entwicklerdokumentation: API, Webhooks und MCP
CLUP.life an Website, Kalender, Automatisierung und KI-Assistenten anbinden: REST-API, signierte Webhooks und MCP-Server. In 5 Minuten zum ersten Aufruf.
Vereine, Verbände und Kommunen arbeiten nicht nur in CLUP.life. Sie haben eine Website, einen Kalender, eine Tabelle, vielleicht eine Automatisierung oder einen KI-Assistenten. Über die Schnittstellen von CLUP.life verbindest du diese Werkzeuge mit deinen Daten — mit denselben Rechten, die du in der App hast, und mit Datenschutz als Grundlage.
Die Bausteine#
| Baustein | Wofür | Stufe |
|---|---|---|
| REST-API v1 | Termine, Beiträge, Mitteilungen, Aufgaben und Mitglieder lesen; Termine, Mitteilungen und Aufgaben anlegen | Lesen: Basis · Schreiben: Premium |
| Exporte (iCal, CSV, JSON) | Termine im Kalender, Listen in Excel oder Google Sheets | Basis |
| Webhooks | Ereignisse („neuer Termin“) an Zapier, Make, n8n oder eigenen Server melden | Premium |
| MCP-Server | KI-Assistenten (z. B. Claude) fragen „Was steht diese Woche an?“ | Lesen: Basis · Schreiben: Premium |
In 5 Minuten zum ersten Aufruf#
- Konto anlegen oder anmelden — kostenlos registrieren. Schlüssel können nur Erwachsenenkonten anlegen.
- Schlüssel erzeugen: In der App unter Einstellungen → Schnittstellen einen Namen vergeben, nur die nötigen Bereiche wählen (für den Anfang
profile:readundevents:read), Gültigkeit wählen, Schlüssel anlegen. - Schlüssel sofort kopieren. Er wird nur dieses eine Mal angezeigt; wir speichern nur eine Prüfsumme. Lege ihn in einer Umgebungsvariable ab, nie im Quelltext.
- Ersten Aufruf senden (siehe unten). Antwortet die Schnittstelle mit 200 und deinem Namen, funktioniert alles.
- Weiter: Termine abrufen, Beispiele kopieren, in der Konsole ausprobieren oder einen Webhook einrichten.
GET/ext/me
Wer bin ich? Konto, Bereiche des Schlüssels, Mitgliedschaften
Bereiche: profile:read
curl -H "Authorization: Bearer clup_k_…" \
"https://api.clup.life/api/v1/ext/me"Die Antwort enthält dein Konto, die Bereiche des Schlüssels und deine Mitgliedschaften mit dem slug jeder Organisation. Diesen slug brauchst du für alle weiteren Aufrufe.
{
"id": "u_8f3k2…",
"displayName": "Mira Muster",
"organizationKey": false,
"scopes": ["profile:read", "events:read"],
"memberships": [
{ "organization": { "slug": "tus-musterstadt", "name": "TuS Musterstadt", "type": "CLUB" }, "role": "MEMBER" }
]
}Basisadresse und Format#
- Basisadresse:
https://api.clup.life/api/v1(lokal:http://localhost:4000/api/v1). Alle Pfade der Referenz beginnen mit/ext. - Alle Aufrufe nur über HTTPS und mit dem Kopf
Authorization: Bearer clup_k_…. - Antworten sind JSON (UTF-8); Exporte liefern
text/calendarbzw.text/csv. Zeitangaben sind ISO 8601. - Listen sind Cursor-Seiten:
itemsundnextCursor; hänge?cursor=<nextCursor>an, bis ernullist. Es gibt keinOFFSET. - Fehler haben immer einen stabilen
codeund eine verständlichemessage(siehe Limits und Fehlercodes).
Status der Schnittstelle#
Schnittstelle wird geprüft …
Wie geht es weiter?#
- Authentifizierung: Schlüssel, Bereiche, Rotation, Rechte.
- Integrationen: Kalender, Zapier/Make/n8n, Excel/Google Sheets, Website, Buchhaltung.
- MCP-Server: Claude Desktop, Claude Code und andere Clients.
- Fragen? Die FAQ und der Support helfen weiter.
