2013-09-27 7 views

risposta

7

Sì, c'è. Guardando il HTTP spec troverai quanto segue.

$ cancellare

stringa Eliminare definitivamente il profilo dal Mixpanel, insieme a tutti i sue proprietà. Il valore viene ignorato: il profilo è determinato da $ distinct_id dalla richiesta stessa.

// This removes the user 13793 from Mixpanel 
{ 
    "$token": "36ada5b10da39a1347559321baf13063", 
    "$distinct_id": "13793", 
    "$delete": "" 
} 

richieste batch

Entrambi gli eventi del fine corsa a http://api.mixpanel.com/track/ e l'aggiornamento degli endpoint profilo in http://api.mixpanel.com/engage/ accettare gli aggiornamenti in batch. Per inviare un batch di messaggi a un endpoint, è necessario utilizzare un POST anziché una richiesta GET. Invece di inviare un singolo oggetto JSON come parametro di query dei dati, inviare un elenco JSON di oggetti, codificati Base64, come parametro di dati di un corpo di richiesta POST application/x-www-form-urlencoded.

// Here's a list of events 
[ 
    { 
     "event": "Signed Up", 
     "properties": { 
      "distinct_id": "13793", 
      "token": "e3bc4100330c35722740fb8c6f5abddc", 
      "Referred By": "Friend", 
      "time": 1371002000 
     } 
    }, 
    { 
     "event": "Uploaded Photo", 
      "properties": { 
       "distinct_id": "13793", 
       "token": "e3bc4100330c35722740fb8c6f5abddc", 
       "Topic": "Vacation", 
       "time": 1371002104 
      } 
    } 
] 

Base64 codificato, la lista diventa:

Ww0KICAgIHsNCiAgICAgICAgImV2ZW50IjogIlNpZ25lZCBVcCIsDQogICAgICAgICJwcm9wZXJ0aWVzIjogew0KICAgICAgICAgICAgImRpc3RpbmN0X2lkIjogIjEzNzkzIiwNCiAgICAgICAgICAgICJ0b2tlbiI6ICJlM2JjNDEwMDMzMGMzNTcyMjc0MGZiOGM2ZjVhYmRkYyIsDQogICAgICAgICAgICAiUmVmZXJyZWQgQnkiOiAiRnJpZW5kIiwNCiAgICAgICAgICAgICJ0aW1lIjogMTM3MTAwMjAwMA0KICAgICAgICB9DQogICAgfSwNCiAgICB7DQogICAgICAgICAiZXZlbnQiOiAiVXBsb2FkZWQgUGhvdG8iLA0KICAgICAgICAgICJwcm9wZXJ0aWVzIjogew0KICAgICAgICAgICAgICAiZGlzdGluY3RfaWQiOiAiMTM3OTMiLA0KICAgICAgICAgICAgICAidG9rZW4iOiAiZTNiYzQxMDAzMzBjMzU3MjI3NDBmYjhjNmY1YWJkZGMiLA0KICAgICAgICAgICAgICAiVG9waWMiOiAiVmFjYXRpb24iLA0KICAgICAgICAgICAgICAidGltZSI6IDEzNzEwMDIxMDQNCiAgICAgICAgICB9DQogICAgfQ0KXQ== 

Così il corpo di una richiesta POST per inviare gli eventi come batch è:

data=Ww0KICAgIHsNCiAgICAgICAgImV2ZW50IjogIlNpZ25lZCBVcCIsDQogICAgICAgICJwcm9wZXJ0aWVzIjogew0KICAgICAgICAgICAgImRpc3RpbmN0X2lkIjogIjEzNzkzIiwNCiAgICAgICAgICAgICJ0b2tlbiI6ICJlM2JjNDEwMDMzMGMzNTcyMjc0MGZiOGM2ZjVhYmRkYyIsDQogICAgICAgICAgICAiUmVmZXJyZWQgQnkiOiAiRnJpZW5kIiwNCiAgICAgICAgICAgICJ0aW1lIjogMTM3MTAwMjAwMA0KICAgICAgICB9DQogICAgfSwNCiAgICB7DQogICAgICAgICAiZXZlbnQiOiAiVXBsb2FkZWQgUGhvdG8iLA0KICAgICAgICAgICJwcm9wZXJ0aWVzIjogew0KICAgICAgICAgICAgICAiZGlzdGluY3RfaWQiOiAiMTM3OTMiLA0KICAgICAgICAgICAgICAidG9rZW4iOiAiZTNiYzQxMDAzMzBjMzU3MjI3NDBmYjhjNmY1YWJkZGMiLA0KICAgICAgICAgICAgICAiVG9waWMiOiAiVmFjYXRpb24iLA0KICAgICAgICAgICAgICAidGltZSI6IDEzNzEwMDIxMDQNCiAgICAgICAgICB9DQogICAgfQ0KXQ== 

entrambi gli endpoint accetteranno fino a 50 messaggi in un singolo batch. Di solito, le richieste batch avranno una proprietà "tempo" associata agli eventi o un attributo "$ tempo" associato agli aggiornamenti del profilo.

7

Ho scritto due script che possono tornare utili; mixpanel-engage-query e mixpanel-engage-post.

Utilizzando il primo script (query) è possibile interrogare i dati personali e ottenere un elenco di profili, ad es. tutti gli utenti che hanno $ last_seen impostati su una data precedente a X mesi.

Utilizzando il secondo script (post) è possibile eseguire azioni in batch su tali profili, ad esempio eliminandoli. Vedere il README per an example of how to perform a batch delete.