Referencia completa de los endpoints serverless de Zentix: autenticación, CRM, agentes IA,
canales, pagos, webhooks entrantes y cron jobs. Base URL: https://app.zentixchatbot.cloud
120 endpoints Firebase ID token 17 cron jobs 8 webhooks Vercel Serverless
1 Autenticación
Todo endpoint privado usa tokens de Firebase Auth. El token se envía en el header Authorization.
Authorization: Bearer <FIREBASE_ID_TOKEN>
El cliente obtiene el token con currentUser.getIdToken() (Firebase Auth v8).
El backend lo verifica con verifyIdToken en api/_auth-middleware.js y extrae el uid → aislamiento por tenant.
Sin token o token inválido → 401 { "error": "..." }.
Las acciones de administrador requieren además un custom claim de admin más un lease de sesión (_admin-access-session.js).
Nota: los tokens del panel interno (Mission Control) son independientes de este flujo. Se emiten por perfil y viajan como Bearer <MC_TOKEN> + header X-Profile. No aplican a la API pública aquí documentada.
Canales históricos de WhatsApp Cloud: listado y desconexión; alta directa próximamente. Para nuevas conexiones usa Twilio WhatsApp.
/api/whatsapp-integration
GETPOST
Integración legada, ligada al tenant verificado
/api/twilio-whatsapp-setup
GETPOST
Credenciales de Twilio WhatsApp
/api/twilio-whatsapp-status
GET
Estado de la conexión de Twilio
/api/telegram-setup
GETPOST
Config del bot de Telegram (nunca devuelve el token)
/api/channel-health
GET
Salud de rutas por canal
10 Integraciones
Endpoint
Método
Descripción
/api/slack-integration
GETPOST
Conexión Slack (OAuth + configuración)
/api/n8n-integration
GETPOST
Conexión n8n (credenciales cifradas)
/api/firecrawl-import
GET
Import de Firecrawl por oleadas
11 SEO
Endpoint
Método
Descripción
/api/seo-workspace
GET
Datos SEO del workspace
/api/seo-portal
GETPOST
Portal SEO para clientes
/api/seo-portal-sync
GET
Sincronización del portal
/api/seo-audit
POST
Auditoría SEO
/api/seo-onpage
POST
Análisis on-page
/api/seo-local
POST
SEO local
/api/seo-roadmap-generator
POST
Generador de roadmap SEO
/api/seo-monthly-report
GETPOST
Reporte mensual
/api/seo-performance-sync
POST
Sincronización de performance
/api/seo-billing
GETPOST
Facturación del servicio SEO
/api/seo-capture-order
POST
Captura de orden de venta SEO
12 Workspace y notificaciones
Endpoint
Método
Descripción
/api/metrics-aggregator
GET
Métricas por tenant para Overview, Analytics y Sales
/api/dashboard-settings
GETPOST
Preferencias y settings del dashboard
/api/workspace-notifications
GETPOST
Notificaciones del workspace
/api/workspace-readiness
GET
Checklist de preparación del workspace
/api/resend-tracking
WEBHOOK
Eventos de tracking de Resend (aperturas, clicks)
/api/send-order-status-email
RETIRADO
Compatibilidad; las transiciones usan la ruta durable
13 MCP (Model Context Protocol)
Expone la API como tools MCP para asistentes de IA (Claude, ChatGPT, Cursor, Hermes). Transporte Streamable HTTP sin sesión; misma autenticación Bearer.
Endpoint
Método
Descripción
/api/mcp
POST
MCP Streamable HTTP (stateless): initialize, tools/list y tools/call con las 7 tools de Zentix. 401 sin token.
Guía completa de conexión (Claude Desktop, Cursor, stdio local, escrituras con recibo) en la página Servidor MCP. Escrituras acotadas a agenda_meeting_create con idempotencia; solo lectura por defecto.
14 Admin
Requieren custom claim de admin más lease de sesión. Sirven al Admin Control Center.
Endpoint
Método
Descripción
/api/admin-auth
POST
Verificación de sesión admin (claims + lease)
/api/admin-overview
GET
Resumen global de la plataforma
/api/admin-users
GET
Gestión de usuarios
/api/admin-leads
GET
Todos los leads (cross-tenant)
/api/admin-agents
GET
Todos los agentes
/api/admin-analytics
GET
Analytics global
/api/admin-payments
GET
Pagos globales
/api/admin-health
GET
Salud de la plataforma
/api/admin-actions
GETPOST
Acciones administrativas (revoca leases, etc.)
/api/admin-reset-crm-system
POST
Reset del sistema CRM — peligroso
/api/admin-reset-test-data
POST
Bulk-delete de datos de prueba
15 Cron jobs
Invocados por Vercel Cron con CRON_SECRET. Sin sesión de usuario. Frecuencias exactas de vercel.json.
Endpoint
Schedule
Descripción
/api/cron-workspace-agent
cada 2 min
Corridas agénticas programadas
/api/cron-crm-action-center
cada 2 min
Refresca la cola de acciones sugeridas
/api/cron-crm-ingestion-repair
cada 2 min
Repara la ingesta de CRM
/api/cron-workflow-outbox
cada 2 min
Outbox de workflows (integraciones Google)
/api/cron-channel-route-health
cada 5 min
Salud de rutas por canal
/api/cron-auto-analyze
cada 10 min
Selección de tareas ejecutables (leases, defers)
/api/cron-crm-followups
cada 10 min
Follow-ups de CRM
/api/send-meeting-reminders
cada 10 min
Recordatorios de reunión
/api/retry-failed-notifications
cada 30 min
Retry acotado de emails fallidos
/api/cron-crm-retention
horario (:15)
Retención y limpieza
/api/cron-firecrawl-import
diario 02:00
Consumidor de la cola de Firecrawl
/api/cron-maintenance
diario 06:00
Integridad de datos para todos los usuarios
/api/cron-revenue-attribution
lunes 06:00
Atribución lead→deal→order→payment
/api/send-onboarding-drip
diario 09:30
Drip de onboarding Day 1/3/7
/api/send-followup-reminders
diario 10:00
Recordatorios de follow-up
/api/send-weekly-digest
lunes 09:00
Digest semanal de actividad
/api/send-agent-health-alerts
domingo 08:00
Alertas de agentes inactivos
Interno: estos endpoints no son públicos. No publiques sus schedules ni el CRON_SECRET. Registrados en código pero sin schedule activo: cron-canonical-crm-migration, cron-recalculate-scores.
16 Webhooks entrantes
Llamados por terceros hacia Zentix. Todos verifican firma o secret antes de procesar.
Endpoint
Fuente
Descripción
/api/whatsapp-webhook
Meta
Verificación GET + eventos POST de WhatsApp Cloud
/api/twilio-whatsapp-webhook
Twilio
Mensajes entrantes de WhatsApp vía Twilio
/api/telegram-webhook
Telegram
Updates del bot
/api/slack-webhook
Slack
Events API
/api/paypal-webhook
PayPal
Pagos, disputas, suscripciones
/api/resend-inbound
Resend
Email entrante (parse)
/api/resend-inbound-routes
Resend
Config de rutas inbound
/api/webhook-intent-handler
interno
Enrutador de intents multi-canal
Ejemplo: verificación GET de WhatsApp Cloud
GET /api/whatsapp-webhook
?hub.mode=subscribe
&hub.verify_token=<VERIFY_TOKEN>
&hub.challenge=<CHALLENGE>
// Respuesta esperada: 200 con el valor de hub.challenge
17 Firestore directo
El frontend autenticado lee y escribe directo en estas colecciones (reglas en firebase-security-rules.txt).
Conviven el acceso directo (legacy) y el acceso vía endpoints serverless. La dirección del proyecto es centralizar las escrituras en la API; las reglas de Firestore restringen por request.auth.uid.
18 Mapa: qué página llama a qué
Página / área
Llamadas API
Landing, features, pricing, contacto, soluciones, blog (ES+EN)
landing-agent (widget), submit-lead (formularios). El resto es estático.
/login
Firebase Auth (Google, Facebook, email) → luego ensure-user-profile y send-welcome-email
/checkout
SDK de PayPal + paypal-create-order, paypal-capture-order, billing-quote, billing-status
/dashboard (legacy)
CRM completo, canales, calendario, agentes, pagos y settings (~40 endpoints)
/workspace (Zentix 2.0)
39 endpoints del workspace agéntico
/admin-dashboard
admin-auth más lecturas y acciones de admin
Widget embebido (cliente)
chatbot-api, submit-lead
Página pública de agente
chatbot-landing, chatbot-api
Clientes MCP (Claude, ChatGPT, Cursor, Hermes)
mcp (tools sobre CRM, agenda, agentes y métricas)
Documentación relacionada
Servidor MCP — conecta tu asistente de IA a esta API