Konektor Mixpanel
Propojte Mixpanel s Brevo přes Tajo pro propojení produktové analytiky s marketingovou automatizací. Synchronizujte profily uživatelů, behaviorální události a kohorty pro vytváření kampaní řízených daty na základě skutečného využití produktu.
Přehled
| Vlastnost | Hodnota |
|---|---|
| Platforma | Mixpanel |
| Kategorie | Analytika (Vlastní) |
| Složitost nastavení | Střední |
| Oficiální integrace | Ne |
| Synchronizovaná data | Události, Profily, Kohorty, Skupiny |
| Dostupné dovednosti | 7 |
Funkce
- Ingestion událostí – Importujte track události přes Ingestion API Mixpanel do pracovních toků Brevo
- Synchronizace profilů uživatelů – Mapujte vlastnosti profilů uživatelů Mixpanel na atributy kontaktů Brevo
- Export kohort – Synchronizujte kohorty Mixpanel do seznamů kontaktů Brevo pro cílené kampaně
- Skupinová analytika – Synchronizujte data na úrovni skupin pro B2B marketing na základě účtů
- Správa identit – Využijte sloučení identit Mixpanel pro sjednocené profily zákazníků
- JQL dotazy – Spouštějte vlastní JQL dotazy pro extrakci konkrétních datových sad pro Brevo
- Vyhledávací tabulky – Synchronizujte obohacující data z vyhledávacích tabulek Mixpanel
Předpoklady
Než začnete, ujistěte se, že máte:
- Účet Mixpanel s vytvořeným projektem
- Token projektu Mixpanel pro sledování na straně klienta
- Servisní účet s příslušnými oprávněními pro přístup k API na straně serveru
- Účet Brevo s přístupem k API
- Účet Tajo s API přihlašovacími údaji
Ověření
Servisní účty (doporučeno)
Mixpanel doporučuje používat servisní účty pro ověřování API. Servisní účty používají HTTP Basic Auth s uživatelským jménem (uživatelské jméno servisního účtu) a heslem (tajný klíč servisního účtu).
# Ověření servisním účtemcurl https://mixpanel.com/api/app/me \ -u "SERVICE_ACCOUNT_USERNAME:SERVICE_ACCOUNT_SECRET"Token projektu
Token projektu se používá pro sledování událostí na straně klienta a je bezpečný pro zahrnutí do klientského kódu:
// Inicializace na straně klientamixpanel.init("YOUR_PROJECT_TOKEN");OAuth (pro partnerské integrace)
Pro aplikační integrace přistupující k více projektům:
curl https://mixpanel.com/api/2.0/engage \ -H "Authorization: Bearer YOUR_OAUTH_TOKEN"Konfigurace
Základní nastavení
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" # nebo "EU"
# Možnosti synchronizace dat sync: events: true profiles: true cohorts: true groups: false
# Přiřazení seznamů Brevo lists: all_users: 15 engaged_users: 16 at_risk: 17Mapování událostí
Mapujte události Mixpanel na typy událostí Brevo:
event_mapping: # Událost Mixpanel -> Událost Brevo "Purchase": "order_completed" "Sign Up": "customer_created" "Add to Cart": "cart_updated" "Page View": "page_viewed" "$experiment_started": "experiment_started"
# Vlastní události "Feature Activated": "feature_used" "Subscription Renewed": "subscription_renewed"Mapování vlastností profilu
Mapujte vlastnosti uživatelů Mixpanel na atributy kontaktů Brevo:
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: LTVKoncové body API
| Metoda | Koncový bod | Popis |
|---|---|---|
POST | /import | Import událostí (Ingestion API) |
POST | /track | Sledování událostí (na straně klienta) |
POST | /engage#$set | Nastavení vlastností profilu uživatele |
POST | /engage#$set_once | Nastavení vlastností pouze pokud ještě nejsou nastaveny |
POST | /engage#$delete | Smazání profilu uživatele |
POST | /engage#$union | Union pro vlastnosti seznamu |
POST | /groups | Nastavení vlastností profilu skupiny |
GET | /export | Export surových dat událostí |
POST | /cohorts/list | Výpis uložených kohort |
POST | /engage/query | Dotaz na profily uživatelů |
POST | /jql | Spouštění vlastních JQL dotazů |
GET | /segmentation | Dotaz na segmentační reporty |
GET | /retention | Dotaz na retenční reporty |
GET | /funnels | Dotaz na funnelové reporty |
Příklady kódu
Inicializace konektoru Mixpanel
import { TajoClient } from '@tajo/sdk';
const tajo = new TajoClient({ apiKey: process.env.TAJO_API_KEY, brevoApiKey: process.env.BREVO_API_KEY});
// Připojení projektu Mixpanelawait 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});Import událostí přes Ingestion API
// Import událostí do Mixpanel (automaticky přeposíláno do 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" } } ])});
// Očekávaná odpověď: { "code": 200, "status": "OK", "num_records_imported": 1 }Synchronizace kohorty do Brevo
// Export kohorty Mixpanel a synchronizace do seznamu Brevoconst 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// }Nastavení vlastností profilu uživatele
// Nastavení vlastností uživatele přes Engage APIconst 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: { $first_name: "Jane", $last_name: "Kim", plan: "premium", total_orders: 12, lifetime_value: 1250.00 } }])});Omezení rychlosti
| API | Limit | Podrobnosti |
|---|---|---|
| Ingestion API | 2 GB/min | Na projekt |
| Track API | Bez pevného limitu | Doručování dle možností |
| Engage API | 2 000 aktualizací/dávka | Max 2 GB/min na projekt |
| Query API | 60 požadavků/hodinu | Na projekt (Servisní účet) |
| Export API | 60 požadavků/hodinu | Max 100 dní na dotaz |
| JQL API | 60 požadavků/hodinu | Na projekt |
| Export kohorty | 60 požadavků/hodinu | Na projekt |
Deduplikace událostí
Mixpanel deduplikuje události pomocí vlastnosti $insert_id. Vždy zahrňte jedinečné $insert_id pro prevenci duplicitních událostí při opakování neúspěšných importů.
Řešení problémů
| Problém | Příčina | Řešení |
|---|---|---|
| Události se nezobrazují | Nesprávný token projektu | Ověřte, zda token odpovídá cílovému projektu |
| Chybějící vlastnosti profilu | Použití nesprávného API | Používejte /engage#$set pro vlastnosti profilu, ne /track |
| Export kohorty selhává | Nedostatečná oprávnění | Ujistěte se, že servisní účet má roli Admin nebo Analyst |
| Duplicitní události | Chybějící $insert_id | Zahrňte jedinečné $insert_id u každé události |
| 402 Payment Required | Překročeny datové limity | Zkontrolujte limity plánu Mixpanel a v případě potřeby upgradujte |
| Data EU se nerouted správně | Nesprávná rezidence dat | Používejte api-eu.mixpanel.com pro projekty EU |
| Problémy se sloučením identit | Nesprávné distinct_id | Dodržujte osvědčené postupy správy identit Mixpanel |
Osvědčené postupy
- Používejte servisní účty – Upřednostňujte servisní účty před tajným klíčem projektu pro ověřování na straně serveru
- Zahrňte
$insert_id– Vždy nastavujte jedinečné ID vložení pro deduplikaci událostí - Dávkujte aktualizace profilů – Odesílejte až 2 000 aktualizací profilu na požadavek pro efektivitu
- Používejte koncové body EU – Pro rezidenci dat EU používejte
api-eu.mixpanel.compro všechna volání API - Synchronizujte kohorty podle plánu – Nastavte denní nebo týdenní synchronizaci kohort místo nepřetržitého pollingu
- Mapujte rezervované vlastnosti – Používejte rezervované vlastnosti Mixpanel (
$email,$first_name) pro data profilu - Monitorujte ingestion – Používejte stránku Událostí Mixpanel pro ověření, zda jsou události přijímány správně
Zabezpečení
- Pouze HTTPS – Veškerá komunikace API vyžaduje šifrování TLS
- Izolace servisního účtu – Rozsahový přístup na projekt s oprávněními na základě rolí
- Deduplikace událostí – Vestavěná deduplikace přes
$insert_idzabraňuje problémům s integritou dat - SOC 2 Type II – Mixpanel je certifikován podle SOC 2 Type II
- GDPR/CCPA – Podporuje mazání uživatelských dat přes GDPR API
- Rezidence dat EU – Datové centrum EU dostupné pro evropský soulad s předpisy