Spring til hovedindhold

Medlemskabsendpoints

Medlemskabsmodulet administrerer mennesker, kirker, grupper, husstande, roller, tilladelser, formularer og indstillinger. Det er det største modul og leverer kernelaget for identitet og autorisering for alle andre moduler.

Basesti: /membership

Mennesker

Basesti: /membership/people

MethodPathAuthPermissionDescription
GET/JWTPeople.View or MemberList alle mennesker for kirken
GET/:idJWTPeople.View or own recordHent en person efter ID (inkluderer formularindsendelser)
GET/ids?ids=JWTPeople.View or MemberHent flere mennesker efter komma-separerede ID'er
GET/basic?ids=JWTHent grundlæggende info (kun navn) for flere mennesker
GET/recentJWTPeople.View or MemberNyligt tilføjede mennesker
GET/search?term=&email=JWTPeople.View or MemberSøg mennesker efter navn eller e-mail
GET/search/phone?number=JWTPeople.View or MemberSøg efter telefonnummer
GET/search/group?groupId=JWTPeople.View or MemberHent mennesker i en bestemt gruppe
GET/household/:householdIdJWTHent alle mennesker i en husstand
GET/attendanceJWTPeople.EditIndlæs deltagerere med filtre (campusId, serviceId, serviceTimeId, groupId, categoryName, startDate, endDate)
GET/timeline?personIds=&groupIds=JWTIndlæs tidslinjedata for mennesker og grupper
GET/directory/:idJWTHent person for mappevisning (respekterer synlighedsindstillinger)
GET/claim/:churchIdJWTGør krav på en personpost for den aktuelle bruger på en kirke
POST/JWTPeople.Edit or EditSelfOpret eller opdater mennesker (batch)
POST/searchJWTPeople.View or MemberSøg mennesker (POST-variant)
POST/advancedSearchJWTPeople.View or MemberMulti-betingelses søgning (alder, fødselsmåned, medlemskabsstatus osv.)
POST/loadOrCreatePublicFind eller opret en person efter e-mail. Body: { churchId, email, firstName, lastName }
POST/household/:householdIdJWTPeople.EditOpdater tildeling af hustandsmedlemmer
POST/public/emailPublicSend en e-mail til en person. Body: { churchId, personId, subject, body, appName }
POST/apiEmailsInternalIndlæs person-e-mails efter ID'er (server-til-server, kræver jwtSecret)
DELETE/:idJWTPeople.EditSlet en person

Eksempel: Søg mennesker

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

Eksempel: Opret en person

POST /membership/people
Authorization: Bearer <token>

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

Brugere

Basesti: /membership/users

Se Godkendelse og tilladelser for login-, registrerings- og adgangskodeenheder.

MethodPathAuthPermissionDescription
POST/loginPublicLog ind (e-mail/adgangskode, JWT-opdatering eller authGuid)
POST/registerPublicRegistrer en ny bruger
POST/forgotPublicSend e-mail til nulstilling af adgangskode
POST/setPasswordGuidPublicAngiv adgangskode ved hjælp af auth-GUID fra e-mail-link
POST/verifyCredentialsPublicBekræft e-mail/adgangskode og returner tilknyttede kirker
POST/loadOrCreateJWTFind eller opret en bruger efter e-mail/userId
POST/setDisplayNameJWTOpdater brugerens for- og efternavn
POST/updateEmailJWTSkift brugerens e-mailadresse
POST/updatePasswordJWTSkift brugerens adgangskode (min 6 tegn)
POST/updateOptedOutJWTIndstil en persons opt-out-status
GET/search?term=JWTServer.AdminSøg alle brugere efter navn/e-mail
DELETE/JWTSlet den aktuelle brugerkonto

Kirker

Basesti: /membership/churches

MethodPathAuthPermissionDescription
GET/JWTIndlæs alle kirker for den aktuelle bruger
GET/:idJWTHent kirke efter ID
GET/:id/getDomainAdminJWTHent domæneadministratoren for en kirke
GET/:id/impersonateJWTServer.AdminImpersoner en kirke (kun serveradmin)
GET/all?term=JWTServer.AdminSøg alle kirker (admin)
GET/search/?name=PublicSøg kirker efter navn
GET/lookup/?subDomain=&id=PublicSlå en kirke op efter underdomæne eller ID
POST/JWTSettings.EditOpdater kirkedetaljer
POST/addJWTRegistrer en ny kirke. Påkrævede felter: navn, adresse1, by, stat, postnummer, land
POST/searchPublicSøg kirker efter navn (POST-variant)
POST/selectJWTVælg/skift til en kirke. Body: { churchId } eller { subDomain }
POST/:id/archiveJWTServer.AdminArkivér eller fjern arkiv fra en kirke
POST/byIdsPublicIndlæs flere kirker efter ID'er
DELETE/deleteAbandonedJWTServer.AdminSlet kirker opgivet i 7+ dage

Grupper

Basesti: /membership/groups

Udvider standard CRUD (GET /, GET /:id fra basisklasse).

MethodPathAuthPermissionDescription
GET/JWTList alle grupper
GET/:idJWTHent gruppe efter ID
GET/search?campusId=&serviceId=&serviceTimeId=JWTSøg grupper efter servicefiltere
GET/myJWTHent grupper for den aktuelle bruger
GET/my/:tagJWTHent nuværende brugers grupper filtreret efter tag
GET/tag/:tagJWTHent alle grupper med et bestemt tag
GET/public/:churchId/:idPublicHent en offentlig gruppe efter kirke og ID
GET/public/:churchId/tag/:tagPublicHent offentlige grupper efter tag
GET/public/:churchId/label?label=PublicHent offentlige grupper efter etiket
GET/public/:churchId/slug/:slugPublicHent en offentlig gruppe efter slug
POST/JWTGroups.EditOpret eller opdater grupper (auto-genererer slug)
DELETE/:idJWTGroups.EditSlet en gruppe (sletter også underordnede teams for ministergrupper)

Gruppemedlemmer

Basesti: /membership/groupmembers

Udvider standard CRUD (GET /:id, DELETE /:id fra basisklasse).

MethodPathAuthPermissionDescription
GET/:idJWTGroupMembers.ViewHent gruppemedlem efter ID
GET/JWTGroupMembers.View*List gruppemedlemmer. Filtrer efter ?groupId=, ?groupIds= eller ?personId=. *Tilladt også hvis bruger er i gruppen eller spørger efter eget personId
GET/myJWTHent nuværende brugers gruppetilhørsforhold
GET/basic/:groupIdJWTHent basisk medlemsliste for en gruppe
GET/public/leaders/:churchId/:groupIdPublicHent gruppeleders (offentlig)
POST/JWTGroupMembers.EditTilføj eller opdater gruppemedlemmer
DELETE/:idJWTGroupMembers.ViewFjern et gruppemedlem

Husstande

Basesti: /membership/households

Standard CRUD-controller.

MethodPathAuthPermissionDescription
GET/JWTList alle husstande
GET/:idJWTHent husstand efter ID
POST/JWTPeople.EditOpret eller opdater husstande
DELETE/:idJWTPeople.EditSlet en husstand

Roller

Basesti: /membership/roles

MethodPathAuthPermissionDescription
GET/:idJWTRoles.ViewHent rolle efter ID
GET/church/:churchIdJWTRoles.ViewHent alle roller for en kirke
POST/JWTRoles.EditOpret eller opdater roller
DELETE/:idJWTRoles.EditSlet en rolle (fjerner også dens tilladelser og medlemmer)

Rollemedlemmer

Basesti: /membership/rolemembers

MethodPathAuthPermissionDescription
GET/roles/:idJWTRoles.ViewHent medlemmer for en rolle. Tilføj ?include=users for at medtage brugerdetaljer
POST/JWTRoles.EditTilføj medlemmer til en rolle (opretter bruger, hvis e-mail ikke eksisterer)
DELETE/:idJWTRoles.ViewFjern et rollemedlem
DELETE/self/:churchId/:userIdJWTFjern dig selv fra en kirke

Rolletilladelser

Basesti: /membership/rolepermissions

MethodPathAuthPermissionDescription
GET/roles/:idJWTRoles.ViewHent tilladelser for en rolle (brug null som ID for "Alle"-rolle)
POST/JWTRoles.EditOpret eller opdater rolletilladelser
DELETE/:idJWTRoles.EditSlet en rolletilladelse

Tilladelser

Basesti: /membership/permissions

MethodPathAuthPermissionDescription
GET/JWTHent den fulde liste over tilgængelige tilladelser

Formularer

Basesti: /membership/forms

MethodPathAuthPermissionDescription
GET/JWTForms.Admin or Forms.EditList alle formularer (admin ser alt; editorer ser tildelte + ikke-medlemsformularer)
GET/:idJWTForm accessHent en formular efter ID
GET/archivedJWTForms.Admin or Forms.EditList arkiverede formularer
GET/standalone/:id?churchId=JWTHent en selvstændig formular (begrænsede formularer kræver godkendelse)
POST/JWTForms.Admin or Forms.EditOpret eller opdater formularer
DELETE/:idJWTForm accessSlet en formular

Formularindsendelser

Basesti: /membership/formsubmissions

MethodPathAuthPermissionDescription
GET/JWTForms.Admin or Forms.EditList indsendelser. Filtrer efter ?personId= eller ?formId=
GET/:idJWTForms.Admin or Forms.EditHent indsendelse efter ID. Tilføj ?include=form,questions,answers
GET/formId/:formIdJWTForm accessHent alle indsendelser for en formular (inkluderer formular, spørgsmål, svar)
POST/JWTIndsend formularesvar (håndterer begrænsede/ubegrænsede formularer, sender e-mail-meddelelser)
DELETE/:idJWTForms.Admin or Forms.EditSlet en indsendelse og dens svar

Spørgsmål

Basesti: /membership/questions

MethodPathAuthPermissionDescription
GET/JWTForm accessList spørgsmål for en formular. Kræver ?formId=
GET/:idJWTForm accessHent et spørgsmål efter ID
GET/unrestricted?formId=JWTHent spørgsmål for en ubegrænset formular
GET/sort/:id/upJWTFlyt et spørgsmål op i sorteringsrækkefølge
GET/sort/:id/downJWTFlyt et spørgsmål ned i sorteringsrækkefølge
POST/JWTForm accessOpret eller opdater spørgsmål (auto-tildeler sorteringsrækkefølge)
DELETE/:id?formId=JWTForm accessSlet et spørgsmål

Svar

Basesti: /membership/answers

MethodPathAuthPermissionDescription
GET/JWTForms.Admin or Forms.EditList svar. Filtrer efter ?formSubmissionId=
POST/JWTForms.Admin or Forms.EditOpret eller opdater svar

Medlemstilladelser

Basesti: /membership/memberpermissions

Kontrollerer adgang per medlem til specifikke formularer.

MethodPathAuthPermissionDescription
GET/:idJWTForm accessHent en medlemstilladelse efter ID
GET/member/:idJWTForm accessHent alle formulartilladelser for et medlem
GET/form/:idJWTForm accessHent alle medlemstilladelser for en formular
GET/form/:id/myJWTForm accessHent nuværende brugers tilladelse for en formular
POST/JWTForm accessOpret eller opdater medlemstilladelser
DELETE/:id?formId=JWTForm accessSlet en medlemstilladelse
DELETE/member/:id?formId=JWTForm accessSlet alle tilladelser for et medlem på en formular

Indstillinger

Basesti: /membership/settings

MethodPathAuthPermissionDescription
GET/JWTSettings.EditHent alle indstillinger for kirken
GET/public/:churchIdPublicHent offentlige indstillinger for en kirke
POST/JWTSettings.EditGem indstillinger (understøtter base64-billedupload)

Domæner

Basesti: /membership/domains

Udvider standard CRUD (GET /:id, GET /, DELETE /:id fra basisklasse).

MethodPathAuthPermissionDescription
GET/JWTList alle domæner
GET/:idJWTHent domæne efter ID
GET/lookup/:domainNameJWTSlå et domæne op efter navn
GET/public/lookup/:domainNamePublicOffentlig domæneopslag efter navn
GET/health/checkPublicKør sundhedstjek på umarkerede domæner
POST/JWTSettings.EditOpret eller opdater domæner (udløser Caddy-opdatering)
DELETE/:idJWTSettings.EditSlet et domæne

Brugerkirke

Basesti: /membership/userchurch

Administrerer forbindelsen mellem brugere og kirker.

MethodPathAuthPermissionDescription
GET/userid/:userIdJWTHent brugerkirke-post efter bruger-ID
GET/personid/:personIdJWTHent e-mail for en persons tilknyttede bruger
GET/user/:userIdJWTServer.AdminIndlæs alle kirker for en bruger
POST/JWTOpret en brugerkirke-tilknytning
PATCH/:userIdJWTOpdater sidste adgangstid og log adgang
DELETE/record/:userId/:churchId/:personIdJWTSlet en brugerkirke-post

Synlighedsindstillinger

Basesti: /membership/visibilityPreferences

MethodPathAuthPermissionDescription
GET/myJWTHent nuværende brugers synlighedsindstillinger
POST/JWTGem synlighedsindstillinger (adresse-, telefon- og e-mail-synlighed)

Forespørgsel

Basesti: /membership/query

MethodPathAuthPermissionDescription
POST/membersJWTNaturligt sprogmedlemsøgning ved hjælp af AI. Body: { text, subDomain, siteUrl }

Klientfejl

Basesti: /membership/clientErrors

MethodPathAuthPermissionDescription
POST/JWTLog en klientside-fejl

Relaterede sider