Mixpanel konektor

Poveži Mixpanel sa Brevo putem Tajo kako bi premostio/la analizu proizvoda sa marketing automatizacijom. Sinhronizuj korisničke profile, bihevioralne događaje i kohorte za kreiranje kampanja zasnovanih na podacima temeljenih na stvarnoj upotrebi proizvoda.

Pregled

SvojstvoVrednost
PlatformaMixpanel
KategorijaAnalitika (Prilagođeno)
Složenost podešavanjaSrednje
Zvanična integracijaNe
Sinhronizovani podaciDogađaji, Profili, Kohorte, Grupe
Dostupne veštine7

Karakteristike

  • Unos događaja - Uvoz track događaja putem Mixpanel Ingestion API u Brevo tokove
  • Sinhronizacija profila korisnika - Mapiranje Mixpanel svojstava korisničkog profila na Brevo atribute kontakta
  • Izvoz kohorti - Sinhronizacija Mixpanel kohorti na Brevo liste kontakata za ciljane kampanje
  • Grupna analitika - Sinhronizacija podataka na nivou grupe za B2B account-based marketing
  • Upravljanje identitetom - Korišćenje Mixpanel spajanja identiteta za ujedinjene korisničke profile
  • JQL upiti - Pokretanje prilagođenih JQL upita za ekstrakciju specifičnih skupova podataka za Brevo
  • Lookup tabele - Sinhronizacija podataka obogaćivanja iz Mixpanel lookup tabela

Preduslovi

Pre nego što započneš, proveri da imaš:

  1. Mixpanel nalog sa kreiranim projektom
  2. Mixpanel Project Token za praćenje na strani klijenta
  3. Service Account sa odgovarajućim dozvolama za server-side API pristup
  4. Brevo nalog sa API pristupom
  5. Tajo nalog sa API kredencijalima

Autentifikacija

Service Accounts (preporučeno)

Mixpanel preporučuje korišćenje Service Accounts za API autentifikaciju. Service accounts koriste HTTP Basic Auth sa korisničkim imenom (korisničko ime service account-a) i lozinkom (secret service account-a).

Terminal window
# Service Account authentication
curl https://mixpanel.com/api/app/me \
-u "SERVICE_ACCOUNT_USERNAME:SERVICE_ACCOUNT_SECRET"

Project Token

Project Token se koristi za praćenje događaja na strani klijenta i bezbedno je uključiti ga u klijentski kod:

// Client-side initialization
mixpanel.init("YOUR_PROJECT_TOKEN");

OAuth (za partner integracije)

Za integracije aplikacija koje pristupaju više projekata:

Terminal window
curl https://mixpanel.com/api/2.0/engage \
-H "Authorization: Bearer YOUR_OAUTH_TOKEN"

Konfiguracija

Osnovno podešavanje

connectors:
mixpanel:
enabled: true
project_token: "your-project-token"
service_account:
username: "your-service-account-username"
secret: "your-service-account-secret"
project_id: "12345"
data_residency: "US" # or "EU"
# Data sync options
sync:
events: true
profiles: true
cohorts: true
groups: false
# Brevo list assignment
lists:
all_users: 15
engaged_users: 16
at_risk: 17

Mapiranje događaja

Mapiranje Mixpanel događaja na Brevo tipove događaja:

event_mapping:
# Mixpanel event -> Brevo event
"Purchase": "order_completed"
"Sign Up": "customer_created"
"Add to Cart": "cart_updated"
"Page View": "page_viewed"
"$experiment_started": "experiment_started"
# Custom events
"Feature Activated": "feature_used"
"Subscription Renewed": "subscription_renewed"

Mapiranje svojstava profila

Mapiranje Mixpanel korisničkih svojstava na Brevo atribute kontakta:

property_mapping:
$email: email
$first_name: FIRSTNAME
$last_name: LASTNAME
$phone: SMS
$city: CITY
$region: REGION
$country_code: COUNTRY
plan: PLAN_TYPE
company: COMPANY
signup_date: SIGNUP_DATE
total_revenue: LTV

API endpointi

MetodaEndpointOpis
POST/importUvoz događaja (Ingestion API)
POST/trackPraćenje događaja (client-side)
POST/engage#$setPostavljanje svojstava korisničkog profila
POST/engage#$set_oncePostavljanje svojstava samo ako već nisu postavljena
POST/engage#$deleteBrisanje korisničkog profila
POST/engage#$unionUnion na svojstvima liste
POST/groupsPostavljanje svojstava grupnog profila
GET/exportIzvoz sirovih podataka o događajima
POST/cohorts/listListanje sačuvanih kohorti
POST/engage/queryUpit korisničkih profila
POST/jqlPokretanje prilagođenih JQL upita
GET/segmentationUpit izveštaja o segmentaciji
GET/retentionUpit izveštaja o zadržavanju
GET/funnelsUpit izveštaja o levku

Primeri koda

Inicijalizacija Mixpanel konektora

import { TajoClient } from '@tajo/sdk';
const tajo = new TajoClient({
apiKey: process.env.TAJO_API_KEY,
brevoApiKey: process.env.BREVO_API_KEY
});
// Connect Mixpanel project
await tajo.connectors.connect('mixpanel', {
projectToken: process.env.MIXPANEL_TOKEN,
serviceAccountUser: process.env.MIXPANEL_SA_USER,
serviceAccountSecret: process.env.MIXPANEL_SA_SECRET,
projectId: process.env.MIXPANEL_PROJECT_ID
});

Uvoz događaja putem Ingestion API

// Import events to Mixpanel (automatically forwarded to Brevo)
const response = await fetch('https://api.mixpanel.com/import', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'Authorization': 'Basic ' + btoa(
`${process.env.MIXPANEL_SA_USER}:${process.env.MIXPANEL_SA_SECRET}`
)
},
body: JSON.stringify([
{
event: "Purchase",
properties: {
distinct_id: "user_123",
$insert_id: "evt_abc123",
time: Math.floor(Date.now() / 1000),
revenue: 89.99,
product_id: "SKU-001",
product_name: "Widget Pro"
}
}
])
});
// Expected response: { "code": 200, "status": "OK", "num_records_imported": 1 }

Sinhronizacija kohorte sa Brevo

// Export a Mixpanel cohort and sync to a Brevo list
const cohort = await tajo.connectors.syncCohort('mixpanel', {
cohortId: 12345,
targetList: 16,
syncMode: 'mirror'
});
console.log(cohort);
// {
// cohortName: "Engaged Users (Last 7 Days)",
// membersCount: 3200,
// syncedToBrevo: 3200,
// listId: 16
// }

Postavljanje svojstava korisničkog profila

// Set user properties via the Engage API
const response = await fetch('https://api.mixpanel.com/engage#$set', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify([{
$token: process.env.MIXPANEL_TOKEN,
$distinct_id: "user_123",
$set: {
$email: "[email protected]",
$first_name: "Jane",
$last_name: "Kim",
plan: "premium",
total_orders: 12,
lifetime_value: 1250.00
}
}])
});

Ograničenja brzine

APILimitDetalji
Ingestion API2 GB/minPo projektu
Track APIBez tvrdog limitaIsporuka po mogućnosti
Engage API2.000 ažuriranja/batchMaksimalno 2 GB/min po projektu
Query API60 zahteva/satPo projektu (Service Account)
Export API60 zahteva/satMaksimalno 100 dana po upitu
JQL API60 zahteva/satPo projektu
Cohort Export60 zahteva/satPo projektu

Deduplikacija događaja

Mixpanel deduplira događaje koristeći svojstvo $insert_id. Uvek uključi jedinstveni $insert_id da sprečiš duplikate događaja pri ponovnom pokušaju neuspelih uvoza.

Rešavanje problema

ProblemUzrokRešenje
Događaji se ne pojavljujuPogrešan project tokenProveri da token odgovara ciljnom projektu
Nedostaju svojstva profilaKorišćenje pogrešnog API-jaKoristi /engage#$set za svojstva profila, ne /track
Izvoz kohorte ne uspevaNedovoljne dozvoleProveri da Service Account ima Admin ili Analyst ulogu
Duplirani događajiNedostaje $insert_idUključi jedinstveni $insert_id na svakom događaju
402 Payment RequiredPrekoračeni limiti podatakaProveri Mixpanel planove i nadogradi ako je potrebno
EU podaci se ne rutirajuPogrešna rezidencija podatakaKoristi api-eu.mixpanel.com za EU projekte
Problemi spajanja identitetaPogrešan distinct_idSledi Mixpanel-ove najbolje prakse upravljanja identitetom

Najbolje prakse

  1. Koristi Service Accounts - Preferiraj Service Accounts umesto Project Secret za server-side autentifikaciju
  2. Uključi $insert_id - Uvek postavi jedinstveni insert ID za deduplikaciju događaja
  3. Grupišu ažuriranja profila - Šalji do 2.000 ažuriranja profila po zahtevu za efikasnost
  4. Koristi EU endpointe - Za EU rezidenciju podataka, koristi api-eu.mixpanel.com za sve API pozive
  5. Sinhronizuj kohorte po rasporedu - Postavi dnevnu ili nedeljnu sinhronizaciju kohorti umesto kontinuiranog ispitivanja
  6. Mapiraj rezervisana svojstva - Koristi Mixpanel rezervisana svojstva ($email, $first_name) za podatke profila
  7. Prati unos - Koristi Mixpanel stranicu Events za verifikaciju da se događaji ispravno primaju

Bezbednost

  • Samo HTTPS - Sva API komunikacija zahteva TLS enkripciju
  • Izolacija Service Account-a - Skopovani pristup po projektu sa dozvolama zasnovanim na ulogama
  • Deduplikacija događaja - Ugrađena deduplikacija putem $insert_id sprečava probleme integriteta podataka
  • SOC 2 Type II - Mixpanel je SOC 2 Type II sertifikovan
  • GDPR/CCPA - Podrška za brisanje korisničkih podataka putem GDPR API-ja
  • EU rezidencija podataka - Dostupan EU data center za evropsku usklađenost

Povezani resursi

Subscribe to updates

developer-docs

Drop your email or phone number — we'll send you what matters next.

auto-detect
AI асистент

Здраво! Питајте ме о документацији.