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=JWTBasisinformatie (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/:householdIdJWTAlle personen in een huishouden ophalen
GET/attendanceJWTPeople.EditDeelnemers laden met filters (campusId, serviceId, serviceTimeId, groupId, categoryName, startDate, endDate)
GET/timeline?personIds=&groupIds=JWTTimelinegegevens voor personen en groepen laden
GET/directory/:idJWTPersoon voor directoryweergave ophalen (respecteert zichtbaarheidsvoorkeuren)
GET/claim/:churchIdJWTEen 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/loadOrCreatePublicEen persoon op e-mail zoeken of aanmaken. Body: { churchId, email, firstName, lastName }
POST/household/:householdIdJWTPeople.EditHuishoudenlidtoewijzingen bijwerken
POST/public/emailPublicEen e-mail naar een persoon verzenden. Body: { churchId, personId, subject, body, appName }
POST/apiEmailsInternalPersone-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/loginPublicInloggen (e-mail/wachtwoord, JWT-vernieuming, of authGuid)
POST/registerPublicEen nieuwe gebruiker registreren
POST/forgotPublicWachtwoordresetstuurmail verzenden
POST/setPasswordGuidPublicWachtwoord instellen met auth GUID uit e-maillink
POST/verifyCredentialsPublicE-mail/wachtwoord verifiëren en bijbehorende kerken retourneren
POST/loadOrCreateJWTEen gebruiker op e-mail/userId zoeken of aanmaken
POST/setDisplayNameJWTVoornaam en achternaam van gebruiker bijwerken
POST/updateEmailJWTE-mailadres van gebruiker wijzigen
POST/updatePasswordJWTWachtwoord van gebruiker wijzigen (min. 6 tekens)
POST/updateOptedOutJWTOpt-out-status van een persoon instellen
GET/search?term=JWTServer.AdminAlle gebruikers op naam/e-mail zoeken
DELETE/JWTHuidige gebruikersaccount verwijderen

Kerken

Base path: /membership/churches

MethodPathAuthPermissionDescription
GET/JWTAlle kerken voor de huidige gebruiker laden
GET/:idJWTKerk op ID ophalen
GET/:id/getDomainAdminJWTDomeinbeheerder voor een kerk ophalen
GET/:id/impersonateJWTServer.AdminEen kerk zich voordoen (alleen serverbeheerder)
GET/all?term=JWTServer.AdminAlle kerken zoeken (beheerder)
GET/search/?name=PublicKerken op naam zoeken
GET/lookup/?subDomain=&id=PublicEen kerk op subdomein of ID opzoeken
POST/JWTSettings.EditKerkdetails bijwerken
POST/addJWTEen nieuwe kerk registreren. Verplichte velden: name, address1, city, state, zip, country
POST/searchPublicKerken op naam zoeken (POST-variant)
POST/selectJWTNaar een kerk gaan/overschakelen. Body: { churchId } of { subDomain }
POST/:id/archiveJWTServer.AdminEen kerk archiveren of uit archief halen
POST/byIdsPublicMeerdere 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/JWTAlle groepen weergeven
GET/:idJWTGroep op ID ophalen
GET/search?campusId=&serviceId=&serviceTimeId=JWTGroepen op servicefilters zoeken
GET/myJWTGroepen voor de huidige gebruiker ophalen
GET/my/:tagJWTGroepen van huidige gebruiker gefilterd op tag
GET/tag/:tagJWTAlle groepen met een specifieke tag ophalen
GET/public/:churchId/:idPublicEen openbare groep op kerk en ID ophalen
GET/public/:churchId/tag/:tagPublicOpenbare groepen op tag ophalen
GET/public/:churchId/label?label=PublicOpenbare groepen op label ophalen
GET/public/:churchId/slug/:slugPublicEen 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/myJWTGroepslidmaatschappen van huidige gebruiker ophalen
GET/basic/:groupIdJWTBasisledenlijst voor een groep ophalen
GET/public/leaders/:churchId/:groupIdPublicGroepsleiders ophalen (openbaar)
POST/JWTGroupMembers.EditGroepsleden toevoegen of bijwerken
DELETE/:idJWTGroupMembers.ViewEen groepslid verwijderen

Huishoudens

Base path: /membership/households

Standaard CRUD-controller.

MethodPathAuthPermissionDescription
GET/JWTAlle huishoudens weergeven
GET/:idJWTHuishouden 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/:userIdJWTJezelf 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/JWTDe 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=JWTEen 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/JWTFormulierantwoorden 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=JWTVragen voor een onbeperkt formulier ophalen
GET/sort/:id/upJWTEen vraag in sorteervolgorde omhoog verplaatsen
GET/sort/:id/downJWTEen 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/:churchIdPublicOpenbare 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/JWTAlle domeinen weergeven
GET/:idJWTDomein op ID ophalen
GET/lookup/:domainNameJWTEen domein op naam opzoeken
GET/public/lookup/:domainNamePublicOpenbare domeinizipopeking op naam
GET/health/checkPublicGezondheidscheck 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/:userIdJWTGebruiker-kerkrecord op gebruikers-ID ophalen
GET/personid/:personIdJWTE-mail voor gekoppelde gebruiker van een persoon ophalen
GET/user/:userIdJWTServer.AdminAlle kerken voor een gebruiker laden
POST/JWTEen gebruiker-kerkassociatie maken
PATCH/:userIdJWTLaatst geopende tijd bijwerken en toegang registreren
DELETE/record/:userId/:churchId/:personIdJWTEen gebruiker-kerkrecord verwijderen

Zichtbaarheidsvoorkeuren

Base path: /membership/visibilityPreferences

MethodPathAuthPermissionDescription
GET/myJWTZichtbaarheidsvoorkeuren van huidige gebruiker ophalen
POST/JWTZichtbaarheidsvoorkeuren opslaan (adres-, telefoon-, e-mailzichtbaarheid)

Query

Base path: /membership/query

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

Clientfouten

Base path: /membership/clientErrors

MethodPathAuthPermissionDescription
POST/JWTEen client-side-fout registreren

Gerelateerde Pagina's