# RiseUP ## API Docs - Autenticação [Login com email e senha](https://do5wegrct3.apidog.io/login-com-email-e-senha-23104941e0.md): Autentica usuário e retorna JWT - Autenticação [Enviar Magic Link](https://do5wegrct3.apidog.io/enviar-magic-link-23104942e0.md): Envia link de autenticação sem senha por email - Autenticação [Logout](https://do5wegrct3.apidog.io/logout-23104943e0.md): Encerra sessão do usuário - Autenticação [Dados do usuário autenticado](https://do5wegrct3.apidog.io/dados-do-usu%C3%A1rio-autenticado-23104944e0.md): Retorna informações do usuário logado - Usuários [Criar novo usuário (com Magic Link)](https://do5wegrct3.apidog.io/criar-novo-usu%C3%A1rio-com-magic-link-34388571e0.md): Cria um novo usuário no sistema e envia Magic Link de confirmação por email. **Permissões**: admin, gestor ou secretaria. - Usuários [Solicitar reset de senha via email (público)](https://do5wegrct3.apidog.io/solicitar-reset-de-senha-via-email-p%C3%BAblico-23209845e0.md): Envia email de reset de senha para o usuário. **Endpoint público** para integração com sistemas externos (não requer Bearer token; o header `apikey` ainda é necessário). - Usuários [Criar usuário com email e senha](https://do5wegrct3.apidog.io/criar-usu%C3%A1rio-com-email-e-senha-23209162e0.md): Cria um novo usuário com autenticação via email e senha (alternativa ao Magic Link). O usuário precisa confirmar o email antes de fazer login. **Permissões**: admin, gestor ou secretaria. - Usuários [Criar usuário com role](https://do5wegrct3.apidog.io/criar-usu%C3%A1rio-com-role-23104945e0.md): Cria usuário completo com profile, role e envio de magic link - Usuários [Informações do usuário autenticado](https://do5wegrct3.apidog.io/informa%C3%A7%C3%B5es-do-usu%C3%A1rio-autenticado-23104946e0.md): Retorna dados completos do usuário, profile e roles - Usuários [Criar usuário com email e senha](https://do5wegrct3.apidog.io/criar-usu%C3%A1rio-com-email-e-senha-34388572e0.md): Cria um novo usuário com autenticação via email/senha (alternativa ao Magic Link). O email é **auto-confirmado** (`email_confirm: true`), permitindo login imediato. **Permissões**: admin, gestor ou secretaria. - Usuários [Informações do usuário autenticado](https://do5wegrct3.apidog.io/informa%C3%A7%C3%B5es-do-usu%C3%A1rio-autenticado-34388573e0.md): Retorna dados consolidados do usuário logado: Auth, perfil, roles, permissões e (quando aplicável) doctor/patient vinculado. - Usuários [Informações de usuário por ID](https://do5wegrct3.apidog.io/informa%C3%A7%C3%B5es-de-usu%C3%A1rio-por-id-23104947e0.md): Retorna dados de usuário específico (apenas admin/gestor) - Usuários [Informações de usuário por ID](https://do5wegrct3.apidog.io/informa%C3%A7%C3%B5es-de-usu%C3%A1rio-por-id-34388574e0.md): Retorna dados de um usuário específico. **Permissões**: admin ou gestor. - Usuários [Deletar usuário permanentemente (Hard Delete) 🔴](https://do5wegrct3.apidog.io/deletar-usu%C3%A1rio-permanentemente-hard-delete-23207041e0.md): **⚠️ ATENÇÃO**: Operação IRREVERSÍVEL que deleta permanentemente o usuário do `auth.users` e TODOS os dados relacionados via cascata (ON DELETE CASCADE). - SMS [Enviar SMS via Twilio](https://do5wegrct3.apidog.io/enviar-sms-via-twilio-23104951e0.md): Envia SMS usando Twilio (requer configuração de secrets) - Pacientes [Listar pacientes](https://do5wegrct3.apidog.io/listar-pacientes-23104952e0.md): Lista pacientes com filtros e paginação - Pacientes [Criar paciente (direto)](https://do5wegrct3.apidog.io/criar-paciente-direto-23104953e0.md): Cria paciente diretamente na tabela (sem validações da Edge Function) - Pacientes [Atualizar paciente](https://do5wegrct3.apidog.io/atualizar-paciente-23104954e0.md): - Pacientes [Deletar paciente](https://do5wegrct3.apidog.io/deletar-paciente-23104955e0.md): - Pacientes [Criar paciente com validações](https://do5wegrct3.apidog.io/criar-paciente-com-valida%C3%A7%C3%B5es-23104949e0.md): Cria paciente com validação de CPF - Pacientes [Auto-cadastro de paciente (Público)](https://do5wegrct3.apidog.io/auto-cadastro-de-paciente-p%C3%BAblico-23129821e0.md): Endpoint público para auto-cadastro de pacientes sem autenticação. Inclui validação completa de CPF (dígitos verificadores), rate limiting (5 tentativas/hora por IP) e envio automático de magic link por email. - Pacientes [Criar novo paciente](https://do5wegrct3.apidog.io/criar-novo-paciente-34388576e0.md): Cria um paciente completo com validação de CPF. **Permissões**: admin, gestor ou secretaria. - Pacientes [Auto-cadastro público de paciente](https://do5wegrct3.apidog.io/auto-cadastro-p%C3%BAblico-de-paciente-34388577e0.md): Endpoint **público** (não requer Bearer token) para auto-cadastro de pacientes a partir de aplicações externas. Cria o usuário no Auth, atribui role `paciente` e cria registro em `patients`. - Médicos [Listar médicos](https://do5wegrct3.apidog.io/listar-m%C3%A9dicos-23104956e0.md): - Médicos [Criar médico com validações](https://do5wegrct3.apidog.io/criar-m%C3%A9dico-com-valida%C3%A7%C3%B5es-23104948e0.md): Cria médico com validação de CPF, CRM e UF - Médicos [Criar novo médico](https://do5wegrct3.apidog.io/criar-novo-m%C3%A9dico-34388575e0.md): Cria um médico completo com validações de CPF, CRM e UF. **Permissões**: admin ou gestor. - Agendamentos [Listar agendamentos](https://do5wegrct3.apidog.io/listar-agendamentos-23104957e0.md): - Agendamentos [Criar agendamento](https://do5wegrct3.apidog.io/criar-agendamento-23104958e0.md): - Agendamentos [Calcular slots disponíveis](https://do5wegrct3.apidog.io/calcular-slots-dispon%C3%ADveis-23104950e0.md): Calcula horários disponíveis para agendamento considerando disponibilidade, exceções e antecedência mínima - Agendamentos [Buscar slots disponíveis](https://do5wegrct3.apidog.io/buscar-slots-dispon%C3%ADveis-34388578e0.md): Calcula slots de agendamento disponíveis em um intervalo de datas, considerando disponibilidade do médico, exceções e agendamentos já existentes. - Agendamentos [Atualizar disponibilidade](https://do5wegrct3.apidog.io/atualizar-disponibilidade-23513246e0.md): Atualiza uma disponibilidade existente. - Agendamentos [Deletar disponibilidade](https://do5wegrct3.apidog.io/deletar-disponibilidade-23513247e0.md): Deleta uma disponibilidade existente. - Storage [Upload de avatar](https://do5wegrct3.apidog.io/upload-de-avatar-23104959e0.md): - Storage [Download de avatar](https://do5wegrct3.apidog.io/download-de-avatar-23104960e0.md): - Disponibilidade [Listar disponibilidades de médicos](https://do5wegrct3.apidog.io/listar-disponibilidades-de-m%C3%A9dicos-23129822e0.md): Busca disponibilidades via Supabase REST API com filtros opcionais. - Disponibilidade [Criar disponibilidade](https://do5wegrct3.apidog.io/criar-disponibilidade-23129823e0.md): Cria uma nova disponibilidade para um médico. - Disponibilidade [Listar exceções de agenda](https://do5wegrct3.apidog.io/listar-exce%C3%A7%C3%B5es-de-agenda-23129824e0.md): Retorna bloqueios ou disponibilidades extras em datas específicas (ex: férias, feriados, plantões) - Disponibilidade [Criar exceção de agenda](https://do5wegrct3.apidog.io/criar-exce%C3%A7%C3%A3o-de-agenda-23129825e0.md): Cria bloqueio ou disponibilidade extra em data específica. Use start_time/end_time=null para dia inteiro. - Reports [Listar relatórios médicos](https://do5wegrct3.apidog.io/listar-relat%C3%B3rios-m%C3%A9dicos-23131760e0.md): - Reports [Criar novo relatório médico](https://do5wegrct3.apidog.io/criar-novo-relat%C3%B3rio-m%C3%A9dico-23131761e0.md): - Reports [Atualizar relatório médico](https://do5wegrct3.apidog.io/atualizar-relat%C3%B3rio-m%C3%A9dico-23131762e0.md): - Comunicação [Enviar SMS via Twilio](https://do5wegrct3.apidog.io/enviar-sms-via-twilio-34388579e0.md): Envia SMS via Twilio e registra em `sms_logs`. ## Schemas - Schemas [Report](https://do5wegrct3.apidog.io/report-10321645d0.md): - Schemas [DoctorAvailability](https://do5wegrct3.apidog.io/doctoravailability-10522328d0.md): - Schemas [ReportInput](https://do5wegrct3.apidog.io/reportinput-10321646d0.md): - Schemas [DoctorAvailabilityRequest](https://do5wegrct3.apidog.io/doctoravailabilityrequest-10522329d0.md): - [Error](https://do5wegrct3.apidog.io/error-10312029d0.md): - [ProblemDetails](https://do5wegrct3.apidog.io/problemdetails-14606549d0.md): - [UserRoles](https://do5wegrct3.apidog.io/userroles-14606550d0.md):