Mixpanel - 批量删除旧用户

hen*_*ald 9 mixpanel

我准备进入mixpanel的下一个计划,因为有太多人,并且想先删除一些老用户.

是否有一种简单的方法/脚本/ api来批量删除旧用户?

stp*_*tpe 9

我写了两个可能派上用场的脚本; mixpanel-engage-querymixpanel-engage-post.

使用第一个脚本(查询),您可以查询人员数据并获取配置文件列表,例如将$ last_seen设置为早于X个月的日期的所有用户.

使用第二个脚本(post),您可以在这些配置文件上批量执行操作,例如删除它们.有关如何执行批量删除的示例,请参阅自述文件.


MyG*_*GaN 8

就在这里.查看HTTP规范,您将找到以下内容.

$删除

string从Mixpanel中永久删除配置文件及其所有属性.该值被忽略 - 配置文件由请求本身的$ distinct_id确定.

// This removes the user 13793 from Mixpanel
{
    "$token": "36ada5b10da39a1347559321baf13063",
    "$distinct_id": "13793",
    "$delete": ""
}
Run Code Online (Sandbox Code Playgroud)

批量请求

这两个事件的终点处的http://api.mixpanel.com/track/,并在个人资料更新端点http://api.mixpanel.com/engage/接受批量更新.要将一批消息发送到端点,您应该使用POST而不是GET请求.不是发送单个JSON对象作为数据查询参数,而是发送一个对象的jSON列表,base64编码,作为application/x-www-form-urlencoded POST请求体的数据参数.

// 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
          }
    }
]
Run Code Online (Sandbox Code Playgroud)

Base64编码后,列表变为:

Ww0KICAgIHsNCiAgICAgICAgImV2ZW50IjogIlNpZ25lZCBVcCIsDQogICAgICAgICJwcm9wZXJ0aWVzIjogew0KICAgICAgICAgICAgImRpc3RpbmN0X2lkIjogIjEzNzkzIiwNCiAgICAgICAgICAgICJ0b2tlbiI6ICJlM2JjNDEwMDMzMGMzNTcyMjc0MGZiOGM2ZjVhYmRkYyIsDQogICAgICAgICAgICAiUmVmZXJyZWQgQnkiOiAiRnJpZW5kIiwNCiAgICAgICAgICAgICJ0aW1lIjogMTM3MTAwMjAwMA0KICAgICAgICB9DQogICAgfSwNCiAgICB7DQogICAgICAgICAiZXZlbnQiOiAiVXBsb2FkZWQgUGhvdG8iLA0KICAgICAgICAgICJwcm9wZXJ0aWVzIjogew0KICAgICAgICAgICAgICAiZGlzdGluY3RfaWQiOiAiMTM3OTMiLA0KICAgICAgICAgICAgICAidG9rZW4iOiAiZTNiYzQxMDAzMzBjMzU3MjI3NDBmYjhjNmY1YWJkZGMiLA0KICAgICAgICAgICAgICAiVG9waWMiOiAiVmFjYXRpb24iLA0KICAgICAgICAgICAgICAidGltZSI6IDEzNzEwMDIxMDQNCiAgICAgICAgICB9DQogICAgfQ0KXQ==
Run Code Online (Sandbox Code Playgroud)

因此,POST请求的主体是批量发送事件:

data=Ww0KICAgIHsNCiAgICAgICAgImV2ZW50IjogIlNpZ25lZCBVcCIsDQogICAgICAgICJwcm9wZXJ0aWVzIjogew0KICAgICAgICAgICAgImRpc3RpbmN0X2lkIjogIjEzNzkzIiwNCiAgICAgICAgICAgICJ0b2tlbiI6ICJlM2JjNDEwMDMzMGMzNTcyMjc0MGZiOGM2ZjVhYmRkYyIsDQogICAgICAgICAgICAiUmVmZXJyZWQgQnkiOiAiRnJpZW5kIiwNCiAgICAgICAgICAgICJ0aW1lIjogMTM3MTAwMjAwMA0KICAgICAgICB9DQogICAgfSwNCiAgICB7DQogICAgICAgICAiZXZlbnQiOiAiVXBsb2FkZWQgUGhvdG8iLA0KICAgICAgICAgICJwcm9wZXJ0aWVzIjogew0KICAgICAgICAgICAgICAiZGlzdGluY3RfaWQiOiAiMTM3OTMiLA0KICAgICAgICAgICAgICAidG9rZW4iOiAiZTNiYzQxMDAzMzBjMzU3MjI3NDBmYjhjNmY1YWJkZGMiLA0KICAgICAgICAgICAgICAiVG9waWMiOiAiVmFjYXRpb24iLA0KICAgICAgICAgICAgICAidGltZSI6IDEzNzEwMDIxMDQNCiAgICAgICAgICB9DQogICAgfQ0KXQ==
Run Code Online (Sandbox Code Playgroud)

两个端点一次最多可接受50条消息.通常,批处理请求将具有与事件关联的"时间"属性,或与配置文件更新关联的"$ time"属性.