Перейти к основному содержимому

Конечные точки членства

Модуль членства управляет людьми, церквями, группами, семьями, ролями, разрешениями, формами и параметрами. Это самый большой модуль и обеспечивает основной уровень идентификации и авторизации для всех других модулей.

Базовый путь: /membership

Люди

Базовый путь: /membership/people

МетодПутьАут.РазрешениеОписание
GET/JWTPeople.View или MemberСписок всех людей для церкви
GET/:idJWTPeople.View или собственная записьПолучить человека по ID (включает отправки формы)
GET/ids?ids=JWTPeople.View или MemberПолучить нескольких людей по разделённым запятой ID
GET/basic?ids=JWTПолучить базовую информацию (только имя) для нескольких людей
GET/recentJWTPeople.View или MemberНедавно добавленные люди
GET/search?term=&email=JWTPeople.View или MemberПоиск людей по имени или email
GET/search/phone?number=JWTPeople.View или MemberПоиск по номеру телефона
GET/search/group?groupId=JWTPeople.View или MemberПолучить людей в конкретной группе
GET/household/:householdIdJWTПолучить всех людей в семье
GET/attendanceJWTPeople.EditЗагрузить участников с фильтрами (campusId, serviceId, serviceTimeId, groupId, categoryName, startDate, endDate)
GET/timeline?personIds=&groupIds=JWTЗагрузить данные временной шкалы для людей и групп
GET/directory/:idJWTПолучить человека для представления справочника (соответствует предпочтениям видимости)
GET/claim/:churchIdJWTПотребовать запись о человеке для текущего пользователя в церкви
POST/JWTPeople.Edit или EditSelfСоздать или обновить людей (пакет)
POST/searchJWTPeople.View или MemberПоиск людей (вариант POST)
POST/advancedSearchJWTPeople.View или MemberПоиск с множественными условиями (возраст, месяц рождения, статус членства и т. д.)
POST/loadOrCreatePublicНайти или создать человека по email. Тело: { churchId, email, firstName, lastName }
POST/household/:householdIdJWTPeople.EditОбновить назначения членов семьи
POST/public/emailPublicОтправить письмо человеку. Тело: { churchId, personId, subject, body, appName }
POST/apiEmailsInternalЗагрузить письма человека по ID (сервер-сервер, требует jwtSecret)
DELETE/:idJWTPeople.EditУдалить человека

Пример: поиск людей

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

Пример: создание человека

POST /membership/people
Authorization: Bearer <token>

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

Пользователи

Базовый путь: /membership/users

См. Аутентификация и разрешения для конечных точек входа, регистрации и управления паролем.

МетодПутьАут.РазрешениеОписание
POST/loginPublicВход (email/пароль, JWT обновление или authGuid)
POST/registerPublicРегистрировать нового пользователя
POST/forgotPublicОтправить письмо сброса пароля
POST/setPasswordGuidPublicУстановить пароль, используя auth GUID из ссылки письма
POST/verifyCredentialsPublicПроверить email/пароль и вернуть связанные церкви
POST/loadOrCreateJWTНайти или создать пользователя по email/userId
POST/setDisplayNameJWTОбновить имя и фамилию пользователя
POST/updateEmailJWTИзменить адрес email пользователя
POST/updatePasswordJWTИзменить пароль пользователя (мин. 6 символов)
POST/updateOptedOutJWTУстановить статус отказа человека
GET/search?term=JWTServer.AdminПоиск всех пользователей по имени/email
DELETE/JWTУдалить учётную запись текущего пользователя

Церкви

Базовый путь: /membership/churches

МетодПутьАут.РазрешениеОписание
GET/JWTЗагрузить все церкви для текущего пользователя
GET/:idJWTПолучить церковь по ID
GET/:id/getDomainAdminJWTПолучить пользователя администратора домена для церкви
GET/:id/impersonateJWTServer.AdminВыдать себя за церковь (только администратор сервера)
GET/all?term=JWTServer.AdminПоиск всех церквей (администратор)
GET/search/?name=PublicПоиск церквей по названию
GET/lookup/?subDomain=&id=PublicПоиск церкви по поддомену или ID
POST/JWTSettings.EditОбновить детали церкви
POST/addJWTРегистрировать новую церковь. Обязательные поля: name, address1, city, state, zip, country
POST/searchPublicПоиск церквей по названию (вариант POST)
POST/selectJWTВыбрать/переключиться на церковь. Тело: { churchId } или { subDomain }
POST/:id/archiveJWTServer.AdminАрхивировать или разархивировать церковь
POST/byIdsPublicЗагрузить несколько церквей по ID
DELETE/deleteAbandonedJWTServer.AdminУдалить церкви, заброшенные на 7+ дней

Группы

Базовый путь: /membership/groups

Расширяет стандартный CRUD (GET /, GET /:id из базового класса).

МетодПутьАут.РазрешениеОписание
GET/JWTСписок всех групп
GET/:idJWTПолучить группу по ID
GET/search?campusId=&serviceId=&serviceTimeId=JWTПоиск групп по фильтрам служения
GET/myJWTПолучить группы для текущего пользователя
GET/my/:tagJWTПолучить группы текущего пользователя, отфильтрованные по метке
GET/tag/:tagJWTПолучить все группы с конкретной меткой
GET/public/:churchId/:idPublicПолучить открытую группу по церкви и ID
GET/public/:churchId/tag/:tagPublicПолучить открытые группы по метке
GET/public/:churchId/label?label=PublicПолучить открытые группы по ярлыку
GET/public/:churchId/slug/:slugPublicПолучить открытую группу по slug
POST/JWTGroups.EditСоздать или обновить группы (автоматически генерирует slug)
DELETE/:idJWTGroups.EditУдалить группу (также удаляет дочерние команды для групп служения)

Члены группы

Базовый путь: /membership/groupmembers

Расширяет стандартный CRUD (GET /:id, DELETE /:id из базового класса).

МетодПутьАут.РазрешениеОписание
GET/:idJWTGroupMembers.ViewПолучить члена группы по ID
GET/JWTGroupMembers.View*Список членов группы. Фильтр по ?groupId=, ?groupIds= или ?personId=. *Также допускается, если пользователь находится в группе или запрашивает собственный personId
GET/myJWTПолучить членства в группах текущего пользователя
GET/basic/:groupIdJWTПолучить базовый список членов для группы
GET/public/leaders/:churchId/:groupIdPublicПолучить лидеров группы (открытый доступ)
GET/public/:churchId/:groupIdPublicПолучить открытый список членов группы (минимальные поля: personId, displayName, leader, фото). Только когда группа включает через publicRoster; питает элемент staffGrid конструктора веб-сайта
POST/JWTGroupMembers.EditДобавить или обновить членов группы
DELETE/:idJWTGroupMembers.ViewУдалить члена группы

Семьи

Базовый путь: /membership/households

Стандартный контроллер CRUD.

МетодПутьАут.РазрешениеОписание
GET/JWTСписок всех семей
GET/:idJWTПолучить семью по ID
POST/JWTPeople.EditСоздать или обновить семьи
DELETE/:idJWTPeople.EditУдалить семью

Роли

Базовый путь: /membership/roles

МетодПутьАут.РазрешениеОписание
GET/:idJWTRoles.ViewПолучить роль по ID
GET/church/:churchIdJWTRoles.ViewПолучить все роли для церкви
POST/JWTRoles.EditСоздать или обновить роли
DELETE/:idJWTRoles.EditУдалить роль (также удаляет её разрешения и членов)

Члены роли

Базовый путь: /membership/rolemembers

МетодПутьАут.РазрешениеОписание
GET/roles/:idJWTRoles.ViewПолучить членов для роли. Добавьте ?include=users для включения деталей пользователей
POST/JWTRoles.EditДобавить членов в роль (создаёт пользователя, если email не существует)
DELETE/:idJWTRoles.ViewУдалить члена роли
DELETE/self/:churchId/:userIdJWTУдалить себя из церкви

Разрешения роли

Базовый путь: /membership/rolepermissions

МетодПутьАут.РазрешениеОписание
GET/roles/:idJWTRoles.ViewПолучить разрешения для роли (используйте null как ID для роли «все»)
POST/JWTRoles.EditСоздать или обновить разрешения роли
DELETE/:idJWTRoles.EditУдалить разрешение роли

Разрешения

Базовый путь: /membership/permissions

МетодПутьАут.РазрешениеОписание
GET/JWTПолучить полный список доступных разрешений

Формы

Базовый путь: /membership/forms

МетодПутьАут.РазрешениеОписание
GET/JWTForms.Admin или Forms.EditСписок всех форм (администратор видит все; редакторы видят назначенные + формы не членов)
GET/:idJWTДоступ к формеПолучить форму по ID
GET/archivedJWTForms.Admin или Forms.EditСписок архивированных форм
GET/standalone/:id?churchId=JWTПолучить отдельную форму (ограниченные формы требуют аутентификации)
POST/JWTForms.Admin или Forms.EditСоздать или обновить формы
DELETE/:idJWTДоступ к формеУдалить форму

Отправки форм

Базовый путь: /membership/formsubmissions

МетодПутьАут.РазрешениеОписание
GET/JWTForms.Admin или Forms.EditСписок отправок. Фильтр по ?personId= или ?formId=
GET/:idJWTForms.Admin или Forms.EditПолучить отправку по ID. Добавьте ?include=form,questions,answers
GET/formId/:formIdJWTДоступ к формеПолучить все отправки для формы (включает форму, вопросы, ответы)
POST/JWTОтправить ответы формы (обрабатывает ограниченные/неограниченные формы, отправляет уведомления по email). Когда форма имеет autoCreatePerson, находит-или-создаёт гостя по email и связывает отправку; когда установлены followUpSubject/followUpBody, отправляет шаблонное письмо с ответом отправителю
DELETE/:idJWTForms.Admin или Forms.EditУдалить отправку и её ответы

Вопросы

Базовый путь: /membership/questions

МетодПутьАут.РазрешениеОписание
GET/JWTДоступ к формеСписок вопросов для формы. Требует ?formId=
GET/:idJWTДоступ к формеПолучить вопрос по ID
GET/unrestricted?formId=JWTПолучить вопросы для неограниченной формы
GET/sort/:id/upJWTПереместить вопрос вверх в порядке сортировки
GET/sort/:id/downJWTПереместить вопрос вниз в порядке сортировки
POST/JWTДоступ к формеСоздать или обновить вопросы (автоматически присваивает порядок сортировки)
DELETE/:id?formId=JWTДоступ к формеУдалить вопрос

Ответы

Базовый путь: /membership/answers

МетодПутьАут.РазрешениеОписание
GET/JWTForms.Admin или Forms.EditСписок ответов. Фильтр по ?formSubmissionId=
POST/JWTForms.Admin или Forms.EditСоздать или обновить ответы

Разрешения членов

Базовый путь: /membership/memberpermissions

Контролирует доступ отдельных членов к конкретным формам.

МетодПутьАут.РазрешениеОписание
GET/:idJWTДоступ к формеПолучить разрешение члена по ID
GET/member/:idJWTДоступ к формеПолучить все разрешения формы для члена
GET/form/:idJWTДоступ к формеПолучить все разрешения членов для формы
GET/form/:id/myJWTДоступ к формеПолучить разрешение текущего пользователя для формы
POST/JWTДоступ к формеСоздать или обновить разрешения членов
DELETE/:id?formId=JWTДоступ к формеУдалить разрешение члена
DELETE/member/:id?formId=JWTДоступ к формеУдалить все разрешения для члена на форме

Параметры

Базовый путь: /membership/settings

МетодПутьАут.РазрешениеОписание
GET/JWTSettings.EditПолучить все параметры для церкви
GET/public/:churchIdPublicПолучить открытые параметры для церкви
POST/JWTSettings.EditСохранить параметры (поддерживает загрузку изображения base64)

Домены

Базовый путь: /membership/domains

Расширяет стандартный CRUD (GET /:id, GET /, DELETE /:id из базового класса).

МетодПутьАут.РазрешениеОписание
GET/JWTСписок всех доменов
GET/:idJWTПолучить домен по ID
GET/lookup/:domainNameJWTПоиск домена по названию
GET/public/lookup/:domainNamePublicОткрытый поиск домена по названию
GET/health/checkPublicЗапустить проверку здоровья на непроверенных доменах
POST/JWTSettings.EditСоздать или обновить домены (инициирует обновление Caddy)
DELETE/:idJWTSettings.EditУдалить домен

Пользователь-церковь

Базовый путь: /membership/userchurch

Управляет ассоциацией между пользователями и церквями.

МетодПутьАут.РазрешениеОписание
GET/userid/:userIdJWTПолучить запись пользователя-церкви по ID пользователя
GET/personid/:personIdJWTПолучить email для связанного пользователя человека
GET/user/:userIdJWTServer.AdminЗагрузить все церкви для пользователя
POST/JWTСоздать ассоциацию пользователя-церкви
PATCH/:userIdJWTОбновить время последнего доступа и залогировать доступ
DELETE/record/:userId/:churchId/:personIdJWTУдалить запись пользователя-церкви

Предпочтения видимости

Базовый путь: /membership/visibilityPreferences

МетодПутьАут.РазрешениеОписание
GET/myJWTПолучить предпочтения видимости текущего пользователя
POST/JWTСохранить предпочтения видимости (видимость адреса, телефона, email)

Запрос

Базовый путь: /membership/query

МетодПутьАут.РазрешениеОписание
POST/membersJWTПоиск членов на естественном языке с использованием AI. Тело: { text, subDomain, siteUrl }

Ошибки клиента

Базовый путь: /membership/clientErrors

МетодПутьАут.РазрешениеОписание
POST/JWTЗалогировать ошибку на стороне клиента

Связанные страницы