Lumipat sa pangunahing nilalaman

Mga Endpoint ng Membership

Pinapamahalaan ng Membership module ang mga tao, simbahan, grupo, sambahayan, tungkulin, pahintulot, form, at setting. Ito ang pinakamalaking module at nagbibigay ng pangunahing layer ng pagkakakilanlan at awtorisasyon para sa lahat ng ibang module.

Base path: /membership

Mga Tao

Base path: /membership/people

MethodPathAuthPermissionPaglalarawan
GET/JWTPeople.View o MiyembroIlista ang lahat ng tao para sa simbahan
GET/:idJWTPeople.View o sariling talaanKunin ang isang tao ayon sa ID (kasama ang mga form submission)
GET/ids?ids=JWTPeople.View o MiyembroKunin ang maraming tao ayon sa mga ID na pinaghiwalay ng kuwit
GET/basic?ids=JWTKunin ang pangunahing impormasyon (pangalan lamang) para sa maraming tao
GET/recentJWTPeople.View o MiyembroMga kamakailang nadagdag na tao
GET/search?term=&email=JWTPeople.View o MiyembroMaghanap ng mga tao ayon sa pangalan o email
GET/search/phone?number=JWTPeople.View o MiyembroMaghanap ayon sa numero ng telepono
GET/search/group?groupId=JWTPeople.View o MiyembroKunin ang mga tao sa isang partikular na grupo
GET/household/:householdIdJWTKunin ang lahat ng tao sa isang sambahayan
GET/attendanceJWTPeople.EditI-load ang mga dumalo na may mga filter (campusId, serviceId, serviceTimeId, groupId, categoryName, startDate, endDate)
GET/timeline?personIds=&groupIds=JWTI-load ang data ng timeline para sa mga tao at grupo
GET/directory/:idJWTKunin ang tao para sa view ng direktoryo (iginagalang ang mga kagustuhan sa visibility)
GET/claim/:churchIdJWTI-claim ang isang talaan ng tao para sa kasalukuyang gumagamit sa isang simbahan
POST/JWTPeople.Edit o EditSelfLumikha o mag-update ng mga tao (batch)
POST/searchJWTPeople.View o MiyembroMaghanap ng mga tao (POST variant)
POST/advancedSearchJWTPeople.View o MiyembroPaghahanap na may maraming kundisyon (edad, buwang ng kapanganakan, membershipStatus, atbp.)
POST/loadOrCreatePampublikoHanapin o lumikha ng tao ayon sa email. Body: { churchId, email, firstName, lastName }
POST/household/:householdIdJWTPeople.EditI-update ang mga takdang-aralin ng miyembro ng sambahayan
POST/public/emailPampublikoMagpadala ng email sa isang tao. Body: { churchId, personId, subject, body, appName }
POST/apiEmailsInternalI-load ang mga email ng tao ayon sa mga ID (server-to-server, nangangailangan ng jwtSecret)
DELETE/:idJWTPeople.EditBurahin ang isang tao

Halimbawa: Maghanap ng mga Tao

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

Halimbawa: Lumikha ng isang Tao

POST /membership/people
Authorization: Bearer <token>

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

Mga Gumagamit

Base path: /membership/users

Tingnan ang Authentication at Mga Pahintulot para sa mga endpoint ng pag-login, pagpaparehistro, at pamamahala ng password.

MethodPathAuthPermissionPaglalarawan
POST/loginPampublikoMag-login (email/password, JWT refresh, o authGuid)
POST/registerPampublikoMagrehistro ng bagong gumagamit
POST/forgotPampublikoMagpadala ng email para sa pag-reset ng password
POST/setPasswordGuidPampublikoMagtakda ng password gamit ang auth GUID mula sa email link
POST/verifyCredentialsPampublikoI-verify ang email/password at ibalik ang mga kaugnay na simbahan
POST/loadOrCreateJWTHanapin o lumikha ng gumagamit ayon sa email/userId
POST/setDisplayNameJWTI-update ang unang pangalan at apelyido ng gumagamit
POST/updateEmailJWTBaguhin ang email address ng gumagamit
POST/updatePasswordJWTBaguhin ang password ng gumagamit (minimum 6 karakter)
POST/updateOptedOutJWTItakda ang opted-out na katayuan ng isang tao
GET/search?term=JWTServer.AdminMaghanap sa lahat ng gumagamit ayon sa pangalan/email
DELETE/JWTBurahin ang kasalukuyang account ng gumagamit

Mga Simbahan

Base path: /membership/churches

MethodPathAuthPermissionPaglalarawan
GET/JWTI-load ang lahat ng simbahan para sa kasalukuyang gumagamit
GET/:idJWTKunin ang simbahan ayon sa ID
GET/:id/getDomainAdminJWTKunin ang domain admin user para sa isang simbahan
GET/:id/impersonateJWTServer.AdminMag-impersonate ng isang simbahan (server admin lamang)
GET/all?term=JWTServer.AdminMaghanap sa lahat ng simbahan (admin)
GET/search/?name=PampublikoMaghanap ng mga simbahan ayon sa pangalan
GET/lookup/?subDomain=&id=PampublikoMaghanap ng isang simbahan ayon sa subdomain o ID
POST/JWTSettings.EditI-update ang mga detalye ng simbahan
POST/addJWTMagrehistro ng bagong simbahan. Mga kinakailangang field: name, address1, city, state, zip, country
POST/searchPampublikoMaghanap ng mga simbahan ayon sa pangalan (POST variant)
POST/selectJWTPumili/lumipat sa isang simbahan. Body: { churchId } o { subDomain }
POST/:id/archiveJWTServer.AdminI-archive o i-unarchive ang isang simbahan
POST/byIdsPampublikoI-load ang maraming simbahan ayon sa mga ID
DELETE/deleteAbandonedJWTServer.AdminBurahin ang mga simbahang inabandona nang 7+ araw

Mga Grupo

Base path: /membership/groups

Nag-eextend ng karaniwang CRUD (GET /, GET /:id mula sa base class).

MethodPathAuthPermissionPaglalarawan
GET/JWTIlista ang lahat ng grupo
GET/:idJWTKunin ang grupo ayon sa ID
GET/search?campusId=&serviceId=&serviceTimeId=JWTMaghanap ng mga grupo ayon sa mga filter ng serbisyo
GET/myJWTKunin ang mga grupo para sa kasalukuyang gumagamit
GET/my/:tagJWTKunin ang mga grupo ng kasalukuyang gumagamit na na-filter ayon sa tag
GET/tag/:tagJWTKunin ang lahat ng grupo na may partikular na tag
GET/public/:churchId/:idPampublikoKunin ang isang pampublikong grupo ayon sa simbahan at ID
GET/public/:churchId/tag/:tagPampublikoKunin ang mga pampublikong grupo ayon sa tag
GET/public/:churchId/label?label=PampublikoKunin ang mga pampublikong grupo ayon sa label
GET/public/:churchId/slug/:slugPampublikoKunin ang isang pampublikong grupo ayon sa slug
POST/JWTGroups.EditLumikha o mag-update ng mga grupo (awtomatikong bumubuo ng slug)
DELETE/:idJWTGroups.EditBurahin ang isang grupo (binubura din ang mga child team para sa mga grupo ng ministeryo)

Mga Miyembro ng Grupo

Base path: /membership/groupmembers

Nag-eextend ng karaniwang CRUD (GET /:id, DELETE /:id mula sa base class).

MethodPathAuthPermissionPaglalarawan
GET/:idJWTGroupMembers.ViewKunin ang miyembro ng grupo ayon sa ID
GET/JWTGroupMembers.View*Ilista ang mga miyembro ng grupo. I-filter ayon sa ?groupId=, ?groupIds=, o ?personId=. *Pinapayagan din kung ang gumagamit ay nasa grupo o naghahanap ng sariling personId
GET/myJWTKunin ang mga membership sa grupo ng kasalukuyang gumagamit
GET/basic/:groupIdJWTKunin ang pangunahing listahan ng miyembro para sa isang grupo
GET/public/leaders/:churchId/:groupIdPampublikoKunin ang mga lider ng grupo (pampubliko)
POST/JWTGroupMembers.EditMagdagdag o mag-update ng mga miyembro ng grupo
DELETE/:idJWTGroupMembers.ViewAlisin ang isang miyembro ng grupo

Mga Sambahayan

Base path: /membership/households

Karaniwang CRUD controller.

MethodPathAuthPermissionPaglalarawan
GET/JWTIlista ang lahat ng sambahayan
GET/:idJWTKunin ang sambahayan ayon sa ID
POST/JWTPeople.EditLumikha o mag-update ng mga sambahayan
DELETE/:idJWTPeople.EditBurahin ang isang sambahayan

Mga Tungkulin

Base path: /membership/roles

MethodPathAuthPermissionPaglalarawan
GET/:idJWTRoles.ViewKunin ang tungkulin ayon sa ID
GET/church/:churchIdJWTRoles.ViewKunin ang lahat ng tungkulin para sa isang simbahan
POST/JWTRoles.EditLumikha o mag-update ng mga tungkulin
DELETE/:idJWTRoles.EditBurahin ang isang tungkulin (inaalis din ang mga pahintulot at miyembro nito)

Mga Miyembro ng Tungkulin

Base path: /membership/rolemembers

MethodPathAuthPermissionPaglalarawan
GET/roles/:idJWTRoles.ViewKunin ang mga miyembro para sa isang tungkulin. Magdagdag ng ?include=users para isama ang mga detalye ng gumagamit
POST/JWTRoles.EditMagdagdag ng mga miyembro sa isang tungkulin (lumilikha ng gumagamit kung walang umiiral na email)
DELETE/:idJWTRoles.ViewAlisin ang isang miyembro ng tungkulin
DELETE/self/:churchId/:userIdJWTAlisin ang sarili mula sa isang simbahan

Mga Pahintulot ng Tungkulin

Base path: /membership/rolepermissions

MethodPathAuthPermissionPaglalarawan
GET/roles/:idJWTRoles.ViewKunin ang mga pahintulot para sa isang tungkulin (gamitin ang null bilang ID para sa tungkuling "Everyone")
POST/JWTRoles.EditLumikha o mag-update ng mga pahintulot ng tungkulin
DELETE/:idJWTRoles.EditBurahin ang isang pahintulot ng tungkulin

Mga Pahintulot

Base path: /membership/permissions

MethodPathAuthPermissionPaglalarawan
GET/JWTKunin ang buong listahan ng mga magagamit na pahintulot

Mga Form

Base path: /membership/forms

MethodPathAuthPermissionPaglalarawan
GET/JWTForms.Admin o Forms.EditIlista ang lahat ng form (nakikita ng admin ang lahat; nakikita ng mga editor ang mga itinalaga + mga form na hindi para sa miyembro)
GET/:idJWTAccess sa FormKunin ang isang form ayon sa ID
GET/archivedJWTForms.Admin o Forms.EditIlista ang mga naka-archive na form
GET/standalone/:id?churchId=JWTKunin ang isang standalone na form (ang mga pinaghihigpitang form ay nangangailangan ng auth)
POST/JWTForms.Admin o Forms.EditLumikha o mag-update ng mga form
DELETE/:idJWTAccess sa FormBurahin ang isang form

Mga Pagsusumite ng Form

Base path: /membership/formsubmissions

MethodPathAuthPermissionPaglalarawan
GET/JWTForms.Admin o Forms.EditIlista ang mga pagsusumite. I-filter ayon sa ?personId= o ?formId=
GET/:idJWTForms.Admin o Forms.EditKunin ang pagsusumite ayon sa ID. Magdagdag ng ?include=form,questions,answers
GET/formId/:formIdJWTAccess sa FormKunin ang lahat ng pagsusumite para sa isang form (kasama ang form, mga tanong, mga sagot)
POST/JWTMagsumite ng mga sagot sa form (hina-handle ang mga pinaghihigpitan/hindi pinaghihigpitang form, nagpapadala ng mga abiso sa email)
DELETE/:idJWTForms.Admin o Forms.EditBurahin ang isang pagsusumite at ang mga sagot nito

Mga Tanong

Base path: /membership/questions

MethodPathAuthPermissionPaglalarawan
GET/JWTAccess sa FormIlista ang mga tanong para sa isang form. Nangangailangan ng ?formId=
GET/:idJWTAccess sa FormKunin ang isang tanong ayon sa ID
GET/unrestricted?formId=JWTKunin ang mga tanong para sa isang hindi pinaghihigpitang form
GET/sort/:id/upJWTIlipat ang isang tanong pataas sa sort order
GET/sort/:id/downJWTIlipat ang isang tanong pababa sa sort order
POST/JWTAccess sa FormLumikha o mag-update ng mga tanong (awtomatikong nagtatalaga ng sort order)
DELETE/:id?formId=JWTAccess sa FormBurahin ang isang tanong

Mga Sagot

Base path: /membership/answers

MethodPathAuthPermissionPaglalarawan
GET/JWTForms.Admin o Forms.EditIlista ang mga sagot. I-filter ayon sa ?formSubmissionId=
POST/JWTForms.Admin o Forms.EditLumikha o mag-update ng mga sagot

Mga Pahintulot ng Miyembro

Base path: /membership/memberpermissions

Kinokontrol ang per-member na access sa mga partikular na form.

MethodPathAuthPermissionPaglalarawan
GET/:idJWTAccess sa FormKunin ang isang pahintulot ng miyembro ayon sa ID
GET/member/:idJWTAccess sa FormKunin ang lahat ng pahintulot sa form para sa isang miyembro
GET/form/:idJWTAccess sa FormKunin ang lahat ng pahintulot ng miyembro para sa isang form
GET/form/:id/myJWTAccess sa FormKunin ang pahintulot ng kasalukuyang gumagamit para sa isang form
POST/JWTAccess sa FormLumikha o mag-update ng mga pahintulot ng miyembro
DELETE/:id?formId=JWTAccess sa FormBurahin ang isang pahintulot ng miyembro
DELETE/member/:id?formId=JWTAccess sa FormBurahin ang lahat ng pahintulot para sa isang miyembro sa isang form

Mga Setting

Base path: /membership/settings

MethodPathAuthPermissionPaglalarawan
GET/JWTSettings.EditKunin ang lahat ng setting para sa simbahan
GET/public/:churchIdPampublikoKunin ang mga pampublikong setting para sa isang simbahan
POST/JWTSettings.EditI-save ang mga setting (sinusuportahan ang base64 na pag-upload ng imahe)

Mga Domain

Base path: /membership/domains

Nag-eextend ng karaniwang CRUD (GET /:id, GET /, DELETE /:id mula sa base class).

MethodPathAuthPermissionPaglalarawan
GET/JWTIlista ang lahat ng domain
GET/:idJWTKunin ang domain ayon sa ID
GET/lookup/:domainNameJWTMaghanap ng isang domain ayon sa pangalan
GET/public/lookup/:domainNamePampublikoPampublikong paghahanap ng domain ayon sa pangalan
GET/health/checkPampublikoMagpatakbo ng health check sa mga hindi pa nasusuring domain
POST/JWTSettings.EditLumikha o mag-update ng mga domain (nagti-trigger ng Caddy update)
DELETE/:idJWTSettings.EditBurahin ang isang domain

User Church

Base path: /membership/userchurch

Pinapamahalaan ang ugnayan sa pagitan ng mga gumagamit at simbahan.

MethodPathAuthPermissionPaglalarawan
GET/userid/:userIdJWTKunin ang talaan ng user-church ayon sa user ID
GET/personid/:personIdJWTKunin ang email para sa naka-link na gumagamit ng isang tao
GET/user/:userIdJWTServer.AdminI-load ang lahat ng simbahan para sa isang gumagamit
POST/JWTLumikha ng ugnayan ng user-church
PATCH/:userIdJWTI-update ang huling oras ng pag-access at mag-log ng access
DELETE/record/:userId/:churchId/:personIdJWTBurahin ang isang talaan ng user-church

Mga Kagustuhan sa Visibility

Base path: /membership/visibilityPreferences

MethodPathAuthPermissionPaglalarawan
GET/myJWTKunin ang mga kagustuhan sa visibility ng kasalukuyang gumagamit
POST/JWTI-save ang mga kagustuhan sa visibility (visibility ng address, telepono, email)

Query

Base path: /membership/query

MethodPathAuthPermissionPaglalarawan
POST/membersJWTPaghahanap ng miyembro sa natural na wika gamit ang AI. Body: { text, subDomain, siteUrl }

Mga Error ng Client

Base path: /membership/clientErrors

MethodPathAuthPermissionPaglalarawan
POST/JWTMag-log ng error sa panig ng client

Mga Kaugnay na Pahina