Pular para o conteúdo principal

Endpoints de Membros

O módulo de Membros gerencia pessoas, igrejas, grupos, famílias, funções, permissões, formulários e configurações. É o maior módulo e fornece a camada de identidade e autorização principal para todos os outros módulos.

Caminho base: /membership

Pessoas​

Caminho base: /membership/people

MétodoCaminhoAuthPermissãoDescrição
GET/JWTPeople.View ou MemberListar todas as pessoas da igreja
GET/:idJWTPeople.View ou registro próprioObter uma pessoa por ID (inclui envios de formulário)
GET/ids?ids=JWTPeople.View ou MemberObter múltiplas pessoas por IDs separados por vírgula
GET/basic?ids=JWT—Obter informações básicas (apenas nome) para múltiplas pessoas
GET/recentJWTPeople.View ou MemberPessoas adicionadas recentemente
GET/search?term=&email=JWTPeople.View ou MemberProcurar pessoas por nome ou email
GET/search/phone?number=JWTPeople.View ou MemberProcurar por número de telefone
GET/search/group?groupId=JWTPeople.View ou MemberObter pessoas em um grupo específico
GET/household/:householdIdJWT—Obter todas as pessoas em uma família
GET/attendanceJWTPeople.EditCarregar participantes com filtros (campusId, serviceId, serviceTimeId, groupId, categoryName, startDate, endDate)
GET/timeline?personIds=&groupIds=JWT—Carregar dados de linha do tempo para pessoas e grupos
GET/directory/:idJWT—Obter pessoa para visualização de diretório (respeita preferências de visibilidade)
GET/claim/:churchIdJWT—Reivindicar um registro de pessoa para o usuário atual em uma igreja
POST/JWTPeople.Edit ou EditSelfCriar ou atualizar pessoas (lote)
POST/searchJWTPeople.View ou MemberProcurar pessoas (variante POST)
POST/advancedSearchJWTPeople.View ou MemberBusca multi-condição (idade, mês de nascimento, status de membros, etc.)
POST/loadOrCreatePublic—Encontrar ou criar uma pessoa por email. Corpo: { churchId, email, firstName, lastName }
POST/household/:householdIdJWTPeople.EditAtualizar atribuições de membros da família
POST/public/emailPublic—Enviar um email para uma pessoa. Corpo: { churchId, personId, subject, body, appName }
POST/apiEmailsInternal—Carregar emails de pessoa por IDs (servidor para servidor, requer jwtSecret)
DELETE/:idJWTPeople.EditDeletar uma pessoa

Exemplo: Procurar Pessoas​

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

Exemplo: Criar uma Pessoa​

POST /membership/people
Authorization: Bearer <token>

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

Usuários​

Caminho base: /membership/users

Veja Autenticação e Permissões para endpoints de login, registro e gerenciamento de senha.

MétodoCaminhoAuthPermissãoDescrição
POST/loginPublic—Conectar (email/senha, atualização JWT ou authGuid)
POST/registerPublic—Registrar um novo usuário
POST/forgotPublic—Enviar email de reconfiguração de senha
POST/setPasswordGuidPublic—Definir senha usando GUID de auth do link de email
POST/verifyCredentialsPublic—Verificar email/senha e retornar igrejas associadas
POST/loadOrCreateJWT—Encontrar ou criar um usuário por email/userId
POST/setDisplayNameJWT—Atualizar nome e sobrenome do usuário
POST/updateEmailJWT—Alterar email do usuário
POST/updatePasswordJWT—Alterar senha do usuário (mín. 6 caracteres)
POST/updateOptedOutJWT—Definir status de opção de saída de uma pessoa
GET/search?term=JWTServer.AdminProcurar todos os usuários por nome/email
DELETE/JWT—Deletar a conta do usuário atual

Igrejas​

Caminho base: /membership/churches

MétodoCaminhoAuthPermissãoDescrição
GET/JWT—Carregar todas as igrejas para o usuário atual
GET/:idJWT—Obter igreja por ID
GET/:id/getDomainAdminJWT—Obter o usuário administrador de domínio para uma igreja
GET/:id/impersonateJWTServer.AdminRepresentar uma igreja (apenas admin de servidor)
GET/all?term=JWTServer.AdminProcurar todas as igrejas (admin)
GET/search/?name=Public—Procurar igrejas por nome
GET/lookup/?subDomain=&id=Public—Procurar uma igreja por subdomínio ou ID
POST/JWTSettings.EditAtualizar detalhes da igreja
POST/addJWT—Registrar uma nova igreja. Campos obrigatórios: name, address1, city, state, zip, country
POST/searchPublic—Procurar igrejas por nome (variante POST)
POST/selectJWT—Selecionar/mudar para uma igreja. Corpo: { churchId } ou { subDomain }
POST/:id/archiveJWTServer.AdminArquivar ou desarquivar uma igreja
POST/byIdsPublic—Carregar múltiplas igrejas por IDs
DELETE/deleteAbandonedJWTServer.AdminDeletar igrejas abandonadas por 7+ dias

Grupos​

Caminho base: /membership/groups

Estende CRUD padrão (GET /, GET /:id da classe base).

MétodoCaminhoAuthPermissãoDescrição
GET/JWT—Listar todos os grupos
GET/:idJWT—Obter grupo por ID
GET/search?campusId=&serviceId=&serviceTimeId=JWT—Procurar grupos por filtros de serviço
GET/myJWT—Obter grupos do usuário atual
GET/my/:tagJWT—Obter grupos do usuário atual filtrados por tag
GET/tag/:tagJWT—Obter todos os grupos com uma tag específica
GET/public/:churchId/:idPublic—Obter um grupo público por igreja e ID
GET/public/:churchId/tag/:tagPublic—Obter grupos públicos por tag
GET/public/:churchId/label?label=Public—Obter grupos públicos por rótulo
GET/public/:churchId/slug/:slugPublic—Obter um grupo público por slug
POST/JWTGroups.EditCriar ou atualizar grupos (gera automaticamente slug)
DELETE/:idJWTGroups.EditDeletar um grupo (também deleta equipes filhas para grupos de ministério)

Membros do Grupo​

Caminho base: /membership/groupmembers

Estende CRUD padrão (GET /:id, DELETE /:id da classe base).

MétodoCaminhoAuthPermissãoDescrição
GET/:idJWTGroupMembers.ViewObter membro do grupo por ID
GET/JWTGroupMembers.View*Listar membros do grupo. Filtrar por ?groupId=, ?groupIds= ou ?personId=. *Também permitido se o usuário estiver no grupo ou consultando personId próprio
GET/myJWT—Obter membros de grupo do usuário atual
GET/basic/:groupIdJWT—Obter lista de membros básica para um grupo
GET/public/leaders/:churchId/:groupIdPublic—Obter líderes do grupo (público)
GET/public/:churchId/:groupIdPublic—Obter a lista pública de um grupo (campos mínimos: personId, displayName, leader, foto). Apenas quando o grupo escolhe via publicRoster; alimenta o elemento staffGrid do construtor de sites
POST/JWTGroupMembers.EditAdicionar ou atualizar membros do grupo
DELETE/:idJWTGroupMembers.ViewRemover um membro do grupo

Famílias​

Caminho base: /membership/households

Controlador CRUD padrão.

MétodoCaminhoAuthPermissãoDescrição
GET/JWT—Listar todas as famílias
GET/:idJWT—Obter família por ID
POST/JWTPeople.EditCriar ou atualizar famílias
DELETE/:idJWTPeople.EditDeletar uma família

Funções​

Caminho base: /membership/roles

MétodoCaminhoAuthPermissãoDescrição
GET/:idJWTRoles.ViewObter função por ID
GET/church/:churchIdJWTRoles.ViewObter todas as funções de uma igreja
POST/JWTRoles.EditCriar ou atualizar funções
DELETE/:idJWTRoles.EditDeletar uma função (também remove suas permissões e membros)

Membros da Função​

Caminho base: /membership/rolemembers

MétodoCaminhoAuthPermissãoDescrição
GET/roles/:idJWTRoles.ViewObter membros de uma função. Adicionar ?include=users para incluir detalhes de usuários
POST/JWTRoles.EditAdicionar membros a uma função (cria usuário se email não existir)
DELETE/:idJWTRoles.ViewRemover um membro da função
DELETE/self/:churchId/:userIdJWT—Remover a si mesmo de uma igreja

Permissões da Função​

Caminho base: /membership/rolepermissions

MétodoCaminhoAuthPermissãoDescrição
GET/roles/:idJWTRoles.ViewObter permissões de uma função (use null como ID para a função "Todos")
POST/JWTRoles.EditCriar ou atualizar permissões da função
DELETE/:idJWTRoles.EditDeletar uma permissão da função

Permissões​

Caminho base: /membership/permissions

MétodoCaminhoAuthPermissãoDescrição
GET/JWT—Obter a lista completa de permissões disponíveis

Formulários​

Caminho base: /membership/forms

MétodoCaminhoAuthPermissãoDescrição
GET/JWTForms.Admin ou Forms.EditListar todos os formulários (admin vê todos; editores veem atribuídos + formulários para não membros)
GET/:idJWTAcesso ao formulárioObter um formulário por ID
GET/archivedJWTForms.Admin ou Forms.EditListar formulários arquivados
GET/standalone/:id?churchId=JWT—Obter um formulário autônomo (formulários restritos requerem autenticação)
POST/JWTForms.Admin ou Forms.EditCriar ou atualizar formulários
DELETE/:idJWTAcesso ao formulárioDeletar um formulário

Envios de Formulário​

Caminho base: /membership/formsubmissions

MétodoCaminhoAuthPermissãoDescrição
GET/JWTForms.Admin ou Forms.EditListar envios. Filtrar por ?personId= ou ?formId=
GET/:idJWTForms.Admin ou Forms.EditObter envio por ID. Adicionar ?include=form,questions,answers
GET/formId/:formIdJWTAcesso ao formulárioObter todos os envios para um formulário (inclui formulário, perguntas, respostas)
POST/JWT—Enviar respostas de formulário (lida com formulários restritos/irrestritivos, envia notificações por email). Quando o formulário tem autoCreatePerson, encontra-ou-cria uma pessoa Guest por email e vincula o envio; quando followUpSubject/followUpBody estão definidos, envia um email de acompanhamento modelado para o enviador
DELETE/:idJWTForms.Admin ou Forms.EditDeletar um envio e suas respostas

Perguntas​

Caminho base: /membership/questions

MétodoCaminhoAuthPermissãoDescrição
GET/JWTAcesso ao formulárioListar perguntas de um formulário. Requer ?formId=
GET/:idJWTAcesso ao formulárioObter uma pergunta por ID
GET/unrestricted?formId=JWT—Obter perguntas de um formulário irrestritivo
GET/sort/:id/upJWT—Mover uma pergunta para cima na ordem de classificação
GET/sort/:id/downJWT—Mover uma pergunta para baixo na ordem de classificação
POST/JWTAcesso ao formulárioCriar ou atualizar perguntas (atribui automaticamente ordem de classificação)
DELETE/:id?formId=JWTAcesso ao formulárioDeletar uma pergunta

Respostas​

Caminho base: /membership/answers

MétodoCaminhoAuthPermissãoDescrição
GET/JWTForms.Admin ou Forms.EditListar respostas. Filtrar por ?formSubmissionId=
POST/JWTForms.Admin ou Forms.EditCriar ou atualizar respostas

Permissões de Membro​

Caminho base: /membership/memberpermissions

Controla acesso por membro a formulários específicos.

MétodoCaminhoAuthPermissãoDescrição
GET/:idJWTAcesso ao formulárioObter uma permissão de membro por ID
GET/member/:idJWTAcesso ao formulárioObter todas as permissões de formulário para um membro
GET/form/:idJWTAcesso ao formulárioObter todas as permissões de membro para um formulário
GET/form/:id/myJWTAcesso ao formulárioObter permissão do usuário atual para um formulário
POST/JWTAcesso ao formulárioCriar ou atualizar permissões de membro
DELETE/:id?formId=JWTAcesso ao formulárioDeletar uma permissão de membro
DELETE/member/:id?formId=JWTAcesso ao formulárioDeletar todas as permissões de um membro em um formulário

Configurações​

Caminho base: /membership/settings

MétodoCaminhoAuthPermissãoDescrição
GET/JWTSettings.EditObter todas as configurações da igreja
GET/public/:churchIdPublic—Obter configurações públicas para uma igreja
POST/JWTSettings.EditSalvar configurações (suporta upload de imagem em base64)

Domínios​

Caminho base: /membership/domains

Estende CRUD padrão (GET /:id, GET /, DELETE /:id da classe base).

MétodoCaminhoAuthPermissãoDescrição
GET/JWT—Listar todos os domínios
GET/:idJWT—Obter domínio por ID
GET/lookup/:domainNameJWT—Procurar um domínio por nome
GET/public/lookup/:domainNamePublic—Busca de domínio público por nome
GET/health/checkPublic—Executar verificação de saúde em domínios não verificados
POST/JWTSettings.EditCriar ou atualizar domínios (dispara atualização Caddy)
DELETE/:idJWTSettings.EditDeletar um domínio

Igreja do Usuário​

Caminho base: /membership/userchurch

Gerencia a associação entre usuários e igrejas.

MétodoCaminhoAuthPermissãoDescrição
GET/userid/:userIdJWT—Obter registro de usuário-igreja por ID de usuário
GET/personid/:personIdJWT—Obter email para um usuário vinculado de uma pessoa
GET/user/:userIdJWTServer.AdminCarregar todas as igrejas de um usuário
POST/JWT—Criar uma associação de usuário-igreja
PATCH/:userIdJWT—Atualizar hora do último acesso e registrar acesso
DELETE/record/:userId/:churchId/:personIdJWT—Deletar um registro de usuário-igreja

Preferências de Visibilidade​

Caminho base: /membership/visibilityPreferences

MétodoCaminhoAuthPermissãoDescrição
GET/myJWT—Obter preferências de visibilidade do usuário atual
POST/JWT—Salvar preferências de visibilidade (visibilidade de endereço, telefone, email)

Consulta​

Caminho base: /membership/query

MétodoCaminhoAuthPermissãoDescrição
POST/membersJWT—Busca de membro em linguagem natural usando IA. Corpo: { text, subDomain, siteUrl }

Erros do Cliente​

Caminho base: /membership/clientErrors

MétodoCaminhoAuthPermissãoDescrição
POST/JWT—Registrar um erro do lado do cliente

Páginas Relacionadas​