Conector de Twilio Segment
Conecta Twilio Segment con Brevo a través de Tajo para unificar tu pipeline de datos de cliente, enrutar eventos desde cualquier fuente hacia Brevo y aprovechar la resolución de identidad de Segment para una automatización de marketing más rica.
Resumen
| Propiedad | Valor |
|---|---|
| Plataforma | Twilio Segment |
| Categoría | Plataforma de datos (Personalizada) |
| Complejidad de configuración | Media |
| Integración oficial | No |
| Datos sincronizados | Eventos, Clientes, Traits, Audiencias |
| Skills disponibles | 8 |
Funcionalidades
- Recolección universal de datos - Recopila eventos desde webs, apps móviles y servidores mediante los SDKs de Segment
- Enrutamiento de fuentes - Enruta datos desde más de 400 fuentes hacia Brevo a través de Tajo
- Resolución de identidad - Combina perfiles de usuarios anónimos y conocidos automáticamente
- Sincronización de audiencias - Envía traits y audiencias calculadas de Segment a listas de Brevo
- Streaming de eventos - Reenvío de eventos en tiempo real mediante el framework de Connections de Segment
- Reverse ETL - Sincroniza datos del warehouse de vuelta a Brevo con Segment Reverse ETL
- Aplicación de esquemas - Valida los esquemas de eventos con Segment Protocols antes de sincronizar
Requisitos previos
Antes de empezar, asegúrate de tener:
- Un workspace de Twilio Segment con una fuente configurada
- Tu Segment Write Key de la fuente
- Una cuenta de Brevo con acceso a la API
- Una cuenta de Tajo con credenciales de API
Autenticación
Segment Write Key
Segment autentica las fuentes mediante una Write Key, un identificador único asociado a cada fuente.
// Analytics.js initialization with Write Keyanalytics.load("YOUR_SEGMENT_WRITE_KEY");Token de API de Tajo
Configura el conector de Tajo con tus credenciales:
tajo connectors install segment \ --write-key $SEGMENT_WRITE_KEY \ --workspace-slug your-workspace \ --brevo-api-key $BREVO_API_KEYConfiguración
Configuración básica
connectors: segment: enabled: true write_key: "your-segment-write-key" data_region: "us" # or "eu" for EU workspace
# Data sync options sync: identify: true track: true page: true group: false
# Brevo list assignment lists: all_contacts: 5 active_users: 6 high_value: 7Asignación de eventos
Asocia los eventos track de Segment con los tipos de evento de Brevo:
event_mapping: # Segment event -> Brevo event "Order Completed": "order_completed" "Product Viewed": "product_viewed" "Cart Updated": "cart_updated" "Signed Up": "customer_created" "Checkout Started": "checkout_started"
# Custom events "Feature Used": "feature_used" "Plan Upgraded": "plan_upgraded"Asignación de traits
Asocia los traits de identify de Segment con los atributos de contacto de Brevo:
trait_mapping: email: email firstName: FIRSTNAME lastName: LASTNAME phone: SMS plan: PLAN_TYPE company: COMPANY createdAt: SIGNUP_DATE lifetimeValue: LTVEndpoints de la API
| Método | Endpoint | Descripción |
|---|---|---|
POST | /v1/identify | Identificar a un usuario con traits |
POST | /v1/track | Registrar un evento |
POST | /v1/page | Registrar una vista de página |
POST | /v1/screen | Registrar una vista de pantalla |
POST | /v1/group | Asociar un usuario a un grupo |
POST | /v1/alias | Fusionar dos identidades de usuario |
POST | /v1/batch | Enviar varios mensajes en un lote |
POST | /v1/import | Importación masiva de datos históricos |
Ejemplos de código
Inicializar Segment con el destino de Tajo
import { TajoClient } from '@tajo/sdk';
const tajo = new TajoClient({ apiKey: process.env.TAJO_API_KEY, brevoApiKey: process.env.BREVO_API_KEY});
// Connect Segment sourceawait tajo.connectors.connect('segment', { writeKey: process.env.SEGMENT_WRITE_KEY, workspaceSlug: 'your-workspace'});Registrar eventos a través de Segment
// Identify a user - syncs to Brevo contactsanalytics.identify("user_123", { firstName: "Jane", lastName: "Kim", plan: "premium", lifetimeValue: 450.00});
// Track an event - forwards to Brevoanalytics.track("Order Completed", { orderId: "ORD-1234", revenue: 89.99, currency: "USD", products: [ { id: "SKU-001", name: "Widget", price: 89.99 } ]});
// Page view trackinganalytics.page("Pricing", { title: "Pricing - Tajo", url: "https://tajo.io/pricing"});Reenvío de eventos desde el servidor (Node.js)
const Analytics = require('analytics-node');const analytics = new Analytics(process.env.SEGMENT_WRITE_KEY);
// Batch identify users from your databaseconst users = await db.query('SELECT * FROM users WHERE updated_at > $1', [lastSync]);
for (const user of users) { analytics.identify({ userId: user.id, traits: { email: user.email, firstName: user.first_name, lastName: user.last_name, totalOrders: user.order_count, lifetimeValue: user.ltv } });}
// Flush the queueawait analytics.flush();Límites de velocidad
| Nivel | Límite | Ventana |
|---|---|---|
| Free | 1.000 eventos/s | Por fuente |
| Team | 10.000 eventos/s | Por fuente |
| Business | Personalizado | Por workspace |
| Batch API | 500 KB máx. | Por petición |
| Tamaño máx. del lote | 100 eventos | Por llamada batch |
Límites de tamaño del lote
Cada petición batch puede contener un máximo de 100 eventos y no debe superar 500 KB. Para importaciones históricas grandes, usa la Bulk Import API de Segment.
Resolución de problemas
| Problema | Causa | Solución |
|---|---|---|
| Los eventos no aparecen en Brevo | Destino no habilitado | Habilita el destino de Tajo en Segment |
| Los traits de usuario no se sincronizan | Falta el identificador de email | Asegúrate de incluir el trait email en las llamadas identify |
| Contactos duplicados | Varios anonymous IDs | Implementa llamadas alias adecuadas para fusionar identidades |
| Eventos con retraso | Cola con alto volumen | Revisa el panel de entrega de eventos de Segment |
| Violaciones de esquema | Eventos no planificados | Revisa el plan de tracking de Segment Protocols |
| Errores 429 de rate limit | Demasiadas peticiones | Aplica batching o reduce la frecuencia de eventos |
Buenas prácticas
- Llama a identify antes de track - Llama siempre a
identifyantes detrackpara que los eventos se atribuyan al usuario correcto - Implementa un tracking plan - Usa Segment Protocols para aplicar los esquemas de eventos
- Agrupa las llamadas del servidor - Usa la API batch en integraciones de servidor para reducir la sobrecarga HTTP
- Asigna traits de forma explícita - Define asignaciones de trait a atributo en lugar de depender de los valores por defecto
- Usa Segment Functions - Transforma los eventos al vuelo antes de que lleguen a Brevo
- Monitoriza la entrega de eventos - Revisa el panel de Event Delivery de Segment en busca de eventos fallidos
- Configura Replay - Activa Segment Replay para reprocesar eventos históricos
Seguridad
- Cifrado TLS - Todos los datos se transmiten por HTTPS/TLS 1.2+
- Aislamiento de Write Keys - Cada fuente tiene su propia Write Key
- Cumplimiento de RGPD - Segment admite solicitudes de eliminación y supresión de datos
- SOC 2 Type II - Segment cuenta con certificación SOC 2 Type II
- Alojamiento regional de datos - Opción de workspace en la UE para cumplimiento de residencia de datos