Naar hoofdinhoud gaan

Membership Endpoints

De Membership module beheert personen, kerken, groepen, huishoudens, rollen, machtigingen, formulieren en instellingen. Het is de grootste module en biedt de kernidentiteits- en autorisatielaag voor alle andere modules.

Base path: /membership

Personen​

Base path: /membership/people

MethodPathAuthPermissionDescription
GET/JWTPeople.View of LidAlle personen voor de kerk weergeven
GET/:idJWTPeople.View of eigen recordEen persoon op ID ophalen (inclusief formulierinzendingen)
GET/ids?ids=JWTPeople.View of LidMeerdere personen op kommagescheiden ID's ophalen
GET/basic?ids=JWT—Basisinformatie (naam alleen) voor meerdere personen ophalen
GET/recentJWTPeople.View of LidOnlangs toegevoegde personen
GET/search?term=&email=JWTPeople.View of LidPersonen op naam of e-mail zoeken
GET/search/phone?number=JWTPeople.View of LidOp telefoonnummer zoeken
GET/search/group?groupId=JWTPeople.View of LidPersonen in een specifieke groep ophalen
GET/household/:householdIdJWT—Alle personen in een huishouden ophalen
GET/attendanceJWTPeople.EditDeelnemers laden met filters (campusId, serviceId, serviceTimeId, groupId, categoryName, startDate, endDate)
GET/timeline?personIds=&groupIds=JWT—Timelinegegevens voor personen en groepen laden
GET/directory/:idJWT—Persoon voor directoryweergave ophalen (respecteert zichtbaarheidsvoorkeuren)
GET/claim/:churchIdJWT—Een persoonrecord voor de huidige gebruiker claimen in een kerk
POST/JWTPeople.Edit of EditSelfPersonen maken of bijwerken (batch)
POST/searchJWTPeople.View of LidPersonen zoeken (POST-variant)
POST/advancedSearchJWTPeople.View of LidZoekopdracht met meerdere voorwaarden (leeftijd, geboortemaand, lidmaatschapsstatus, enz.)
POST/loadOrCreatePublic—Een persoon op e-mail zoeken of aanmaken. Body: { churchId, email, firstName, lastName }
POST/household/:householdIdJWTPeople.EditHuishoudenlidtoewijzingen bijwerken
POST/public/emailPublic—Een e-mail naar een persoon verzenden. Body: { churchId, personId, subject, body, appName }
POST/apiEmailsInternal—Persone-mails op ID's laden (server-naar-server, vereist jwtSecret)
DELETE/:idJWTPeople.EditEen persoon verwijderen

Voorbeeld: Personen Zoeken​

GET /membership/people/search?term=John
Authorization: Bearer <token>
[
{
"id": "abc-123",
"name": { "first": "John", "last": "Smith" },
"contactInfo": { "email": "john@example.com" },
"membershipStatus": "Member"
}
]

Voorbeeld: Een Persoon Aanmaken​

POST /membership/people
Authorization: Bearer <token>

[{ "firstName": "Jane", "lastName": "Doe", "contactInfo": { "email": "jane@example.com" } }]

Gebruikers​

Base path: /membership/users

Zie Authentication & Permissions voor login-, registratie- en wachtwoord-beheerendpunten.

MethodPathAuthPermissionDescription
POST/loginPublic—Inloggen (e-mail/wachtwoord, JWT-vernieuming, of authGuid)
POST/registerPublic—Een nieuwe gebruiker registreren
POST/forgotPublic—Wachtwoordresetstuurmail verzenden
POST/setPasswordGuidPublic—Wachtwoord instellen met auth GUID uit e-maillink
POST/verifyCredentialsPublic—E-mail/wachtwoord verifiëren en bijbehorende kerken retourneren
POST/loadOrCreateJWT—Een gebruiker op e-mail/userId zoeken of aanmaken
POST/setDisplayNameJWT—Voornaam en achternaam van gebruiker bijwerken
POST/updateEmailJWT—E-mailadres van gebruiker wijzigen
POST/updatePasswordJWT—Wachtwoord van gebruiker wijzigen (min. 6 tekens)
POST/updateOptedOutJWT—Opt-out-status van een persoon instellen
GET/search?term=JWTServer.AdminAlle gebruikers op naam/e-mail zoeken
DELETE/JWT—Huidige gebruikersaccount verwijderen

Kerken​

Base path: /membership/churches

MethodPathAuthPermissionDescription
GET/JWT—Alle kerken voor de huidige gebruiker laden
GET/:idJWT—Kerk op ID ophalen
GET/:id/getDomainAdminJWT—Domeinbeheerder voor een kerk ophalen
GET/:id/impersonateJWTServer.AdminEen kerk zich voordoen (alleen serverbeheerder)
GET/all?term=JWTServer.AdminAlle kerken zoeken (beheerder)
GET/search/?name=Public—Kerken op naam zoeken
GET/lookup/?subDomain=&id=Public—Een kerk op subdomein of ID opzoeken
POST/JWTSettings.EditKerkdetails bijwerken
POST/addJWT—Een nieuwe kerk registreren. Verplichte velden: name, address1, city, state, zip, country
POST/searchPublic—Kerken op naam zoeken (POST-variant)
POST/selectJWT—Naar een kerk gaan/overschakelen. Body: { churchId } of { subDomain }
POST/:id/archiveJWTServer.AdminEen kerk archiveren of uit archief halen
POST/byIdsPublic—Meerdere kerken op ID's laden
DELETE/deleteAbandonedJWTServer.AdminKerken die 7+ dagen verlaten zijn, verwijderen

Groepen​

Base path: /membership/groups

Breidt standaard CRUD uit (GET /, GET /:id van basisklasse).

MethodPathAuthPermissionDescription
GET/JWT—Alle groepen weergeven
GET/:idJWT—Groep op ID ophalen
GET/search?campusId=&serviceId=&serviceTimeId=JWT—Groepen op servicefilters zoeken
GET/myJWT—Groepen voor de huidige gebruiker ophalen
GET/my/:tagJWT—Groepen van huidige gebruiker gefilterd op tag
GET/tag/:tagJWT—Alle groepen met een specifieke tag ophalen
GET/public/:churchId/:idPublic—Een openbare groep op kerk en ID ophalen
GET/public/:churchId/tag/:tagPublic—Openbare groepen op tag ophalen
GET/public/:churchId/label?label=Public—Openbare groepen op label ophalen
GET/public/:churchId/slug/:slugPublic—Een openbare groep op slug ophalen
POST/JWTGroups.EditGroepen maken of bijwerken (genereert automatisch slug)
DELETE/:idJWTGroups.EditEen groep verwijderen (verwijdert ook onderliggende teams voor ministerie-groepen)

Groepsleden​

Base path: /membership/groupmembers

Breidt standaard CRUD uit (GET /:id, DELETE /:id van basisklasse).

MethodPathAuthPermissionDescription
GET/:idJWTGroupMembers.ViewGroepslid op ID ophalen
GET/JWTGroupMembers.View*Groepsleden weergeven. Filteren op ?groupId=, ?groupIds=, of ?personId=. *Ook toegestaan als gebruiker in de groep is of eigen personId opvraagt
GET/myJWT—Groepslidmaatschappen van huidige gebruiker ophalen
GET/basic/:groupIdJWT—Basisledenlijst voor een groep ophalen
GET/public/leaders/:churchId/:groupIdPublic—Groepsleiders ophalen (openbaar)
POST/JWTGroupMembers.EditGroepsleden toevoegen of bijwerken
DELETE/:idJWTGroupMembers.ViewEen groepslid verwijderen

Huishoudens​

Base path: /membership/households

Standaard CRUD-controller.

MethodPathAuthPermissionDescription
GET/JWT—Alle huishoudens weergeven
GET/:idJWT—Huishouden op ID ophalen
POST/JWTPeople.EditHuishoudens maken of bijwerken
DELETE/:idJWTPeople.EditEen huishouden verwijderen

Rollen​

Base path: /membership/roles

MethodPathAuthPermissionDescription
GET/:idJWTRoles.ViewRol op ID ophalen
GET/church/:churchIdJWTRoles.ViewAlle rollen voor een kerk ophalen
POST/JWTRoles.EditRollen maken of bijwerken
DELETE/:idJWTRoles.EditEen rol verwijderen (verwijdert ook bijbehorende machtigingen en leden)

Rolleden​

Base path: /membership/rolemembers

MethodPathAuthPermissionDescription
GET/roles/:idJWTRoles.ViewLeden voor een rol ophalen. Voeg ?include=users toe voor gebruikersdetails
POST/JWTRoles.EditLeden aan een rol toevoegen (maakt gebruiker aan als e-mail niet bestaat)
DELETE/:idJWTRoles.ViewEen rollid verwijderen
DELETE/self/:churchId/:userIdJWT—Jezelf van een kerk verwijderen

Rolmachtigingen​

Base path: /membership/rolepermissions

MethodPathAuthPermissionDescription
GET/roles/:idJWTRoles.ViewMachtigingen voor een rol ophalen (gebruik null als ID voor "Iedereen"-rol)
POST/JWTRoles.EditRolmachtigingen maken of bijwerken
DELETE/:idJWTRoles.EditEen rolmachtiging verwijderen

Machtigingen​

Base path: /membership/permissions

MethodPathAuthPermissionDescription
GET/JWT—De volledige lijst beschikbare machtigingen ophalen

Formulieren​

Base path: /membership/forms

MethodPathAuthPermissionDescription
GET/JWTForms.Admin of Forms.EditAlle formulieren weergeven (beheerder ziet alles; editors zien toegewezen + niet-leden-formulieren)
GET/:idJWTFormulieertoegangEen formulier op ID ophalen
GET/archivedJWTForms.Admin of Forms.EditGearchiveerde formulieren weergeven
GET/standalone/:id?churchId=JWT—Een standalone-formulier ophalen (beperkte formulieren vereisen verificatie)
POST/JWTForms.Admin of Forms.EditFormulieren maken of bijwerken
DELETE/:idJWTFormulieertoegangEen formulier verwijderen

Formulierinzendingen​

Base path: /membership/formsubmissions

MethodPathAuthPermissionDescription
GET/JWTForms.Admin of Forms.EditInzendingen weergeven. Filteren op ?personId= of ?formId=
GET/:idJWTForms.Admin of Forms.EditInzending op ID ophalen. Voeg ?include=form,questions,answers toe
GET/formId/:formIdJWTFormulieertoegangAlle inzendingen voor een formulier ophalen (inclusief formulier, vragen, antwoorden)
POST/JWT—Formulierantwoorden indienen (verwerkt beperkte/onbeperkte formulieren, verzendt e-mailmeldingen)
DELETE/:idJWTForms.Admin of Forms.EditEen inzending en antwoorden ervan verwijderen

Vragen​

Base path: /membership/questions

MethodPathAuthPermissionDescription
GET/JWTFormulieertoegangVragen voor een formulier weergeven. Vereist ?formId=
GET/:idJWTFormulieertoegangEen vraag op ID ophalen
GET/unrestricted?formId=JWT—Vragen voor een onbeperkt formulier ophalen
GET/sort/:id/upJWT—Een vraag in sorteervolgorde omhoog verplaatsen
GET/sort/:id/downJWT—Een vraag in sorteervolgorde omlaag verplaatsen
POST/JWTFormulieertoegangVragen maken of bijwerken (wijst automatisch sorteervolgorde toe)
DELETE/:id?formId=JWTFormulieertoegangEen vraag verwijderen

Antwoorden​

Base path: /membership/answers

MethodPathAuthPermissionDescription
GET/JWTForms.Admin of Forms.EditAntwoorden weergeven. Filteren op ?formSubmissionId=
POST/JWTForms.Admin of Forms.EditAntwoorden maken of bijwerken

Lidmachtigingen​

Base path: /membership/memberpermissions

Bepaalt toegang per lid tot specifieke formulieren.

MethodPathAuthPermissionDescription
GET/:idJWTFormulieertoegangEen lidmachtiging op ID ophalen
GET/member/:idJWTFormulieertoegangAlle formuliermachtigingen voor een lid ophalen
GET/form/:idJWTFormulieertoegangAlle lidmachtigingen voor een formulier ophalen
GET/form/:id/myJWTFormulieertoegangEigen machtigung voor een formulier ophalen
POST/JWTFormulieertoegangLidmachtigingen maken of bijwerken
DELETE/:id?formId=JWTFormulieertoegangEen lidmachtiging verwijderen
DELETE/member/:id?formId=JWTFormulieertoegangAlle machtiningingen voor een lid op een formulier verwijderen

Instellingen​

Base path: /membership/settings

MethodPathAuthPermissionDescription
GET/JWTSettings.EditAlle instellingen voor de kerk ophalen
GET/public/:churchIdPublic—Openbare instellingen voor een kerk ophalen
POST/JWTSettings.EditInstellingen opslaan (ondersteunt base64-afbeeldingsupload)

Domeinen​

Base path: /membership/domains

Breidt standaard CRUD uit (GET /:id, GET /, DELETE /:id van basisklasse).

MethodPathAuthPermissionDescription
GET/JWT—Alle domeinen weergeven
GET/:idJWT—Domein op ID ophalen
GET/lookup/:domainNameJWT—Een domein op naam opzoeken
GET/public/lookup/:domainNamePublic—Openbare domeinizipopeking op naam
GET/health/checkPublic—Gezondheidscheck op ongecontroleerde domeinen uitvoeren
POST/JWTSettings.EditDomeinen maken of bijwerken (triggert Caddy-update)
DELETE/:idJWTSettings.EditEen domein verwijderen

Gebruikerskerk​

Base path: /membership/userchurch

Beheert de associatie tussen gebruikers en kerken.

MethodPathAuthPermissionDescription
GET/userid/:userIdJWT—Gebruiker-kerkrecord op gebruikers-ID ophalen
GET/personid/:personIdJWT—E-mail voor gekoppelde gebruiker van een persoon ophalen
GET/user/:userIdJWTServer.AdminAlle kerken voor een gebruiker laden
POST/JWT—Een gebruiker-kerkassociatie maken
PATCH/:userIdJWT—Laatst geopende tijd bijwerken en toegang registreren
DELETE/record/:userId/:churchId/:personIdJWT—Een gebruiker-kerkrecord verwijderen

Zichtbaarheidsvoorkeuren​

Base path: /membership/visibilityPreferences

MethodPathAuthPermissionDescription
GET/myJWT—Zichtbaarheidsvoorkeuren van huidige gebruiker ophalen
POST/JWT—Zichtbaarheidsvoorkeuren opslaan (adres-, telefoon-, e-mailzichtbaarheid)

Query​

Base path: /membership/query

MethodPathAuthPermissionDescription
POST/membersJWT—Zoeken naar leden in natuurlijke taal met AI. Body: { text, subDomain, siteUrl }

Clientfouten​

Base path: /membership/clientErrors

MethodPathAuthPermissionDescription
POST/JWT—Een client-side-fout registreren

Gerelateerde Pagina's​