Amplitude-connector
Verbind Amplitude met Brevo via Tajo om productanalysedata te gebruiken voor marketingautomatisering. Synchroniseer gedragscohorten, gebruikerseigenschappen en productevents om gerichte campagnes aan te sturen.
Overzicht
| Eigenschap | Waarde |
|---|---|
| Platform | Amplitude |
| Categorie | Analytics (Custom) |
| Setupcomplexiteit | Gemiddeld |
| Officiële integratie | Nee |
| Gesynchroniseerde data | Events, Gebruikers, Cohorten, Eigenschappen |
| Beschikbare Skills | 6 |
Functies
- Eventforwarding - Stuur Amplitude track-events naar Brevo voor triggers in marketingautomatisering
- Cohortsynchronisatie - Exporteer Amplitude-gedragscohorten als Brevo-contactlijsten
- Gebruikerseigenschap-sync - Map Amplitude-gebruikerseigenschappen naar Brevo-contactattributen
- Omzettracking - Synchroniseer revenue-events voor analyse van customer lifetime value
- Gedragssegmentatie - Gebruik Amplitude-engagementdata in Brevo-segmenten
- HTTP V2 API-integratie - Directe integratie met de HTTP V2-ingestion API van Amplitude
Vereisten
Voordat je begint, zorg dat je beschikt over:
- Een Amplitude-account met een aangemaakt project
- Je Amplitude API Key en Secret Key
- Een Brevo-account met API-toegang
- Een Tajo-account met API-credentials
Authenticatie
Amplitude API-keys
Amplitude gebruikt paren van API Key en Secret Key voor authenticatie. De API Key identificeert je project, terwijl de Secret Key server-side requests authenticeert.
# Find your keys in Amplitude:# Settings > Projects > [Your Project] > GeneralHTTP V2 API-authenticatie
De HTTP V2 API gebruikt de API key in de request body:
curl -X POST https://api2.amplitude.com/2/httpapi \ -H "Content-Type: application/json" \ -d '{ "api_key": "YOUR_AMPLITUDE_API_KEY", "events": [...] }'Configuratie
Basisinstelling
connectors: amplitude: enabled: true api_key: "your-amplitude-api-key" secret_key: "your-amplitude-secret-key" data_center: "US" # or "EU"
# Data sync options sync: events: true user_properties: true cohorts: true revenue: true
# Brevo list assignment lists: active_users: 10 power_users: 11 churning_users: 12Event-mapping
Map Amplitude-events naar Brevo-automatiseringstriggers:
event_mapping: # Amplitude event -> Brevo event "Purchase": "order_completed" "Sign Up": "customer_created" "Add to Cart": "cart_updated" "Page View": "page_viewed" "Feature Click": "feature_used"
# Revenue events "Revenue": "revenue_event" "Subscription Started": "subscription_created"Gebruikerseigenschap-mapping
Map Amplitude-gebruikerseigenschappen naar Brevo-contactattributen:
property_mapping: # Amplitude property -> Brevo attribute email: email first_name: FIRSTNAME last_name: LASTNAME phone: SMS plan_type: PLAN signup_date: SIGNUP_DATE total_purchases: ORDER_COUNT lifetime_revenue: LTV last_active: LAST_ACTIVE device_type: DEVICEAPI-endpoints
| Method | Endpoint | Beschrijving |
|---|---|---|
POST | /2/httpapi | Upload events (HTTP V2 API) |
POST | /batch | Bulk upload events (Batch API) |
POST | /identify | Stel gebruikerseigenschappen in |
POST | /groupidentify | Stel groep-eigenschappen in |
GET | /2/export | Exporteer ruwe eventdata |
GET | /2/usersearch | Zoek gebruikers |
GET | /2/useractivity | Haal gebruikersactiviteit-timeline op |
POST | /api/3/cohort/export | Exporteer cohortmembers |
GET | /api/3/chart/{chart_id}/query | Query opgeslagen chartdata |
Codevoorbeelden
Amplitude-connector initialiseren
import { TajoClient } from '@tajo/sdk';
const tajo = new TajoClient({ apiKey: process.env.TAJO_API_KEY, brevoApiKey: process.env.BREVO_API_KEY});
// Connect Amplitude projectawait tajo.connectors.connect('amplitude', { apiKey: process.env.AMPLITUDE_API_KEY, secretKey: process.env.AMPLITUDE_SECRET_KEY, dataCenter: 'US'});Events versturen via HTTP V2 API
// Send events to Amplitude (automatically forwarded to Brevo)const response = await fetch('https://api2.amplitude.com/2/httpapi', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({ api_key: process.env.AMPLITUDE_API_KEY, events: [ { user_id: "user_123", event_type: "Purchase", event_properties: { revenue: 89.99, product_id: "SKU-001", product_name: "Widget Pro" }, user_properties: { $set: { plan_type: "premium" } }, time: Date.now() } ] })});
// Expected response: { "code": 200, "events_ingested": 1 }Cohort synchroniseren naar Brevo-lijst
// Export an Amplitude cohort and sync to Brevoconst cohort = await tajo.connectors.syncCohort('amplitude', { cohortId: 'abc123', targetList: 11, // Brevo list ID syncMode: 'mirror' // mirror, append, or remove});
console.log(cohort);// {// cohortName: "Power Users",// membersCount: 2450,// syncedToBrevo: 2450,// listId: 11// }Rate limits
| API | Limiet | Details |
|---|---|---|
| HTTP V2 API | 1.000 events/sec | Per project, burst tot 2.000/sec |
| Batch API | 1.000 events/batch | Max. 20 batches/sec |
| Identify API | 1.000 req/sec | Per project |
| Export API | 360 requests/uur | Per project |
| Cohort Export | 1 gelijktijdige export | Per cohort |
| Dashboard REST API | 360 requests/uur | Per project |
Eventgrootte-limieten
Elke eventpayload mag niet groter zijn dan 1 MB. De HTTP V2 API accepteert tot 2.000 events per request met een maximale body-grootte van 20 MB.
Probleemoplossing
| Probleem | Oorzaak | Oplossing |
|---|---|---|
Events krijgen status invalid | Verplichte velden ontbreken | Zorg dat user_id of device_id op elk event is gezet |
| Gebruikerseigenschappen worden niet gesynchroniseerd | Verkeerde property operator | Gebruik $set voor instellen, $setOnce voor first-touch-waardes |
| Cohortexport is leeg | Cohort nog aan het berekenen | Wacht tot de cohortberekening klaar is voordat je exporteert |
| 429 Too Many Requests | Rate limit overschreden | Implementeer exponentiële backoff en gebruik de batch API |
| Omzet wordt niet getrackt | Ontbrekende revenue-velden | Neem price, quantity en revenue op in de eventeigenschappen |
| EU-data wordt niet gerouteerd | Verkeerd data center | Stel data_center: "EU" in en gebruik api.eu.amplitude.com |
Best practices
- Gebruik de HTTP V2 API - Geef de voorkeur aan de V2 API boven de legacy HTTP API voor betere validatie en foutresponses
- Batch events - Verstuur events in batches van maximaal 1.000 voor optimale doorvoer
- Zet gebruikerseigenschappen op events - Neem
user_propertiesop bij track-events om identify-calls te verminderen - Gebruik cohorten voor segmentatie - Synchroniseer gedragscohorten in plaats van complexe segmentatielogica te repliceren
- Track revenue-events correct - Gebruik de velden
revenue,priceenproductIdvoor nauwkeurige omzettracking - Monitor ingestion-gezondheid - Controleer de Ingestion Debugger van Amplitude op validatiefouten in events
- Implementeer server-side tracking - Gebruik server-side SDK’s voor betrouwbare event-delivery
Beveiliging
- Alleen HTTPS - Alle API-communicatie vereist TLS 1.2+
- API key-rotatie - Roteer Secret Keys periodiek via Amplitude-settings
- IP-allowlisting - Beschikbaar op Enterprise-plannen
- SOC 2 Type II - Amplitude is SOC 2 Type II-gecertificeerd
- GDPR/CCPA - Ondersteuning voor verzoeken tot verwijdering en export van gebruikersdata
- EU-dataresidentie - EU-datacenter-optie beschikbaar