Bem-vindo à Omnigrejas API
Sistema completo de gestão de Igrejas(Saas) com novos recursos de email
A Omnigrejas API é uma solução completa para gestão de igrejas, oferecendo funcionalidades abrangentes para administração de membros, eventos, finanças, comunicação, alianças entre igrejas, agendamentos independentes, cartões de membro, sistema de seguir usuários, gamificação automática e upload de mídia para posts.
Base URL
https://api.omnigrejas.com/api/v1
Autenticação
Bearer Token via Sanctum
📱 App Mobile Flutter
Documentação completa para desenvolvimento do aplicativo mobile
🆕 Novos Recursos de Email
Sistema completo de comunicação por email
NOVOEmail de Boas-Vindas
Enviado automaticamente após registro bem-sucedido
- • 🎨 Template personalizado
- • 🌍 Conteúdo em português
- • 📱 Design responsivo
- • 🚀 Link direto para login
Sistema de Reset de Senha
Recuperação segura de senha via email
- • 🔐 Tokens seguros (SHA-256)
- • ⏰ Expiração automática (60 min)
- • 📊 Rate limiting inteligente
- • 🚫 Revogação de sessões antigas
📋 Endpoints Implementados:
POST /v1/auth/forgot-password
Solicitar reset
POST /v1/auth/reset-password
Executar reset
Autenticação
Níveis de Acesso(inicias minúsculas):
Endpoints para autenticação de usuários, registro, login, gerenciamento de tokens e recuperação de senha.
Registrar Usuário
/v1/auth/register
Cria uma nova conta de usuário no sistema.
Parâmetros:
- • name: Nome completo do usuário
- • email: E-mail único
- • password: Senha (mín. 8 caracteres)
- • password_confirmation: Senha (o mesmo password)
Usuários & Igrejas
Gerenciamento de usuários do sistema e cadastro de igrejas.
/v1/users/{id}
Visualiza dados do próprio perfil
/v1/users/{id}
Atualiza dados do próprio perfil
/v1/users
Lista todos os usuários (Admin)
/v1/users
Cria novo usuário (Admin)
/v1/users/{id}
Remove usuário (Admin)
/v1/users/photo/{userId}
Acessar foto de perfil de um usuário
/v1/upload-image
Upload de imagens para Supabase Storage
Membros & Ministérios
Gestão completa de membros da igreja e organização de ministérios.
/v1/igreja-membros
/v1/igrejas/{igreja_id}/membros
/v1/igreja-membros/{id}
/v1/igreja-membros
/v1/igreja-membros/{id}
/v1/igreja-membros/{id}
Financeiro
Controle financeiro completo com categorias, movimentações e auditoria.
/v1/financeiro-categorias
/v1/financeiro-categorias
/v1/financeiro-categorias/{id}
/v1/financeiro-categorias/{id}
Eventos & Escalas
Gestão de eventos da igreja, escalas de serviço e cultos padrão.
/v1/eventos
Lista todos os eventos
/v1/eventos/{id}
Visualiza detalhes do evento
/v1/eventos
Cria novo evento
/v1/eventos/{id}
Atualiza dados do evento
/v1/eventos/{id}
Remove evento do sistema
Cursos & Discipulado
Sistema de ensino e discipulado com cursos, conteúdos e acompanhamento de progresso.
/v1/cursos
/v1/cursos
/v1/cursos/{id}
/v1/cursos/{id}
Relatórios & Recursos
Sistema de relatórios e gestão de recursos da igreja.
/v1/relatorios-cache
/v1/relatorios-cache
/v1/relatorios-cache/{id}
/v1/relatorios-cache/{id}
Doações & Voluntários
Sistema de doações online e gestão de trabalho voluntário na igreja.
/v1/doacoes-online
/v1/doacoes-online
/v1/doacoes-online/{id}
/v1/doacoes-online/{id}
Atendimento & Oração
Sistema de atendimento pastoral e gestão de pedidos de oração.
/v1/atendimentos-pastorais
/v1/atendimentos-pastorais
/v1/atendimentos-pastorais/{id}
/v1/atendimentos-pastorais/{id}
/v1/atendimentos-pastorais/{id}
Sistema de Seguir
Sistema completo de conexões sociais entre usuários, permitindo seguir outros membros, receber notificações sobre suas atividades e visualizar um feed personalizado.
Seguir Usuário
/v1/user-follows
Permite seguir outro usuário da plataforma.
Parâmetros:
- • followed_id: ID do usuário a ser seguido
Deixar de Seguir
/v1/user-follows/{followedId}
Remove o vínculo de seguir com um usuário.
Parâmetros da URL:
- • {followedId}: ID do usuário que estava sendo seguido
Verificar Status
/v1/user-follows/check/{userId}
Verifica se está seguindo um usuário específico.
Response:
{
"dados": {
"user_id": "uuid",
"esta_seguindo": true,
"seguidores_count": 15,
"seguindo_count": 8
}
}
Sugestões
/v1/user-follows/suggestions
Sugere usuários para seguir baseado em conexões.
Chats & Mensagens
Sistema completo de comunicação interna com chats de igreja, mensagens privadas e notificações.
Listar Alianças Disponíveis
/v1/alianca-community
Lista alianças disponíveis para o usuário (líderes ou comunidade).
Parâmetros de Query:
- • tipo: 'lideres' ou 'comunidade' (opcional)
- GET v1/alianca-community/?tipo=lideres
Enviar Mensagem
/v1/alianca-community
Envia mensagem para aliança de líderes ou comunidade.
Parâmetros:
- • alianca_id: ID da aliança
- • tipo: 'lideres' ou 'comunidade'
- • mensagem: Conteúdo da mensagem
- • anexos: Array de anexos (opcional)
Ver Mensagens da Aliança
/v1/alianca-community/{aliancaId}
Visualiza mensagens de uma aliança específica.
Parâmetros de Query:
- • tipo: 'lideres' ou 'comunidade'
- • page: Página para paginação
Eliminar Mensagem
/v1/alianca-community/{mensagemId}
Remove mensagem da aliança (autor ou admin).
Permissões:
- • ✅ Autor da mensagem pode eliminar
- • ✅ Administradores podem eliminar qualquer mensagem
- • 🔄 Anexos são automaticamente removidos do Supabase
🆕 Funcionalidades da Comunidade de Alianças
Participação Aberta
Membros da comunidade podem participar das alianças sem serem líderes oficiais.
Mensagens Separadas
Mensagens de líderes e comunidade são armazenadas em tabelas distintas.
Marcação Automática
Mensagens são automaticamente marcadas como lidas ao serem visualizadas.
Suporte a Anexos
Permite anexar arquivos às mensagens com armazenamento no Supabase.
📋 Simulações de JSON
Listar Alianças Disponíveis
GET /v1/alianca-community?tipo=lideres
Response (200 OK):
{
"dados": {
"lideres": [
{
"id": "uuid-alianca-1",
"nome": "Aliança Evangélica Nacional",
"sigla": "AEN",
"descricao": "Aliança nacional de igrejas evangélicas",
"tipo": "lideres",
"categoria": "Evangélica",
"status": "ativo",
"min_aderentes": 5,
"aderentes_count": 12,
"created_at": "2025-01-15T10:00:00Z",
"igrejas": [
{
"id": 1,
"nome": "Igreja Batista Central",
"sigla": "IBC",
"logo_url": "https://supabase.com/storage/igrejas/logo1.jpg"
}
]
}
],
"comunidade": [
{
"id": "uuid-alianca-2",
"nome": "Comunidade Jovens em Cristo",
"sigla": "CJC",
"descricao": "Comunidade de jovens das igrejas locais",
"tipo": "comunidade",
"categoria": "Juventude",
"status": "ativo",
"min_aderentes": 10,
"aderentes_count": 25,
"created_at": "2025-02-01T14:30:00Z",
"igrejas": [
{
"id": 1,
"nome": "Igreja Batista Central",
"sigla": "IBC",
"logo_url": "https://supabase.com/storage/igrejas/logo1.jpg"
},
{
"id": 2,
"nome": "Primeira Igreja Presbiteriana",
"sigla": "PIP",
"logo_url": "https://supabase.com/storage/igrejas/logo2.jpg"
}
]
}
]
}
}
Ver Mensagens da Aliança
GET /v1/alianca-community/{aliancaId}?tipo=comunidade
Response (200 OK):
{
"dados": {
"alianca_id": "uuid-alianca-2",
"tipo": "comunidade",
"mensagens": {
"current_page": 1,
"data": [
{
"id": "uuid-msg-1",
"uuid": "uuid-msg-1",
"alianca_id": "uuid-alianca-2",
"remetente_id": "uuid-membro-1",
"tipo_mensagem": "texto",
"mensagem": "Olá comunidade! Vamos nos reunir amanhã para o estudo bíblico.",
"anexos": null,
"lida_em": "2025-01-20T16:45:00Z",
"created_at": "2025-01-20T15:30:00Z",
"updated_at": "2025-01-20T15:30:00Z",
"remetente": {
"id": "uuid-membro-1",
"user": {
"id": "uuid-user-1",
"name": "João Silva",
"email": "joao@email.com",
"photo_url": "https://supabase.com/storage/users/photo1.jpg"
}
}
},
{
"id": "uuid-msg-2",
"uuid": "uuid-msg-2",
"alianca_id": "uuid-alianca-2",
"remetente_id": "uuid-membro-2",
"tipo_mensagem": "imagem",
"mensagem": "Foto do encontro de ontem!",
"anexos": [
{
"nome_original": "encontro_jovens.jpg",
"caminho": "aliancas/uuid-alianca-2/imagens/encontro_jovens.jpg",
"tipo": "image",
"tamanho": 2048576,
"mime_type": "image/jpeg",
"url": "https://supabase.com/storage/aliancas/uuid-alianca-2/imagens/encontro_jovens.jpg"
}
],
"lida_em": null,
"created_at": "2025-01-20T18:15:00Z",
"updated_at": "2025-01-20T18:15:00Z",
"remetente": {
"id": "uuid-membro-2",
"user": {
"id": "uuid-user-2",
"name": "Maria Santos",
"email": "maria@email.com",
"photo_url": "https://supabase.com/storage/users/photo2.jpg"
}
}
}
],
"first_page_url": "http://api.omnigrejas.com/v1/alianca-community/uuid-alianca-2?page=1",
"from": 1,
"last_page": 1,
"last_page_url": "http://api.omnigrejas.com/v1/alianca-community/uuid-alianca-2?page=1",
"next_page_url": null,
"path": "http://api.omnigrejas.com/v1/alianca-community/uuid-alianca-2",
"per_page": 50,
"prev_page_url": null,
"to": 2,
"total": 2
}
}
}
Enviar Mensagem
POST /v1/alianca-community
Request Body:
{
"alianca_id": "uuid-alianca-2",
"tipo": "comunidade",
"mensagem": "Vamos orar juntos pela nossa comunidade!",
"anexos": [
{
"name": "oracao.pdf",
"type": "application/pdf",
"size": 1024000
}
]
}
Response (201 Created):
{
"message": "Mensagem enviada com sucesso",
"dados": {
"alianca_id": "uuid-alianca-2",
"tipo": "comunidade",
"mensagem": "Vamos orar juntos pela nossa comunidade!",
"enviada_em": "2025-01-21T09:30:00Z"
}
}
Eliminar Mensagem
DELETE /v1/alianca-community/{mensagemId}?tipo=comunidade
Response (200 OK):
{
"message": "Mensagem eliminada com sucesso",
"dados": {
"alianca_id": "uuid-alianca-2",
"mensagem_id": "uuid-msg-1",
"tipo": "comunidade",
"eliminada_em": "2025-01-21T10:15:00Z"
}
}
Permissões:
- • ✅ Autor da mensagem pode eliminar
- • ✅ Administradores podem eliminar qualquer mensagem
- • 🔄 Anexos são automaticamente removidos do Supabase
Gamificação
Sistema de pontuação e conquistas para incentivar o engajamento dos membros.
/v1/engajamento-pontos
/v1/engajamento-pontos
/v1/engajamento-pontos/{id}
/v1/engajamento-pontos/{id}
Marketplace
Sistema de marketplace para produtos e serviços da comunidade de Igrejas(Saas).
/v1/marketplace-produtos
/v1/marketplace-produtos
/v1/marketplace-produtos/{id}
/v1/marketplace-produtos/{id}
/v1/marketplace-produtos/{id}
Alianças de Igrejas
Sistema de alianças e federações entre igrejas, com controle de participação e mensagens compartilhadas.
/v1/categorias-igrejas
/v1/categorias-igrejas
Agendamentos
Sistema de agendamentos independentes para reuniões, consultas e acompanhamentos.
/v1/agendamentos
/v1/agendamentos
/v1/agendamentos/{id}
/v1/agendamentos/{id}
Cartões de Membro
Sistema completo de emissão e controle de cartões de membro da igreja.
/v1/cartao-membro
/v1/cartao-membro
Assinaturas (SaaS)
Sistema de assinaturas e billing para o modelo SaaS da plataforma.
/v1/modulos
/v1/pacotes
/v1/pacote-permissoes
Social
Funcionalidades sociais da plataforma: posts, reações e comentários.
/v1/postsVisitantes podem ver posts
/v1/posts/{id}Visitantes podem ver detalhes
/v1/postsRequer autenticação
/v1/posts/{id}Requer autenticação
/v1/posts/{id}Requer autenticação
/v1/posts/{postId}/reactions/v1/posts/{postId}/reactions/v1/posts/{postId}/reactions/{reactionId}/v1/comentarios/v1/comentarios/v1/comentarios/{id}/v1/comentarios/{id}