Referência Completa da API REST (Edge Functions)
Referência de Endpoints HTTP (/api/*)
Section titled “Referência de Endpoints HTTP (/api/*)”O backend do Prime Crown roda em Cloudflare Pages Functions (Workers) estruturado no framework Hono.
🔐 1. Autenticação & Identidade (/api/auth/*)
Section titled “🔐 1. Autenticação & Identidade (/api/auth/*)”| Endpoint | Método | Descrição | Roles Permitidas |
|---|---|---|---|
/api/auth/login |
POST |
Autenticação por e-mail/E.164 + senha. Emite JWT token. | Público |
/api/auth/logout |
POST |
Invalida o refresh token e limpa os cookies da sessão. | Autenticado |
/api/auth/me |
GET |
Retorna o perfil do usuário logado e contexto de impersonação. | Autenticado |
/api/auth/impersonate |
POST |
Permite que Admins entrem temporariamente na visão de um Cliente ou Staff. | ADMIN, MANAGER |
/api/auth/google |
POST |
Autenticação via Google OAuth2. | Público |
⚡ 2. Endpoints Atômicos de Mutação (/api/atomic/*)
Section titled “⚡ 2. Endpoints Atômicos de Mutação (/api/atomic/*)”Cada alteração realizada no frontend gera uma chamada REST atômica para sincronizar o banco D1 imediatamente.
requests.ts (Serviços e Agendamentos)
Section titled “requests.ts (Serviços e Agendamentos)”POST /api/atomic/requests: Cria um novo agendamento.PUT /api/atomic/requests/:id: Atualiza data, horário, notas ou checklist do serviço.POST /api/atomic/requests/:id/reschedule: Reagenda a limpeza recalculando buffers de trânsito.POST /api/atomic/requests/:id/cancel: Aplica a máquina de estado de cancelamento e taxas de política.
clients.ts (Gestão de Clientes)
Section titled “clients.ts (Gestão de Clientes)”POST /api/atomic/clients: Cadastra um novo cliente com endereços em snapshot JSON.PUT /api/atomic/clients/:id: Atualiza dados cadastrais, preferências de pagamento e WhatsApp opt-in.
employees.ts (Gestão da Equipe)
Section titled “employees.ts (Gestão da Equipe)”POST /api/atomic/employees: Cadastra integrante da equipe, definindo taxa/hora e raio de atuação.PUT /api/atomic/employees/:id/availability: Atualiza a grade de disponibilidade semanal.
invoices.ts (Faturamento)
Section titled “invoices.ts (Faturamento)”POST /api/atomic/invoices: Emite uma nova fatura com base na execução do serviço.POST /api/atomic/invoices/:id/pay: Registra o pagamento manual ou via integração bancária.
🎯 3. Captura de Leads & Quote Público (/api/leads/*)
Section titled “🎯 3. Captura de Leads & Quote Público (/api/leads/*)”| Endpoint | Método | Payload Principal | Função |
|---|---|---|---|
/api/leads/quote-request |
POST |
rooms, bathrooms, squareMeters, frequency, contact |
Registra a cotação e salva o lead como NEW. |
/api/leads/chat-initiate |
POST |
leadId, initialMessage |
Abre o canal de suporte interno e notifica o WhatsApp. |
💬 4. Integração WhatsApp & Webhooks (/api/whatsapp/*)
Section titled “💬 4. Integração WhatsApp & Webhooks (/api/whatsapp/*)”POST /api/whatsapp/evolution-webhook: Endpoint que recebe eventos da Evolution API (mensagens recebidas, confirmações de leitura, status da instância).POST /api/whatsapp/process-queue: Processador da fila de envios respeitando os limites da política anti-ban.