Zum Inhalt springen

X-CommunityId

Der Header, der festlegt, in welcher Community jeder Aufruf stattfindet und in welcher deine Rolle geprüft wird. Warum keine Route die Community im Pfad trägt, wo du die Community-ID findest und welche Fehler kommen, wenn er fehlt.

Memberfy ist nach Communities organisiert, und die API auch: Fast jeder Aufruf braucht den Header X-CommunityId mit der ID der Community.

X-CommunityId: 3562c7a0-0000-0000-0000-000000000000

Was er entscheidet

  1. Wo die Operation stattfindet: in welcher Community der Bereich angelegt, das Produkt gelistet, die Auszahlung angefordert wird.
  2. Welche Rolle du hast: Die Berechtigung wird an deinem Profil in dieser Community geprüft. Dasselbe Konto kann in einer Community Eigentümer und in einer anderen Mitglied sein; der Header wählt, was gilt.

Der Header zählt, nicht der Pfad

Keine Route trägt die Community im Pfad. Produkte, Gutscheine, Pläne, Gebühren, Kontoauszug, Auszahlungen, Berichte, Geschäftsinformationen, Auszahlungsdaten und die Abonnementverwaltung liegen unter Pfaden ohne Community-ID (/api/products, /api/coupons, /api/manage/subscriptions …), und die Community kommt nur aus X-CommunityId. Ohne den Header antworten diese Routen mit 400.

Das ist kein Detail: Mit nur einer Quelle für die Community kann niemand in einer anderen handeln, indem er eine ID in der URL austauscht.

Die Ausnahme ist der SuperAdmin, der auf eine andere Community wirkt, unter /api/admin/communities/{communityId}/fee-overrides/...: Dort ist die ID im Pfad die Ziel-Community, nicht der Kontext des Aufrufers. Die Routen der Community selbst, PUT und DELETE /api/communities/{id}, GET /api/communities/{id}/members und PATCH /api/communities/{id}/settings, tragen die id, weil die Community die Ressource selbst ist; der Header bleibt auch dort Pflicht.

Geändert am 6. Oktober 2026. Die alten Pfade /api/communities/{communityId}/... (Produkte, Gutscheine, Pläne, Gebühren, Kontoauszug, Auszahlungen, Berichte, Abonnements, Käufe, Checkout, Geschäftsinformationen, Auszahlungsdaten) wurden ohne Übergangszeit entfernt und antworten mit 404. Nimm denselben Pfad ohne das Präfix, unter /api/...; die Abonnementverwaltung durch das Team liegt jetzt unter /api/manage/subscriptions, die E-Mail-Statistik unter /api/emails/stats. Die Methodennamen des SDK haben sich nicht geändert. Siehe Die geänderten Pfade.

Einige ältere Routen verlangen communityId auch im Body (Kurs anlegen, Mitglieder einladen). Schick dieselbe ID wie im Header.

Die geänderten Pfade

Am 6. Oktober 2026 hat jeder Pfad unten das Präfix /api/communities/{communityId} verloren. HTTP-Methoden, Parameter, Bodys, Antworten und die verlangten Rollen bleiben gleich.

VorherNachher
/api/communities/{communityId}/products/.../api/products/...
/api/communities/{communityId}/coupons/.../api/coupons/...
/api/communities/{communityId}/subscription-groups/... (auch reorder und downsell-offers)/api/subscription-groups/...
/api/communities/{communityId}/fees und .../fees/simulate/api/fees und /api/fees/simulate
/api/communities/{communityId}/ledger/.../api/ledger/...
/api/communities/{communityId}/payouts/.../api/payouts/...
/api/communities/{communityId}/reports/.../api/reports/...
/api/communities/{communityId}/business-information/.../api/business-information/...
/api/communities/{communityId}/payout-settings/.../api/payout-settings/...
/api/communities/{communityId}/subscriptions (die Verwaltung durch das Team: auflisten, exportieren, anlegen, Detail, kündigen, reaktivieren, Rabatt, Add-ons, verlängern, Zahlungslink)/api/manage/subscriptions/...
/api/communities/{communityId}/subscriptions/me/api/subscriptions/me
/api/communities/{communityId}/purchases/me/api/purchases/me
/api/communities/{communityId}/checkout/.../api/checkout/..., das es mit denselben Pfaden schon gab
/webhooks/email/stats/{communityId}/api/emails/stats (Eigentümer oder Administrator)

Die Methodennamen des SDK und die Seiten der Referenz bleiben gleich, weil jede Route ihre operationId behalten hat: /api/products ist weiterhin api.products.postCommunitiesByCommunityIdProducts. Nur die neun Operationen des verschachtelten Checkouts sind weggefallen; nimm die von /api/checkout/*.

Wo du die Community-ID findest

AufrufWas er liefert
GET /api/communities/myDie Communities deines Kontos, mit der id und deiner Rolle in jeder
GET /api/profiles/myDeine Profile, eines pro Community
curl -s https://api.memberfy.net/api/communities/my \
  -H "Authorization: Bearer $TOKEN"

Die Fehler, wenn er fehlt

SituationAntwort
Ohne Header, oder mit einem Wert, der keine gültige ID ist400 · Gib die Community im Header X-CommunityId an., mit errors[0].param = "X-CommunityId"
Der Header gehört zu einer Community, in der du nicht bist403 · Du bist kein Mitglied dieser Community
Ein alter Pfad mit /communities/{communityId}/404
Die Ressource gehört zu einer anderen Community404: Für die Community im Header existiert sie nicht

Der 400 wegen fehlendem Header ist die häufigste Fehlerursache bei der API.

Beispiel

curl -s https://api.memberfy.net/api/products \
  -H "Authorization: Bearer $TOKEN" \
  -H "X-CommunityId: $COMMUNITY_ID"

Im SDK

Einmal api.setCommunity('<uuid>'), und das SDK schickt den Header bei allen Aufrufen mit. Um die Community zu wechseln, rufst du setCommunity erneut auf. Siehe JavaScript-SDK.

Häufige Fragen

Kann eine Integration zwei Communities bedienen? Ja, mit einem Konto, das in beiden eine Rolle hat: Wechsle den Header bei jedem Aufruf.

Brauchen die Authentifizierungsrouten den Header? Nein: Login, Registrierung und GET /api/auth/me funktionieren ohne ihn.

Verwandte Artikel