Twilio Segment-connector
Verbind Twilio Segment met Brevo via Tajo om je klantdata-pipeline te uniformeren, events vanuit elke bron naar Brevo te routeren en gebruik te maken van Segment’s identity resolution voor rijkere marketingautomatisering.
Overzicht
| Eigenschap | Waarde |
|---|---|
| Platform | Twilio Segment |
| Categorie | Data Platform (Custom) |
| Setupcomplexiteit | Gemiddeld |
| Officiële integratie | Nee |
| Gesynchroniseerde data | Events, Klanten, Traits, Audiences |
| Beschikbare skills | 8 |
Functies
- Universele dataverzameling - Verzamel events vanuit websites, mobiele apps en servers via Segment SDK’s
- Source-routing - Route data van 400+ bronnen naar Brevo via Tajo
- Identity resolution - Voeg anonieme en bekende gebruikersprofielen automatisch samen
- Audience-synchronisatie - Stuur Segment computed traits en audiences naar Brevo-lijsten
- Event streaming - Realtime event-forwarding via Segment’s Connections-framework
- Reverse ETL - Synchroniseer warehouse-data terug naar Brevo met Segment Reverse ETL
- Schema-handhaving - Valideer event-schema’s met Segment Protocols voordat ze gesynchroniseerd worden
Vereisten
Voordat je begint, zorg dat je beschikt over:
- Een Twilio Segment-workspace met een geconfigureerde source
- Je Segment Write Key voor de source
- Een Brevo-account met API-toegang
- Een Tajo-account met API-credentials
Authenticatie
Segment Write Key
Segment authenticeert sources via een Write Key, een unieke identifier die aan elke source is gekoppeld.
// Analytics.js initialization with Write Keyanalytics.load("YOUR_SEGMENT_WRITE_KEY");Tajo API Token
Configureer de Tajo-connector met je credentials:
tajo connectors install segment \ --write-key $SEGMENT_WRITE_KEY \ --workspace-slug your-workspace \ --brevo-api-key $BREVO_API_KEYConfiguratie
Basisinstelling
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: 7Eventmapping
Map Segment track-events naar Brevo-eventtypes:
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"Trait-mapping
Map Segment identify-traits naar Brevo-contactattributen:
trait_mapping: email: email firstName: FIRSTNAME lastName: LASTNAME phone: SMS plan: PLAN_TYPE company: COMPANY createdAt: SIGNUP_DATE lifetimeValue: LTVAPI-endpoints
| Method | Endpoint | Beschrijving |
|---|---|---|
POST | /v1/identify | Een gebruiker identificeren met traits |
POST | /v1/track | Een event tracken |
POST | /v1/page | Een pageview vastleggen |
POST | /v1/screen | Een screenview vastleggen |
POST | /v1/group | Een gebruiker koppelen aan een group |
POST | /v1/alias | Twee gebruikersidentiteiten samenvoegen |
POST | /v1/batch | Meerdere berichten in een batch versturen |
POST | /v1/import | Bulk import van historische data |
Codevoorbeelden
Segment initialiseren met Tajo-destination
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'});Events tracken via 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"});Server-side event-forwarding (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();Rate limits
| Tier | Limiet | Window |
|---|---|---|
| Free | 1.000 events/sec | Per source |
| Team | 10.000 events/sec | Per source |
| Business | Custom | Per workspace |
| Batch API | 500 KB max | Per request |
| Max batchgrootte | 100 events | Per batch-call |
Batchgrootte-limieten
Elke batch-request kan maximaal 100 events bevatten en mag niet groter zijn dan 500 KB. Gebruik voor grote historische imports de Segment Bulk Import API.
Probleemoplossing
| Probleem | Oorzaak | Oplossing |
|---|---|---|
| Events verschijnen niet in Brevo | Destination niet ingeschakeld | Schakel Tajo-destination in in Segment |
| Gebruikerstraits niet gesynchroniseerd | Ontbrekende email-identifier | Zorg dat de email-trait wordt meegegeven in identify-calls |
| Dubbele contacten | Meerdere anonieme ID’s | Implementeer correcte alias-calls voor identity merge |
| Events vertraagd | Wachtrij met hoog volume | Controleer Segment’s event delivery dashboard |
| Schema-overtredingen | Niet-geplande events | Bekijk Segment Protocols tracking plan |
| 429 rate limit-fouten | Te veel requests | Implementeer batching of verlaag eventfrequentie |
Best practices
- Gebruik identify vóór track - Roep altijd
identifyaan vóórtrackom events aan de juiste gebruiker te koppelen - Implementeer een tracking plan - Gebruik Segment Protocols om event-schema’s af te dwingen
- Batch server-side calls - Gebruik de batch-API voor server-side integraties om HTTP-overhead te beperken
- Map traits expliciet - Definieer trait-naar-attribuut-mappings in plaats van te vertrouwen op defaults
- Gebruik Segment Functions - Transformeer events in-flight voordat ze Brevo bereiken
- Monitor event-delivery - Controleer Segment’s Event Delivery dashboard op gefaalde events
- Stel Replay in - Schakel Segment Replay in voor het herverwerken van historische events
Beveiliging
- TLS-encryptie - Alle data wordt verzonden via HTTPS/TLS 1.2+
- Write Key-isolatie - Elke source heeft zijn eigen Write Key
- GDPR-compliance - Segment ondersteunt verwijderings- en suppressieverzoeken
- SOC 2 Type II - Segment is SOC 2 Type II-gecertificeerd
- Regionale datahosting - EU-workspace-optie voor compliance met data residency