Zum Inhalt springen

Authentifizierung

Wie du mit E-Mail und Passwort einen Token bekommst, ihn bei jedem Aufruf mitschickst, wie lange er gilt, die öffentlichen Routen, das Handeln im Namen eines anderen Profils und wie du ein sicheres Integrationskonto einrichtest.

Die API von Memberfy nutzt JWT-Tokens. Du tauschst E-Mail und Passwort gegen einen Token und schickst ihn bei jedem Aufruf mit. Der Token gehört einer Person (dem Konto); was sie tun darf, hängt von ihrer Rolle in der Community des jeweiligen Aufrufs ab.

Den Token holen

curl -s -X POST https://api.memberfy.net/api/auth/login \
  -H "Content-Type: application/json" \
  -d '{"email":"integration@memberfy.net","password":"dein-passwort"}'

Antwort (gekürzt):

{
  "success": true,
  "message": "Login successful.",
  "data": {
    "token": "eyJhbGciOi…",
    "member": { "id": "…", "email": "integration@memberfy.net", "fullName": "Integration" }
  }
}

Speichere data.token.

Den Token verwenden

Bei allen Aufrufen, die nicht öffentlich sind:

Authorization: Bearer <token>

Nur der Token, nach Bearer . Dazu fast immer der X-CommunityId.

curl -s https://api.memberfy.net/api/auth/me \
  -H "Authorization: Bearer $TOKEN"

Gültigkeit

Der Token gilt 7 Tage. Ein Refresh-Token gibt es nicht: Kurz vor Ablauf meldest du dich neu an.

SituationAntwort
Kein Token bei einer geschützten Route401 · Authentication token is required
Ungültiger oder abgelaufener Token401 · Invalid or expired token
Token einer Person, die nicht Mitglied der Community ist403 · Du bist kein Mitglied dieser Community
Unzureichende Rolle403 · Benötigte Rolle (z. B. owner oder admin) und deine aktuelle Rolle

Öffentliche Routen

Ohne Token kommen aus: Login, Registrierung, Passwort-Wiederherstellung und das Lesen dessen, was in der Community öffentlich ist (öffentliche Bereiche, die Preisseite). Bei vielen Lesezugriffen ist der Token optional: Ohne ihn kommt nur das Öffentliche; mit ihm auch das, was die Person sehen darf.

Im Namen eines anderen Profils handeln

Eigentümer, Administratoren und Moderatoren können X-ProfileId: <Profil-ID> mitschicken, um als ein anderes Profil derselben Community zu handeln (etwa um im Namen einer Person aus dem Team zu veröffentlichen). Regeln:

  • Nur diese drei Rollen dürfen das; sonst kommt eine Meldung über unzureichende Berechtigungen für X-ProfileId.
  • Das Profil muss zur selben Community gehören: „Profil in dieser Community nicht gefunden.“
  • Niemand handelt im Namen eines Eigentümers, ohne selbst Eigentümer zu sein.
  • Als ein anderes Profil zu handeln leiht nicht dessen Rolle: Es gelten weiterhin deine Berechtigungen.

Integrationskonto

Leg für eine Integration (ein CRM, eine Automatisierung) ein eigenes Mitglied an:

  1. Lade integration@memberfy.net mit der kleinsten Rolle ein, die die Integration braucht: Finanzen, um Verkäufe zu lesen; Administrator, um Pläne und Produkte anzulegen.
  2. Bewahre das Passwort in einem Secret-Store auf, nie im Code.
  3. Melde dich zu Beginn des Laufs an und verwende den Token bis zum Ablauf weiter.
  4. Ist der Token durchgesickert, ändere das Passwort des Kontos; bereits ausgestellte Tokens gelten bis zu ihrem Ablauf.

Endpunkte

POST /api/auth/loginE-Mail und Passwort → Token
GET /api/auth/meWem der Token gehört
POST /api/auth/registerRegistrierung (fullName, email, password mit mindestens 8 Zeichen, einem Großbuchstaben, einem Kleinbuchstaben und einer Zahl)
PUT /api/auth/change-passwordPasswort ändern
POST /api/auth/recovery-passwordPasswort wiederherstellen
POST /api/auth/set-passwordDas Passwort über den Einladungslink festlegen (id, token, password). Antwortet mit 400 bei einem falschen Token und mit 410 bei einem bereits verwendeten oder abgelaufenen Link

Gute Praxis

  • Leg den Token nie in den Code einer öffentlichen Website: Jeder könnte ihn lesen.
  • Nutze immer HTTPS (https://api.memberfy.net).
  • Behandle einen 401, indem du dich einmal neu anmeldest; schlägt es wieder fehl, brich ab und schlag Alarm.

Verwandte Artikel