🚀 E2E Leads API

API para sincronización de Leads con Zoho CRM

📋 Descripción

API REST para realizar operaciones de upsert (inserción o actualización) de Leads E2E en Zoho CRM. Este servicio permite sincronizar información de leads desde sistemas externos hacia Zoho CRM utilizando el campo External_ID como identificador único.

✨ Características

🔄 Upsert de Leads

Inserta nuevos leads o actualiza existentes automáticamente

🔐 OAuth2 Seguro

Autenticación automática con Zoho CRM

📊 Logging Completo

Registro detallado de todas las operaciones

🎯 Google Ads

Soporte nativo para tracking con GCLID

� API Simple

Solo 8 campos esenciales para mayor simplicidad

✅ Validación

Validación robusta de datos de entrada

📡 Endpoints Disponibles

POST /api/e2e/leads/upsert
GET /api/e2e/health
GET /health

🚀 Comenzar

Explora la API utilizando nuestra documentación interactiva con Swagger UI o consulta el README completo para instrucciones detalladas de configuración.

💡 ¿Cómo funciona el Upsert?

El endpoint utiliza el campo External_ID como clave única:

  • Si el lead NO existe: Se crea un nuevo lead con todos los datos proporcionados
  • Si el lead existe: Se actualiza con los nuevos datos, manteniendo los campos no incluidos

⚠️ Requisitos

El campo External_ID es obligatorio en todas las peticiones. Sin él, la operación fallará con un error 400.

🔧 Ejemplo de Uso

Ejemplo básico de petición con cURL:

curl -X POST http://localhost:3000/api/e2e/leads/upsert \
  -H "Content-Type: application/json" \
  -H "X-API-Key: tu-api-key-secreta" \
  -d '{
    "External_ID": "LEAD-12345",
    "First_Name": "Juan",
    "Last_Name": "Pérez",
    "Email": "juan.perez@example.com",
    "Phone": "+34123456789",
    "Origen_IT_del_lead": "Web",
    "Estado_del_Lead": "Nuevo",
    "Lead_Status": "Not Contacted",
    "gclid": "abc123xyz789"
  }'