Einer vorgeschlagenen Organisation beitreten
POST /fapi/v1/me/organization-suggestions/{domain_id}:join · wird vom Anmelde-Host der Umgebung aufgerufen
Nimmt einen Vorschlag aus Meine Organisationsvorschläge auflisten an: Der authentifizierte Benutzer wird mit der Standard-Mitgliederrolle der Umgebung Mitglied der vorgeschlagenen Organisation. Die Quelle der Mitgliedschaft ist domain_capture, und der Benutzer wird als Urheber erfasst; ein Ereignis organization_membership.created wird gesendet. Bei zwei gleichzeitigen Beitritten gelingt nur einer. Für den Beitritt ist keine kürzlich verifizierte Sitzung erforderlich: Er gewährt nur die Standard-Mitgliederrolle und nur für eine Domain, deren Adresse der Benutzer bestätigt hat. Erforderlich ist das Cookie __Host-idp_session des authentifizierten Benutzers; fehlt das Cookie, ist es abgelaufen oder widerrufen, wird 401 unauthenticated zurückgegeben. Eine First-Party-Anwendung auf einem anderen Origin kann stattdessen ihr Front-API-Zugriffstoken senden (Authorization: DPoP <token> mit einem DPoP-Proof; siehe Front-API-Zugriffstoken).
Mit @keenauth/js: await keenauth.organizations.joinSuggestion(id).
Anfrage
Header:
| Header | Erforderlich | Beschreibung |
|---|---|---|
Idp-Client |
ja | Kennung des SDK. |
Origin |
ja | Muss genau https://<Anmelde-Host> sein. |
domain_id: die id des Vorschlags (odm_…).
Kein Body (ein leeres JSON-Objekt wird akzeptiert).
Antwort
200 OK mit {"membership_id": "mem_…", "organization_id": "org_…"}.
Fehler
| Status | Code | Wann |
|---|---|---|
| 401 | unauthenticated |
Kein gültiges Sitzungs-Cookie oder Front-API-Zugriffstoken. |
| 403 | origin_not_allowed |
Origin fehlt oder ist falsch. |
| 403 | role_not_assignable |
Die Standard-Mitgliederrolle kann durch Domain-Erfassung nicht vergeben werden. |
| 403 | user_not_active |
Der Benutzer ist nicht aktiv. |
| 404 | not_found |
Die Domain ist für diesen Benutzer kein Vorschlag (unbekannt, fehlerhaft, nicht im Modus suggest, ohne bestätigte Adresse darin oder dreimal abgelehnt). |
| 409 | membership_already_exists |
Der Benutzer hat bereits eine Mitgliedschaft in der Organisation. |
| 409 | organization_disabled |
Die Organisation ist deaktiviert oder wird gelöscht. |
| 409 | membership_limit_reached |
Der Benutzer hat seine Grenze für Mitgliedschaften erreicht. |
| 409 | organization_membership_limit_reached |
Die Organisation hat ihre Grenze für Mitgliedschaften erreicht. |
| 503 | temporarily_unavailable |
Das Mitgliederverzeichnis hat nicht geantwortet; wiederholen Sie die Anfrage später. |
Beispiel
curl -X POST https://example.keenauth.app/fapi/v1/me/organization-suggestions/odm_01j9a5c4000000000000000001:join \
-H "Idp-Client: my-app/1.0.0 (node/22.0.0)" \
-H "Origin: https://example.keenauth.app" \
-b cookies.txt
{
"membership_id": "mem_01j9yyyyyyyyyyyyyyyyyyyyyy",
"organization_id": "org_01j9xxxxxxxxxxxxxxxxxxxxxx"
}
Personenbezogene Daten
Dieser Endpunkt verarbeitet personenbezogene Daten: Organisationsmitgliedschaften und Einladungen. Personenbezogene Daten in den KeenAuth-APIs beschreibt, was gespeichert wird, wie lange es aufbewahrt wird und wie es gelöscht wird. Übermitteln Sie keine besonderen Kategorien personenbezogener Daten (Gesundheit, biometrische Daten, Religion, politische Meinungen, sexuelle Orientierung) in irgendeinem Feld.