node . js

API集成

mixpanel node.js库在使用Node.js构建的服务器端应用程序中提供Mixpanel跟踪功能。

使用HTTP API跟踪对于不使用Node.js的服务器端应用程序。

此外,Mixpanel还为以下平台提供了客户端库:

MixPanel客户端库支持广泛的便利功能,并且应该是在客户端实现中使用MixPanel的起点。

mixpanel node.js库如果您需要从节点9s服务器发送数据,或者在浏览器之外的JavaScript中与MixPanel API交互,对您最有用的(例如使用脚本导入过去的事件)。

安装库

安装Mixpanel Node.js库并创建一个Mixpanel实例,以便开始跟踪Mixpanel。

使用NPM.在项目中安装Mixpanel,请调用npm安装mixpanel年.Mixpanel模块将在安装库之后在Node项目中可用。

接下来,创建一个Mixpanel实例并初始化一个Mixpanel客户端以与Mixpanel服务器通信。为此,获取Mixpanel工厂并通过调用创建Mixpanel客户端的实例mixpanel.init (YOUR_PROJECT_TOKEN)

项目令牌是Mixpanel项目独有的。可以在此处找到查找项目令牌的说明

//抓住MixPanel Factory var mixpanel =要求('mixpanel');//创建MixPanel Client var mixpanel = mixpanel.init('')的实例;

欧盟数据居住

将数据路由到Mixpanel的EU服务器宿主配置属性。

mixpanel.init(“your_token”,{host:“api-eu.www.jy710.com”,},);

发送活动

你可以用mixpanel.track()初始化MixPanel实例后。

mixpanel.track()方法采用两个参数,事件名称和必须包含的属性对象distinct_id

您可以选择向调用添加额外的事件属性,以向该事件添加详细信息。在此阅读有关事件和属性的更多信息

var Mixpanel = require(' Mixpanel ');var mixpanel = mixpanel .init('');//使用可选属性跟踪事件跟踪('事件名称',{distinct_id: '唯一的客户端id', property_1: '值1',property_2: '值2',property_3: '值3'});

MixPanel使用传入请求上的IP地址确定默认地理位置数据($ city,$ city,mp_country_code)。这可以具有在服务器端实现中将所有用户的位置设置为数据中心的位置的意外效果。

因此,在服务器端实现中将IP作为属性传递是很重要的。阅读服务器端实现的地理定位最佳实践

var Mixpanel = require(' Mixpanel ');var mixpanel = mixpanel .init('');//追踪可选属性MixPanel.track('事件名称',{distinct_id:'唯一客户端ID',IP:'127.0.0.1'});

管理用户身份

Mixpanel对使用不同distinct_id发送的事件进行分组,并将它们作为不同的用户事件流显示在报告中。可以使用不同的distinct_ids连接事件别名,识别或合并,最终将它们归于一个用户。

ID合并

如果项目有ID合并已启用, 这$识别事件可以连接预认证和后期验证事件。如果未启用ID合并,则识别事件不会链接标识,但别名可用于连接预先发布和发布登记事件。

别名

别名方法创建一个别名,Mixpanel将使用该别名将一个distinct_id重新映射到另一个。多个别名可以指向相同的标识符。

别名

细绳
必需的

您要用作此用户的标识符的唯一标识符。

distinct_id

细绳
可选的

当前用户标识符。

以下是有效使用别名

mixpanel。别名('new_id', 'existing_id'); //You can add multiple id aliases to the existing id mixpanel.alias('newer_id', 'existing_id')

也可以链接别名。你不能指向多个标识符..

❗️

ID合并

如果一个项目没有ID合并启用后,最好的做法是要打电话别名当第一次为用户创建一个唯一的ID时(例如,当用户第一次注册一个帐户时)。

笔记

在别名请求击中MixPanel服务器之前,别名不会生效。因此,如果您使用的话,您需要特别小心mixpanel.alias ()使用自定义使用者,因此您可以确保您的别名消息在与新别名关联的任何事件或更新之前到达。

存储用户配置文件

除了发送事件外,您还可以向Mixpanel发送用户配置文件更新。

Mixpanel可以维护一个每个用户的个人资料,储存你所知道的关于他们的信息。

配置文件更新更改了用户配置文件的属性,基本上更改了与该配置文件相关联的详细信息,或者如果不存在,则创建它。

您可以使用配置文件和用户配置文件属性来根据用户是谁来探索和划分用户,以及他们在事件跟踪中做了什么。您还可以使用配置文件发送消息,如电子邮件、短信或推送通知。

设置配置文件属性

您可以更新或创建一个用户配置文件mixpanel.people.set().第一个参数是distinct_id,第二个参数是用于添加或更新配置文件的属性的JSON列表。

以下示例设置具有值“Premium”,名称,姓氏以及用户配置文件中的创建日期的“计划”属性,具有不同的ID13793

如果没有具有Distinct_ID的配置文件,MixPanel会自动创建新配置文件13793已经在项目中了。

如果用户有一个distinct_id13793在他们的配置文件中已经有一个名为“计划”的属性,新的值“Premium”覆盖旧的值“Free”。

//抓住MixPanel Factory var mixpanel =要求('mixpanel');var mixpanel = mixpanel .init('');//在mixpanel mixpanel.people.set中创建或更新用户('13793',{$ first_name:'billy',$ last_name:'bob',$ created :(新日期(2013年1月1日'))。ToisoString(),计划:'premium',});

笔记

明智地选择你的房产名称。请随意使用大写和单词之间的空格。
有一些限制:

  • 您的房地产名称不应该开头$MP_.这些属性保留用于MixPanel发送的特殊属性。
  • 属性名不能以空格开头或结尾,因为它们将自动被裁剪。
  • 您的属性名称和值不能超过255个字符。实际上,它们应该比这短得多。在我们的用户界面中,属性名在大约20个字符时被截断。

点击这里查看Mixpanel的保留用户配置文件属性列表。

递增数值属性

您可以使用mixpanel.people.increment ()递增数字属性的当前值。当跟踪运行的属性计数时,这是有用的,例如播放的游戏,发送的电子邮件或获得的积分。

//递增一个数字属性mixpanel.people.pecrement('13793','games_played');//按不同的数量mixpanel.people递增一个数字属性.PERENT.PENCREMENT('13793','点',15);//递增多个属性mixpanel.people.People.Increment('13793',{'积分':10,'Games_Played':1});

追加到列表属性

使用mixpanel.people.append()将项目添加到现有列表值的属性。

mixpanel.people.append()为每个命名属性在列表的末尾添加传递给它的值。如果属性不存在,Mixpanel会创建一个包含一个元素的列表作为其值。

//添加一个列表的值append('13793', 'awards', 'Great Player');//向列表中添加多个值append('13793', {'awards': 'Great Player', 'levels_finished': 'Level 4'});

其他类型的个人资料更新

还有一些其他类型的配置文件更新。你可以从“快速入门”部分获得更多关于他们的信息存储库Readme.库代码中的示例

组分析

Mixpanel Group Analytics允许对选定的组进行行为数据分析,而不是单个用户。

由除此之外的标识符分组distinct_id当使用Mixpanel分析时,允许在公司或团队层面进行分析。读本文了解有关组分析的更多信息。

一个小组被识别Group_key.group_id.

  • Group_key.是连接组分析的事件数据的属性。
  • group_id.是特定组的标识符。

如果酒店为集团分析选择“公司”,“公司”是Group_key.、“Mixpanel”、“Company A”和“13254”都是潜在的group_id.值。

用户可以属于多个组。组的所有更新都在运行Group_key.group_id.

添加组键

要开始跟踪组数据,在项目设置中添加组键.如果您没有在项目设置中看到组键,请接触到MixPanel销售团队收购Group Analytics。

创建组密钥

通过项目设置管理组键。组键是事件属性。所有事件都需要有一个已定义的组键,以便将其归为一个组。组密钥是项目专用的,需要在发送组数据之前设置好组密钥。请注意,Mixpanel在实现组键之前不会回填历史数据。

要管理组键,导航到项目设置。点击+添加组密钥小组钥匙部分。

输入要将组键作为属性的事件属性。您也可以为组键输入显示名称。点击保存

使用事件发送组标识符

要发送带有事件的组标识符,请发送Group_key.作为属性钥匙和group_id.作为财产价值。数据类型Group_key.属性是一个列表,因此可以为单个用户添加多个值。也可以只传递一个值。

MixPanel可以通过group_id.,类似于事件如何与之分组distinct_id.一种group_id.,是组级别标识符,而不是用户级别标识符,如distinct_id

请注意,发送中Group_key.group_id.由于事件属性不会将用户添加到组配置文件或将组成员身份分配给用户的配置文件。仅有的事件和你的选择Group_key.属性集将可用于组级别的行为分析。请参阅代码示例后面的部分,了解如何将用户添加到组概要文件或将组添加到用户概要文件。

//跟踪一个名为'Plan Purchase'的事件,//使用group_id = 'Company'和group_key = 'Mixpanel'track('Plan Purchase', {distinct_id: 'unique client id', 'Plan Type': 'Premium', Company: 'Mixpanel',});

向个人用户添加组标识符

要将组信息连接到用户配置文件,请包括Group_key.group_id.通过将属性作为一部分发送people.set()称呼。

//创建或更新用户配置文件group_id = Company, // group_key = Mixpanel和名称属性。mixpanel.people。放('13793', { $first_name: 'Billy', $last_name: 'Bob', Company: 'Mixpanel', });

创建组配置文件

您可以创建类似于用户配置文件的Group配置文件。你必须叫groups.set()groups.set_once()groups.union()创建组配置文件。重要的是包含group_key,group_id和至少一个属性,以便配置文件不为空。

//使用group_key = company创建或更新组配置文件,// group_id = mixpanel mixpanel.groups.set('company','mixpanel',{$ name:'mixpanel',类型:'dalictics',})

设置组属性

您可以通过向组概要文件添加属性来向它们添加详细信息。这些操作类似于用户配置文件属性更新的相应操作。

您可以设置该属性美元的名字填充组配置文件顶部的名称字段。

groups.set()更新或向组配置文件添加属性。如果配置文件不存在,则创建它。

//使用group_key = company创建或更新组配置文件,// group_id = mixpanel mixpanel.groups.set('company','mixpanel',{$ name:'mixpanel',类型:'Analytics',标签:['高乐',':)',})

set_once.

groups.set_once()仅在未设置属性时才向组概要文件添加属性。如果配置文件不存在,则创建它。

//创建或更新组配置文件group_key = Company, // group_id = Mixpanel,只设置没有设置的属性mixpanel.groups。set_once.('Company', 'Mixpanel', { Type: 'Analytics', HQ: 'San Francisco', })

设置

groups.unset ()取消本集团概况的财产或属性。

//永久删除组配置文件属性“type”mixpanel.groups.unset('company','mixpanel','type')//永久删除“type”和“标记”属性mixpanel.groups.unset('公司','mixpanel',['type','标签'])

联盟

groups.union()将指定的值添加到列表属性,并确保这些值仅显示一次。如果配置文件不存在,则创建它。

//添加“Features”列表属性或合并“Insights”//和“漏斗”到现有的属性。mixpanel.groups。联盟('Company', 'Mixpanel', { Features: ['Insights', 'Funnels'], })

消除

groups.remove ()删除列表属性中的特定值。

//从“附加服务”列表属性mixpanel.groups中删除“硬件修复”。remove('Company', 'Mixpanel', {'Additional Services': 'Hardware Repair'})

delete_group.

groups.delete_group()永久删除组配置文件。

//删除Mixpanel组配置文件Mixpanel .groups.delete_group('Company', 'Mixpanel')

查找表

您可以使用查找表丰富现有事件和配置文件属性。虽然您有能力上传CSV来更新查找表,但我们现在支持编程访问来执行该表。更新查找表遵循与更新组配置文件属性相同的进程。

您可以创建类似于用户配置文件的查找配置文件。你必须叫groups.set()groups.set_once()groups.union()创建查找配置文件(行)。重要的是包含group_key,group_id和至少一个属性,以便配置文件不为空。

要了解更多关于查找表背后的概念,并了解每个id如何映射到查找表实体,请读这个

找到表的Group_keg

更新查找表

groups.set()更新或添加属性到查找配置文件(行)。如果配置文件不存在,则创建它。

//在查找表详细信息页面和// group_id“gagnam样式”(连接键)MixPanel.groups.set('d1b6d2e0-1330-4AD6-B520-D948EDE3B1A7','GAGNAM STYLE',{PENRE:'POP',})

set_once.

groups.set_once()仅当属性尚未设置时,才会为查找配置文件添加属性。如果配置文件不存在,则创建它。

//创建或更新查找配置文件(行)的group_key发现在查找表详细信息页和// group_id "Gagnam style"(连接键,这是第1列的值)mixpanel.groups。set_once('d1b6d2e0-1330-4ad6-b520-d948ede3b1a7', 'Gagnam style', {Genre: 'Pop',})

设置

groups.unset ()取消查找配置文件的属性或属性。

//永久删除配置文件的"Genre"属性mixpanel.groups。设置('d1b6d2e0-1330-4ad6-b520-d948ede3b1a7', 'Gagnam style', 'Genre') // Permanently removes the "Genre" and "tags" properties mixpanel.groups.unset('d1b6d2e0-1330-4ad6-b520-d948ede3b1a7', 'Gagnam style', ['Genre', 'tags'])

联盟

groups.union()将指定的值添加到列表属性,并确保这些值仅显示一次。如果配置文件不存在,则创建它。

//将“HASHTAGS”列表属性或合并“壮观”和“Craft”//融入现有属性。mixpanel.groups.union('d1b6d2e0-1330-4ad6-b520-d948ede3b1a7','gagnam style',{hashtags:['spectacular','craft'],})

消除

groups.remove ()删除列表属性中的特定值。

//从“hashtags”列表属性mixpanel.groups.remove('d1b6d2e0-1330-4ad6-b520-d948ede3b1a7','gagnam style',{hashtags:'craft'})

delete_group.

groups.delete_group()永久删除查找配置文件(行)。

//删除查找配置文件(行)中的group_key在查找表详细信息页和// group_id "Gagnam style" (join key,这是第1列的值)mixpanel.groups.delete_group('d1b6d2e0-1330-4ad6-b520-d948ede3b1a7', 'Gagnam style')

跟踪收入

可以跟踪和分析各个客户产生的收入。

您可以跟踪单个事务mixpanel.track_charge().此调用将事务添加到单个用户配置文件。这些值在Mixpanel收入报告中可见。

//记录收入分析MixPanel.People.Track_charge('13793',39.99)的交易

额外的资源188金宝搏备用网址

访问GitHub上的Mixpanel-Node存储库获取更多信息,例如:

大约一个月前更新


node . js


API集成

建议的编辑在API参考页面上限制

您只能建议对Markdown主体内容进行编辑,但不能建议对API规范进行编辑。