Connettore Twilio Segment
Collega Twilio Segment a Brevo tramite Tajo per unificare la tua pipeline di dati cliente, instradare eventi da qualsiasi sorgente verso Brevo e sfruttare la identity resolution di Segment per una marketing automation più ricca.
Panoramica
| Proprietà | Valore |
|---|---|
| Piattaforma | Twilio Segment |
| Categoria | Data Platform (Custom) |
| Complessità di setup | Media |
| Integrazione ufficiale | No |
| Dati sincronizzati | Eventi, Clienti, Trait, Audience |
| Skill disponibili | 8 |
Funzionalità
- Raccolta dati universale - Raccogli eventi da siti web, app mobile e server tramite gli SDK Segment
- Routing delle sorgenti - Instrada dati da 400+ sorgenti verso Brevo tramite Tajo
- Identity resolution - Unisci automaticamente profili utente anonimi e conosciuti
- Sync delle audience - Invia trait computati e audience Segment alle liste Brevo
- Streaming eventi - Inoltro eventi in real-time tramite il framework Connections di Segment
- Reverse ETL - Sincronizza i dati del warehouse verso Brevo usando Segment Reverse ETL
- Enforcement dello schema - Valida gli schema degli eventi con Segment Protocols prima del sync
Prerequisiti
Prima di iniziare, assicurati di avere:
- Un workspace Twilio Segment con una sorgente configurata
- La tua Segment Write Key per la sorgente
- Un account Brevo con accesso API
- Un account Tajo con credenziali API
Autenticazione
Segment Write Key
Segment autentica le sorgenti usando una Write Key, un identificatore univoco legato a ciascuna sorgente.
// Inizializzazione Analytics.js con Write Keyanalytics.load("YOUR_SEGMENT_WRITE_KEY");Token API Tajo
Configura il connettore Tajo con le tue credenziali:
tajo connectors install segment \ --write-key $SEGMENT_WRITE_KEY \ --workspace-slug your-workspace \ --brevo-api-key $BREVO_API_KEYConfigurazione
Setup di base
connectors: segment: enabled: true write_key: "your-segment-write-key" data_region: "us" # oppure "eu" per workspace EU
# Opzioni di sync dei dati sync: identify: true track: true page: true group: false
# Assegnazione liste Brevo lists: all_contacts: 5 active_users: 6 high_value: 7Mapping degli eventi
Mappa gli eventi track Segment sui tipi di evento Brevo:
event_mapping: # Evento Segment -> evento Brevo "Order Completed": "order_completed" "Product Viewed": "product_viewed" "Cart Updated": "cart_updated" "Signed Up": "customer_created" "Checkout Started": "checkout_started"
# Eventi custom "Feature Used": "feature_used" "Plan Upgraded": "plan_upgraded"Mapping dei trait
Mappa i trait identify Segment sugli attributi dei contatti Brevo:
trait_mapping: email: email firstName: FIRSTNAME lastName: LASTNAME phone: SMS plan: PLAN_TYPE company: COMPANY createdAt: SIGNUP_DATE lifetimeValue: LTVEndpoint API
| Metodo | Endpoint | Descrizione |
|---|---|---|
POST | /v1/identify | Identifica un utente con trait |
POST | /v1/track | Traccia un evento |
POST | /v1/page | Registra una page view |
POST | /v1/screen | Registra una screen view |
POST | /v1/group | Associa un utente a un gruppo |
POST | /v1/alias | Unisci due identità utente |
POST | /v1/batch | Invia più messaggi in batch |
POST | /v1/import | Import bulk di dati storici |
Esempi di codice
Inizializzare Segment con destinazione Tajo
import { TajoClient } from '@tajo/sdk';
const tajo = new TajoClient({ apiKey: process.env.TAJO_API_KEY, brevoApiKey: process.env.BREVO_API_KEY});
// Collega la sorgente Segmentawait tajo.connectors.connect('segment', { writeKey: process.env.SEGMENT_WRITE_KEY, workspaceSlug: 'your-workspace'});Tracciare eventi tramite Segment
// Identifica un utente - sincronizza sui contatti Brevoanalytics.identify("user_123", { firstName: "Jane", lastName: "Kim", plan: "premium", lifetimeValue: 450.00});
// Traccia un evento - inoltra a Brevoanalytics.track("Order Completed", { orderId: "ORD-1234", revenue: 89.99, currency: "USD", products: [ { id: "SKU-001", name: "Widget", price: 89.99 } ]});
// Tracciamento page viewanalytics.page("Pricing", { title: "Pricing - Tajo", url: "https://tajo.io/pricing"});Inoltro eventi server-side (Node.js)
const Analytics = require('analytics-node');const analytics = new Analytics(process.env.SEGMENT_WRITE_KEY);
// Identify in batch di utenti dal tuo 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 } });}
// Svuota la codaawait analytics.flush();Limiti di rate
| Piano | Limite | Finestra |
|---|---|---|
| Free | 1.000 eventi/sec | Per sorgente |
| Team | 10.000 eventi/sec | Per sorgente |
| Business | Custom | Per workspace |
| Batch API | 500 KB max | Per richiesta |
| Dimensione max batch | 100 eventi | Per chiamata batch |
Limiti dimensione batch
Ogni richiesta batch può contenere un massimo di 100 eventi e non deve superare 500 KB. Per import storici grandi, usa la Bulk Import API di Segment.
Risoluzione dei problemi
| Problema | Causa | Soluzione |
|---|---|---|
| Eventi non visibili in Brevo | Destinazione non abilitata | Abilita la destinazione Tajo in Segment |
| Trait utente non sincronizzati | Identificatore email mancante | Assicurati che il trait email sia incluso nelle chiamate identify |
| Contatti duplicati | Più ID anonimi | Implementa chiamate alias corrette per l’identity merge |
| Eventi in ritardo | Coda con alto volume | Controlla la dashboard di event delivery di Segment |
| Violazioni di schema | Eventi non pianificati | Rivedi il tracking plan di Segment Protocols |
| Errori 429 di rate limit | Troppe richieste | Implementa batching o riduci la frequenza eventi |
Best practice
- Usa identify prima di track - Chiama sempre
identifyprima ditrackper assicurarti che gli eventi siano attribuiti all’utente corretto - Implementa un tracking plan - Usa Segment Protocols per far rispettare gli schema degli eventi
- Raggruppa le chiamate server-side - Usa la batch API per integrazioni server-side e ridurre l’overhead HTTP
- Mappa i trait in modo esplicito - Definisci mapping trait-attributo invece di affidarti ai default
- Usa Segment Functions - Trasforma gli eventi in-flight prima che raggiungano Brevo
- Monitora la consegna eventi - Controlla la dashboard Event Delivery di Segment per eventi falliti
- Configura Replay - Abilita Segment Replay per rielaborare eventi storici
Sicurezza
- Cifratura TLS - Tutti i dati trasmessi su HTTPS/TLS 1.2+
- Isolamento Write Key - Ogni sorgente ha la propria Write Key
- Conformità GDPR - Segment supporta richieste di cancellazione e soppressione dati
- SOC 2 Type II - Segment è certificata SOC 2 Type II
- Hosting dati regionale - Opzione workspace EU per la conformità di data residency