2013-09-27 22 views

Odpowiedz

7

Tak, jest. Patrząc na HTTP spec znajdziesz następujące.

$ usuwać

ciąg trwale usunąć profil z Mixpanel wraz ze wszystkimi jego właściwości. Wartość jest ignorowana - profil jest określony przez $ odrębny_id od samego żądania.

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

żądania wsadowe

Oba wydarzenia punktu końcowego w http://api.mixpanel.com/track/ i aktualizacja końcowy profil na http://api.mixpanel.com/engage/ zaakceptować Grupowych aktualizacji. Aby wysłać partię wiadomości do punktu końcowego, należy użyć POST zamiast żądania GET. Zamiast wysyłać pojedynczy obiekt JSON jako parametr zapytania danych, wyślij listę obiektów JSON z kodowaniem base64 jako parametr danych formularza żądania POST aplikacji/x-www-urlen.

// 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 zakodowane, staje się lista:

Ww0KICAgIHsNCiAgICAgICAgImV2ZW50IjogIlNpZ25lZCBVcCIsDQogICAgICAgICJwcm9wZXJ0aWVzIjogew0KICAgICAgICAgICAgImRpc3RpbmN0X2lkIjogIjEzNzkzIiwNCiAgICAgICAgICAgICJ0b2tlbiI6ICJlM2JjNDEwMDMzMGMzNTcyMjc0MGZiOGM2ZjVhYmRkYyIsDQogICAgICAgICAgICAiUmVmZXJyZWQgQnkiOiAiRnJpZW5kIiwNCiAgICAgICAgICAgICJ0aW1lIjogMTM3MTAwMjAwMA0KICAgICAgICB9DQogICAgfSwNCiAgICB7DQogICAgICAgICAiZXZlbnQiOiAiVXBsb2FkZWQgUGhvdG8iLA0KICAgICAgICAgICJwcm9wZXJ0aWVzIjogew0KICAgICAgICAgICAgICAiZGlzdGluY3RfaWQiOiAiMTM3OTMiLA0KICAgICAgICAgICAgICAidG9rZW4iOiAiZTNiYzQxMDAzMzBjMzU3MjI3NDBmYjhjNmY1YWJkZGMiLA0KICAgICAgICAgICAgICAiVG9waWMiOiAiVmFjYXRpb24iLA0KICAgICAgICAgICAgICAidGltZSI6IDEzNzEwMDIxMDQNCiAgICAgICAgICB9DQogICAgfQ0KXQ== 

Więc ciało żądania POST aby wysyłać zdarzenia jako partia jest:

data=Ww0KICAgIHsNCiAgICAgICAgImV2ZW50IjogIlNpZ25lZCBVcCIsDQogICAgICAgICJwcm9wZXJ0aWVzIjogew0KICAgICAgICAgICAgImRpc3RpbmN0X2lkIjogIjEzNzkzIiwNCiAgICAgICAgICAgICJ0b2tlbiI6ICJlM2JjNDEwMDMzMGMzNTcyMjc0MGZiOGM2ZjVhYmRkYyIsDQogICAgICAgICAgICAiUmVmZXJyZWQgQnkiOiAiRnJpZW5kIiwNCiAgICAgICAgICAgICJ0aW1lIjogMTM3MTAwMjAwMA0KICAgICAgICB9DQogICAgfSwNCiAgICB7DQogICAgICAgICAiZXZlbnQiOiAiVXBsb2FkZWQgUGhvdG8iLA0KICAgICAgICAgICJwcm9wZXJ0aWVzIjogew0KICAgICAgICAgICAgICAiZGlzdGluY3RfaWQiOiAiMTM3OTMiLA0KICAgICAgICAgICAgICAidG9rZW4iOiAiZTNiYzQxMDAzMzBjMzU3MjI3NDBmYjhjNmY1YWJkZGMiLA0KICAgICAgICAgICAgICAiVG9waWMiOiAiVmFjYXRpb24iLA0KICAgICAgICAgICAgICAidGltZSI6IDEzNzEwMDIxMDQNCiAgICAgICAgICB9DQogICAgfQ0KXQ== 

Oba punkty końcowe przyjmuje do 50 wiadomości w jednej partii. Zwykle żądania wsadowe będą miały właściwość "time" związaną ze zdarzeniami lub atrybut "$ time" związany z aktualizacjami profilu.

7

Napisałem dwa skrypty, które mogą się przydać; mixpanel-engage-query i mixpanel-engage-post.

Za pomocą pierwszego skryptu (zapytania) można wysłać zapytanie do swoich danych o pracownikach i uzyskać listę profili, np. wszyscy użytkownicy, którzy ustawili $ last_seen na datę starszą niż X miesięcy.

Za pomocą drugiego skryptu (post) można wykonywać czynności wsadowe na tych profilach, na przykład usuwając je. Zobacz README dla an example of how to perform a batch delete.

Powiązane problemy