如何通过Mixpanel API按用户ID/手机号获取用户执行的事件列表
解决方案:通过Mixpanel获取指定用户的事件数据
Mixpanel确实没有专门的端点直接通过user_id或手机号查询用户事件,但可以通过以下两种方式实现需求:
1. 使用Export API
Export API可导出原始事件数据,你可以在请求中添加过滤条件,指定目标user_id或作为用户属性存储的手机号:
- 请求示例(curl):
curl -u YOUR_PROJECT_SECRET: https://data.mixpanel.com/api/2.0/export \ -d from_date="2024-01-01" \ -d to_date="2024-01-31" \ -d filter='{"user_id": "TARGET_USER_ID"}'
如果手机号存储在用户属性中,过滤条件可改为:
-d filter='{"properties": {"$phone": "TARGET_PHONE_NUMBER"}}'
2. 使用JQL(Query API)
JQL支持自定义查询逻辑,能精准筛选目标用户的事件:
- 示例查询代码:
function main() { return Events({ from_date: "2024-01-01", to_date: "2024-01-31" }) .filter(function(event) { // 匹配user_id return event.properties.user_id === "TARGET_USER_ID"; // 若匹配手机号,替换为: // return event.properties.$phone === "TARGET_PHONE_NUMBER"; }); }
将这段JQL通过Mixpanel的Query API端点提交,即可获取结构化结果。
注意事项
- 确保项目秘钥(Project Secret)拥有对应API权限
- 确认手机号已作为用户属性或事件属性完成埋点存储
- 合理设置日期范围,避免因数据量过大导致请求超时
内容的提问来源于stack exchange,提问作者Alwaz
相关产品推荐
相关产品推荐

